[英]Sum or mean of certain element in data frame in R
我有一个看起来像这样的数据框:
k v 2002 2006 2010
1 a x 79.1 80.2 83.2
2 a y 75.1 76.2 79.3
3 a z 74.7 75.8 79.0
4 b x 82.8 85.9 87.6
5 b y 81.1 83.5 85.1
6 b z 80.5 83.1 84.6
等等。我需要的是每行数值的平均值,即我希望它看起来像这样:
k v tot
1 a x 80.833
2 a y 76.867
3 a z 76.500
4 b x 85.433
5 b y 83.233
6 b z 82.733
我不想保留原始值,而只是保留手段。 我知道rowMeans
但据我所知,我不能(也不想使用)它,因为它是对整个行取平均值,而不仅仅是对最后三列取平均值。 我尝试使用
rowMeans(subset(df,select=3:5))
但是然后我只得到了数值并松开了变量k
和v
。 有谁知道一种便捷的方法来获取连续的一些元素的均值?
dplyr::mutate(df, tot= (`2002`+`2006`+`2010`)/3)
应该也可以。
这将按预期保留变量的前两列,并追加名为tot的列,该列= =三个“年”列的平均值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.