如何计算 R 中行中数据框中的均值?
How do I compute means in data frame in rows in R?
再次请求大家的支持!
我有数据框,其中显示了国家的不同指标,你可以在图片中看到它们。
我想将所有这些索引计算到一个新变量中,但我不知道该怎么做。我尝试了rowMeans()
函数,但我可能是一个非常愚蠢的人,所以我没有计算成功。
mean()
无效 - 似乎 "the argument is not numeric or logic: NAs to return"。我还担心 mean()
将整个列中的均值计算为一个向量,而不是我需要的按行计算。 再一次 - 我需要从 nation# 变量中获取数据框中每个观察值的均值。
任何人都可以帮我完成这个非常简单的任务吗?
dat <- data.frame(
nation1 = c(0,3,5,3,5,4), nation2 = c(4,2,5,3,5,4),
ethnicity1 = c(5,5,5,5,5,2), ethnicity2 = c(5,5,5,2,4,4)
)
rowMeans(dat[, grepl("^nation", colnames(dat))])
# [1] 2.0 2.5 5.0 3.0 5.0 4.0
我们可以使用 rowMeans
和 startsWith
rowMeans(dat[startsWith(colnames(dat), "nation")])
再次请求大家的支持!
我有数据框,其中显示了国家的不同指标,你可以在图片中看到它们
我想将所有这些索引计算到一个新变量中,但我不知道该怎么做。我尝试了rowMeans()
函数,但我可能是一个非常愚蠢的人,所以我没有计算成功。
mean()
无效 - 似乎 "the argument is not numeric or logic: NAs to return"。我还担心 mean()
将整个列中的均值计算为一个向量,而不是我需要的按行计算。 再一次 - 我需要从 nation# 变量中获取数据框中每个观察值的均值。
任何人都可以帮我完成这个非常简单的任务吗?
dat <- data.frame(
nation1 = c(0,3,5,3,5,4), nation2 = c(4,2,5,3,5,4),
ethnicity1 = c(5,5,5,5,5,2), ethnicity2 = c(5,5,5,2,4,4)
)
rowMeans(dat[, grepl("^nation", colnames(dat))])
# [1] 2.0 2.5 5.0 3.0 5.0 4.0
我们可以使用 rowMeans
和 startsWith
rowMeans(dat[startsWith(colnames(dat), "nation")])