R:如何计算给定数据框中 ID 的平均值?
R: How to compute the mean by ID in a given data frame?
我有以下数据:
ID Value
1 3
1 5
如何通过 ID 计算均值,并将均值作为新变量放入数据框中,以便为相同的 ID 重复计算。结果应如下所示:
ID Value Mean
1 3 4
1 5 4
谢谢。
您可以使用 'base' R:
中的 'ave' 函数
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
您可以使用 ave()
按组计算平均值。假设您的数据框名为 df
,您可以执行以下操作:
df$Mean <- with(df, ave(Value, ID, FUN=mean))
这会将 Mean
添加为数据框中的另一列。
我有以下数据:
ID Value
1 3
1 5
如何通过 ID 计算均值,并将均值作为新变量放入数据框中,以便为相同的 ID 重复计算。结果应如下所示:
ID Value Mean
1 3 4
1 5 4
谢谢。
您可以使用 'base' R:
中的 'ave' 函数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
您可以使用 ave()
按组计算平均值。假设您的数据框名为 df
,您可以执行以下操作:
df$Mean <- with(df, ave(Value, ID, FUN=mean))
这会将 Mean
添加为数据框中的另一列。