如何计算R中特定行的平均值?
我有一个数据文件,如下例所示,但要大得多如何计算R中特定行的平均值?,r,mean,R,Mean,我有一个数据文件,如下例所示,但要大得多 names num Y1 Y2 William 1 4.71 7.4 William 2 3.75 8 William 3 4.71 7.9 Katja 1 5.83 8.5 Katja 2 5.17 7.1 Katja 3 6.08 7.4 Aroma 1 4.04 7.5 Aroma 2 5 6.9 Aroma 3 4.3
names num Y1 Y2
William 1 4.71 7.4
William 2 3.75 8
William 3 4.71 7.9
Katja 1 5.83 8.5
Katja 2 5.17 7.1
Katja 3 6.08 7.4
Aroma 1 4.04 7.5
Aroma 2 5 6.9
Aroma 3 4.3 7.9
...
我必须计算Y1和Y2中每3个相同名称(第一列)的平均值。然后根据每个名字的平均值分别用Y1和Y2制作一个条形图。所以在x轴上我会有名字,在y轴上是平均值。有人能帮我吗?使用
sqldf
包(假设df
是您的表)
使用
sqldf
包(假设df
是您的表)
您还可以使用
聚合
。有关更多详细信息,请参见聚合
> aggregate(.~names, FUN=mean, data=df[, -2])
names Y1 Y2
1 Aroma 4.446667 7.433333
2 Katja 5.693333 7.666667
3 William 4.390000 7.766667
另一种选择是对每组取平均值
对于条形图,使用R base条形图
功能,尽管还有其他替代方案,如ggplot2图形
barplot(DF[,2], names.arg=DF$names, ylab="mean of Y1", las=1) # for Y1
barplot(DF[,3], names.arg=DF$names, ylab="mean of Y2", las=1) # for Y2
产生:
由于您对R非常陌生,我建议您阅读这篇文章,这是您学习R基础知识的一个很好的起点。您也可以使用
aggregate
。有关更多详细信息,请参见聚合
> aggregate(.~names, FUN=mean, data=df[, -2])
names Y1 Y2
1 Aroma 4.446667 7.433333
2 Katja 5.693333 7.666667
3 William 4.390000 7.766667
另一种选择是对每组取平均值
对于条形图,使用R base条形图
功能,尽管还有其他替代方案,如ggplot2图形
barplot(DF[,2], names.arg=DF$names, ylab="mean of Y1", las=1) # for Y1
barplot(DF[,3], names.arg=DF$names, ylab="mean of Y2", las=1) # for Y2
产生:
由于您对R非常陌生,我建议您阅读这篇文章,这是您学习R基础知识的良好起点。欢迎继续!请阅读。你试过什么?我对r很陌生,试着用mean,但没能从中得到什么。如何使用聚合?欢迎加入!请阅读。你试过什么?我对r很陌生,试着用mean,但没能从中得到什么。如何使用聚合?它允许您对数据帧执行
SQL
查询。因此,分解后的查询是按名称列对表进行分组,然后提取名称、Y1的平均值和Y2的平均值。它允许您在数据帧上执行SQL
查询。因此,分解后的查询是按名称列对表进行分组,然后提取名称、Y1的平均值和Y2的平均值。