如何计算数据框中的行均值?
how to calculate row means in a data frame?
我有一个包含 1000 列和 8 行的数据框,我需要计算行 means.I 尝试了这个循环:
final <- as.data.frame(matrix(nrow=8,ncol=1))
for(j in 1:8){
value<- mean(dataframe[j,])
final[j,]<-value
}
但出现以下错误:
In mean.default(df2[j, ]) : argument is not numeric or logical:
returning NA
使用rowMeans()
函数:
final$mean <- rowMeans(final, na.rm=TRUE)
请注意,您应该避免在日常 R
操作中使用循环。如果你想自己遍历所有行,你可以像这样使用 apply()
函数:
final$mean <- apply(final, 1, function(x) { mean(x, na.rm=TRUE) })
我有一个包含 1000 列和 8 行的数据框,我需要计算行 means.I 尝试了这个循环:
final <- as.data.frame(matrix(nrow=8,ncol=1))
for(j in 1:8){
value<- mean(dataframe[j,])
final[j,]<-value
}
但出现以下错误:
In mean.default(df2[j, ]) : argument is not numeric or logical: returning NA
使用rowMeans()
函数:
final$mean <- rowMeans(final, na.rm=TRUE)
请注意,您应该避免在日常 R
操作中使用循环。如果你想自己遍历所有行,你可以像这样使用 apply()
函数:
final$mean <- apply(final, 1, function(x) { mean(x, na.rm=TRUE) })