R 如何按行计算平均值

R 如何按行计算平均值,r,R,我想知道如何通过id行计算两个变量(C1和C2)的平均值(C4): 例如: 给定一个示例数据帧 ID C1 C2 C3 C4 C5 1 3 3 5 3 3.9 2 2 7 4 4,5 3.9 3 4 3 3 3,5 3.9 4 4 4 6 4 3.9 5 5 5 3 5 3.9 我试过: data <-

我想知道如何通过id行计算两个变量(C1和C2)的平均值(C4):

例如:

给定一个示例数据帧

    ID C1 C2 C3    C4      C5
     1  3  3  5    3       3.9
     2  2  7  4    4,5     3.9
     3  4  3  3    3,5     3.9
     4  4  4  6    4       3.9
     5  5  5  3    5       3.9
我试过:

data <- within(data,{ C4<- (mean(C1)+mean(C2))/2})

data以下简单代码也应该有效:ddf$C6=(ddf$C1+ddf$C2)/2
(可以使用C4代替C6)

或:


您是否尝试过
data$C4我得到类型为“closure”的错误对象不是subsettableHuh?对于您提供的数据集,它工作得非常好。可能添加
na.rm=T
?正如在
中,行表示(数据[,c(“C1”,“C2”)],na.rm=T)
。否则你的问题就不存在了,你是对的。非常感谢。我在内部结构
内部(数据,C4)方面遇到了问题
data <- within(data,{ C4<- (mean(C1)+mean(C2))/2, by=list(ID)})
ddf = structure(list(ID = 1:5, C1 = c(3L, 2L, 4L, 4L, 5L), C2 = c(3L, 
7L, 3L, 4L, 5L), C3 = c(5L, 4L, 3L, 6L, 3L), C4 = c("3", "4,5", 
"3,5", "4", "5"), C5 = c(3.9, 3.9, 3.9, 3.9, 3.9)), .Names = c("ID", 
"C1", "C2", "C3", "C4", "C5"), class = "data.frame", row.names = c(NA, 
-5L))
> 
> 
ddf
  ID C1 C2 C3  C4  C5
1  1  3  3  5   3 3.9
2  2  2  7  4 4,5 3.9
3  3  4  3  3 3,5 3.9
4  4  4  4  6   4 3.9
5  5  5  5  3   5 3.9
> 
> 
ddf$C6 = (ddf$C1+ddf$C2)/2
ddf
  ID C1 C2 C3  C4  C5  C6
1  1  3  3  5   3 3.9 3.0
2  2  2  7  4 4,5 3.9 4.5
3  3  4  3  3 3,5 3.9 3.5
4  4  4  4  6   4 3.9 4.0
5  5  5  5  3   5 3.9 5.0
> 
> 
ddf$C6 = with(ddf, (C1+C2)/2)