我在longformat中创建了一个数据框,它有5个变量(公司名称,关键项,原产国,年份和价值)我想要做的是创建一个表,其中包含每个项的一个关键项的值的平均值年。这是我到目前为止所做的:
for(i in dat$Year) {
dat[dat$KeyItem == "Total Assets" & dat$Year == i, ]
FUN1 <- mean(dat$Value, na.rm = TRUE)
}
我对R几乎没有任何经验,如果这个问题太容易,我很抱歉。 提前谢谢你们的帮助。
答案 0 :(得分:2)
由于您不共享数据,因此判断您想要的内容有点难。您可能希望使用ddply
包中的plyr
:
mean_values = ddply(dat, .(key_item, year), summarise, mn_value = mean(Value))
如果您的数据集变得非常大,您可以选择自学data.table
包,这些包在这些情况下速度极快。对于中型数据集,ddply
也可能较慢,但速度足够快。