我有一个基本的职位表,我想根据模板中的值在R中进行修改。最后一步是根据模板(csv)中列为“小时”的行号将基本位置表子集化。
例如,模板(csv)的“小时”列中的第一个值是“ 7:22”。我想阅读此csv并仅保留7:22行。如果“小时”值为“ 1,7:22”,我也希望代码正常工作
我的直觉是尝试将position [template $ hours [1],]用作位置[7:22,],但这会返回NA。使用typeof-我发现template $ hours [1]是一个字符,而7:22是一个整数,但是既不能将template $ hours [1]转换为数字也不是整数。
尝试:
position[template$hours[1], ]
position[as.numeric(template$hours[1]), ]
position[as.integer(template$hours[1]), ]
position[c(template$hours[1]), ]
按尝试的顺序:
不适用 强制引入的NA 强制引入的NA 不适用
编辑:感谢MrFlick的提示
虽然这并不完全是它的工作原理,但实际上应该是相同的。
讨论的“基本职位表”是:
position <- data.frame("Hour" = 1:24, "Position" = 0)
讨论的“模板”是:
template <- data.frame(hours = "7:22")
我希望职位表看起来像这样:
position <- position[7:22, ]
甚至更好:
position$Position[7:22] <- 1
基于以下值:
template$hours[1]