【发布时间】:2020-09-24 04:19:59
【问题描述】:
我想使用fread 仅提取名称与条件匹配的列。 (在这种情况下,我想提取所有包含标签 email 的列。)假设您在工作目录中名为 tempdata.txt 的文件中有这些数据:
col1,col2,col3,email1,email2,col4,url1,url2,col5
1,2,3,4,5,6,7,8,9
9,8,7,6,5,4,3,2,1
x,x,x,me@me.com,you@you.com,y,y,y,y
a,a,a,a,a,a,http://google.com,http://stackoverflow.com,a
如果您知道名称,可以使用fread 加载列的子集:
test <- data.table::fread("tempdata.txt", select=c("email1","email2"))
> test
email1 email2
1: 4 5
2: 6 5
3: me@me.com you@you.com
4: a a
是否也可以使用字符串匹配进行选择?我试图模仿这种行为,但在 fread 命令中:
> all <- data.table::fread("tempdata.txt")
> all %>% select(contains("email"))
email1 email2
1: 4 5
2: 6 5
3: me@me.com you@you.com
4: a a
感谢您的任何见解。
【问题讨论】:
标签: r select data.table fread