【发布时间】:2021-11-03 14:05:10
【问题描述】:
我创建一个数据框并选择值高于 x 的子集。但是当 x = 50 时,r 输出 2 而不是 8:
input <- readLines('stdin')
x <- as.integer(input[1])
data <- data.frame(
"id" = c(1:10),
"grade" = c(75, 26, 54, 90, 86, 93,
48, 71, 66, 99)
)
hscores <- subset(data,grade>x)
print(length(hscores))
【问题讨论】:
-
subset(data,grade>50)为我返回 8 行。但是length(hscores)不返回行数,而是返回列数。我想你正在寻找print(nrow(hscores))。 -
避免从剪贴板读入 b/c 容易出错且不可重现。为什么不能给 x 赋值 50?
-
是的,谢谢马丁,我现在明白了。另外,感谢 Eyayaw,注意到了。
-
请修剪您的代码,以便更容易找到您的问题。请按照以下指南创建minimal reproducible example。