我得到的平均值为(group2 $ score)的NaN结果。我正在尝试创建一个函数来列出我的数据的描述性统计信息。
printf <- function (...) {
cat(sprintf(...))
}
data <- data.frame(
id <- c(1:200),
group <- c(replicate(100, 1), replicate(100, 2)),
score <- rnorm(200, mean = 100, sd = 15)
)
descriptives <- function (data) {
group1 <- data[data$group <= 100, ]
group2 <- data[data$group >= 101, ]
printf("group 1 mean: %.2f\n", mean(group1$score))
printf("group 2 mean: %.2f\n", mean(group2$score)) #this is where the NaN gets printed
}
descriptives(data)
答案 0 :(得分:1)
这通常意味着该子集中没有数据。
mean(numeric(0))
[1] NaN
您的数据肯定是这种情况,因为组变量为1或2,并且您尝试将其拆分为100。
答案 1 :(得分:1)
对不起,刚意识到我本打算使用$group
时才使用$id
。在公共场所张贴后,总是更容易发现错误!