r - 有没有办法根据从 csv 模板读取的行号值按行号对数据框进行子集化?
问题描述
我有一个基本位置表,我想根据模板中的值在 R 中进行修改。最后一步是通过模板 (csv) 中列为“小时”的行号对基本职位表进行子集化。
例如,模板 (csv) 中“小时”列中的第一个值是“7:22”。我想阅读这个 csv 并有效地只保留 7:22 行。如果“小时”值为“1, 7:22”,我也希望代码能够工作
我的直觉是尝试 position[template$hours[1], ] 因为 position[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]), ]
按照尝试的顺序:
NAs 强制引入的 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]
解决方案
推荐阅读
- python - 我想在子图中添加一个颜色条
- java - JAVA中上传文件到Blob存储容器时如何查看容器剩余空间?
- excel - 使用 CUBERANKEDMEMBER 显示排名列表的多个条件
- azure-devops - Azure 管道:不要为了运行测试而再次构建
- c++ - 如何从链接的目标文件中读取 .rodata?
- python - 无法在python2中加载逻辑回归模型
- c++ - 为什么我的全局变量(在 dll 和 exe 之间共享)没有改变?
- java - Thymeleaf + spring,如何从本地磁盘显示图像
- spring-boot - Spring 内容协商 - 一种 mime 类型来扩展另一种
- database - 导入时,找到并替换重复的,或者如果没有重复,粘贴在数据集的底部