我有以下数据:
ID Value
1 3
1 5
如何通过ID计算均值,并将数据框中的均值作为新变量,以便对同一ID重复。结果应如下所示:
ID Value Mean
1 3 4
1 5 4
感谢。
答案 0 :(得分:1)
您可以使用' ave'功能来自' base' R:
df=data.frame(ID=c(1,1), value=c(3,5))
df['mean'] <- ave(df$value, df$ID, FUN=mean)
> df
### ID value mean
### 1 1 3 4
### 2 1 5 4
答案 1 :(得分:1)
您可以使用ave()
按组计算平均值。假设您的数据框名为df
,您可以执行以下操作:
df$Mean <- with(df, ave(Value, ID, FUN=mean))
这会将Mean
添加为数据框中的另一列。