Aggregate 1
This example provides the function with a vector of numeric values, penguins$flipper_length_mm
and a factor, penguins$species
.
require(palmerpenguins)
aggregate(
x = penguins$flipper_length_mm,
by = list(penguins$species),
FUN = mean, na.rm = TRUE)
NA
Aggregate Method 2
In this example, Iām using the formula notation:
aggregate(
formula = flipper_length_mm ~ species,
data = penguins,
FUN = mean, na.rm = TRUE)
NA
Aggregating by more than one factor
Here is how you can aggregate by species and sex:
aggregate(
formula = flipper_length_mm ~ species + sex,
data = penguins,
FUN = mean, na.rm = TRUE)
Doubly conditional boxplot
The x-axis labels need help, but the box-and-whisker plots are now aggregated by species and sex.
boxplot(
formula = flipper_length_mm ~ species + sex,
data = penguins)
Calculate critical t-values
n = nrow(penguins)
alpha = 0.05
qt(1 - alpha / 2, n - 1)
[1] 1.966904
qt(alpha/2, n - 1)
[1] -1.966904
LS0tDQp0aXRsZTogIkFnZ3JlZ2F0ZSBEZW1vIg0Kb3V0cHV0OiANCiAgaHRtbF9ub3RlYm9vazoNCiAgICB0b2M6IFRSVUUNCiAgICB0b2NfZmxvYXQ6IFRSVUUNCmVkaXRvcl9vcHRpb25zOiANCiAgY2h1bmtfb3V0cHV0X3R5cGU6IGlubGluZQ0KLS0tDQoNCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQ0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBUUlVFKQ0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KHdhcm4gPSBGQUxTRSkNCnJlcXVpcmUocGFsbWVycGVuZ3VpbnMpDQpgYGANCg0KIyBBZ2dyZWdhdGUgMQ0KDQpUaGlzIGV4YW1wbGUgcHJvdmlkZXMgdGhlIGZ1bmN0aW9uIHdpdGggYSB2ZWN0b3Igb2YgbnVtZXJpYyB2YWx1ZXMsIGBwZW5ndWlucyRmbGlwcGVyX2xlbmd0aF9tbWAgYW5kIGEgZmFjdG9yLCBgcGVuZ3VpbnMkc3BlY2llc2AuICANCg0KYGBge3IgYWdncmVnYXRlIG1ldGhvZCAxfQ0KcmVxdWlyZShwYWxtZXJwZW5ndWlucykNCg0KYWdncmVnYXRlKA0KICB4ID0gcGVuZ3VpbnMkZmxpcHBlcl9sZW5ndGhfbW0sIA0KICBieSA9IGxpc3QocGVuZ3VpbnMkc3BlY2llcyksIA0KICBGVU4gPSBtZWFuLCBuYS5ybSA9IFRSVUUpDQoNCmBgYA0KDQojIEFnZ3JlZ2F0ZSBNZXRob2QgMg0KDQpJbiB0aGlzIGV4YW1wbGUsIEknbSB1c2luZyB0aGUgZm9ybXVsYSBub3RhdGlvbjoNCg0KYGBge3IgYWdncmVnYXRlIGZvcm11bGF9DQoNCmFnZ3JlZ2F0ZSgNCiAgZm9ybXVsYSA9IGZsaXBwZXJfbGVuZ3RoX21tIH4gc3BlY2llcywgDQogIGRhdGEgPSBwZW5ndWlucywNCiAgRlVOID0gbWVhbiwgbmEucm0gPSBUUlVFKQ0KDQpgYGANCg0KIyBCb3hwbG90IHdpdGggZm9ybXVsYSBub3RhdGlvbg0KDQpUaGUgZm9ybXVsYSBub3RhdGlvbiBpcyBoYW5keSBmb3IgbWFraW5nIGNvbmRpdGlvbmFsIGJveHBsb3RzDQoNCmBgYHtyIGJveHBsb3QgZm9ybXVsYX0NCmJveHBsb3QoDQogIGZvcm11bGEgPSBmbGlwcGVyX2xlbmd0aF9tbSB+IHNwZWNpZXMsIA0KICBkYXRhID0gcGVuZ3VpbnMpDQpgYGANCg0KIyBBZ2dyZWdhdGluZyBieSBtb3JlIHRoYW4gb25lIGZhY3Rvcg0KDQpIZXJlIGlzIGhvdyB5b3UgY2FuIGFnZ3JlZ2F0ZSBieSBzcGVjaWVzIGFuZCBzZXg6DQoNCmBgYHtyIGFnZ3JlZ2F0ZSBkb3VibGV9DQphZ2dyZWdhdGUoDQogIGZvcm11bGEgPSAgZmxpcHBlcl9sZW5ndGhfbW0gfiBzcGVjaWVzICsgc2V4LCANCiAgZGF0YSA9IHBlbmd1aW5zLA0KICBGVU4gPSBtZWFuLCBuYS5ybSA9IFRSVUUpDQpgYGANCg0KDQoNCg0KIyBEb3VibHkgY29uZGl0aW9uYWwgYm94cGxvdA0KDQpUaGUgeC1heGlzIGxhYmVscyBuZWVkIGhlbHAsIGJ1dCB0aGUgYm94LWFuZC13aGlza2VyIHBsb3RzIGFyZSBub3cgYWdncmVnYXRlZCBieSBzcGVjaWVzICphbmQqIHNleC4NCg0KYGBge3IgYm94cGxvdCBkb3VibGV9DQpib3hwbG90KA0KICBmb3JtdWxhID0gZmxpcHBlcl9sZW5ndGhfbW0gfiBzcGVjaWVzICsgc2V4LCANCiAgZGF0YSA9IHBlbmd1aW5zKQ0KYGBgDQoNCg0KIyBDYWxjdWxhdGUgY3JpdGljYWwgdC12YWx1ZXMNCg0KYGBge3IgY3JpdGljYWwgdC12YWxzfQ0KbiA9IG5yb3cocGVuZ3VpbnMpDQoNCmFscGhhID0gMC4wNQ0KDQpxdCgxIC0gYWxwaGEgLyAyLCBuIC0gMSkNCnF0KGFscGhhLzIsIG4gLSAxKQ0KDQpgYGANCg0K