【发布时间】:2017-10-27 08:05:19
【问题描述】:
执行此代码后,我得到了 12 行数据,其中包含一个新列 A1。我想要一个功能,对于出现在A1 中的所有“1”,我应该得到相应 Sepal.Length 值的平均值,类似于“2”和“3”,并将三个平均值分配给一个新的向量。所以总而言之,根据上面的要求,一个具有三个平均值的向量。
iris1 = iris[1:12,]
a = data.frame(A1=rep(1,4))
b = data.frame(A1=rep(2,4))
c = data.frame(A1 = rep(3,4))
abc = rbind(a,b,c)
abc
iris2 = data.frame(abc,iris1)
View(iris2)
【问题讨论】:
-
你的意思是按 A1 分组,并得到每一行的 Sepal.Length 的平均值吗?预期的输出是什么?
-
例如
sapply(split(iris2$Sepal.Length, iris2$A1), mean)或aggregate(Sepal.Length ~ A1, iris2, mean)? -
感谢 Axeman,完美解决了我的问题。