我想检查列是否没有输入数据框的标题。
当我使用 fread(filename)
将缺少的标题更改为默认名称“V+列数”(例如:第一列的 V1、V2 等)时,就会出现问题。我阅读了该函数的文档,似乎无法更改 header 的默认值。
因此,考虑到这一点,我想将所有包含 V + number
的列作为缺失的标题。如果有人解释如何做这样的事情将会非常有帮助:
if(string == (V1, V2, ... VN)){ 做某事 }
就像比较字符串是否等于“V”加整数一样。
最佳答案
您可以使用 str_extract 获取所有列 Vx 值,我认为是从 stringr 包中获取的。
library(stringr)
str_extract(colnames(myDataFrame), "V\\d*")
示例:
dt <- data.frame("aaaa" = c(1:5), "V2" = c(6:10), "V3123" = c(11:15), "V455" = c(16:20))
str_extract(colnames(dt), "V\\d*")
"NA" "V2" "V3123" "V455"
然后您可以使用列名称执行您需要的操作
关于r - 在 R 中匹配具有动态格式的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45439028/