我是R和Stack Overflow的新手,很抱歉,如果我以怪异的方式问这个问题。
我有一个通过调查获得的数据集。在这项调查中,有一个变量子集被分组在一起,我想获得这些变量子集的平均值。
因此,例如:我想要使用na.rm = TRUE的受访者/第138行第18-22列的平均值
有可能吗?
答案 0 :(得分:1)
使用dplyr
可以轻松完成。在示例中,df
是数据集名称,而columavg
将是存储新值的列。
library(dplyr)
df = df %>%
mutate(columavg = case_when(row_number() == 138 ~ rowMeans(.[18:22], na.rm=TRUE),
TRUE ~ 0))
或者如果您只想使用单个值
rowMeans(df[138,18:22], na.rm=TRUE)[[1]]