【发布时间】:2021-01-16 19:54:48
【问题描述】:
我有一个在不同位置有空白的数据框。我想计算行的平均值,但我不知道如何根据行使 n 灵活。
所有列的行数相同。
平均值 = 总和/n
df1 <- data.frame(col1 = c(5, 9, NA, -0.9, -0.74, , 1.19, , -1, -0.4, 1.38, -1.5, 1, 0.64),
col2 = c(4, 2, -9, 4, 19, 31, 4, -8, -15,NA,NA,NA,NA,NA),
col3 = c(1, -2, 5, 1.1, 33, 2, 7, 1, 1, 16, -22, - 2, -3,-10))
因此,对于第 1 行:
5+4+1 = 9/3 = 3
但对于第 3 行: (-9) + 5 = -4/2 = -2
非常感谢您的帮助!
【问题讨论】:
-
你可以省略缺失值:rowMeans(df1, na.rm=TRUE)
-
当我尝试这样做时,我收到一个错误:“rowMeans(df1, na.rm = TRUE) 中的错误:'x' 必须是数字。”我的值是除了空格之外的数字,如果这意味着什么。
-
既然你有那些“空白”(-0.74, ,1.19),你应该将它们转换为 NA,看看这篇文章:stackoverflow.com/questions/24172111/…。如果您从文件(例如 csv)中读取数据帧,您可以使用 na.strings 参数在线完成。