我有一个非常大的 .TSV 文件,由于它的大小,我无法读入 R。
我只想按标题名称阅读选择列,例如。“健康”。
我该怎么做呢?
看看colClasses
read.table 的参数:
df <- read.table(header = TRUE, colClasses=c(NA, "NULL", NA), text = '
A B C
1 2 3
4 5 6')
df
# A C
#1 1 3
#2 4 6
更新:
要按名称选择,首先在标题中读取,然后为 colClasses 创建一个向量:
# read the header
header <- read.table(header = FALSE, nrow = 1, text = '
A B C
1 2 3
4 5 6')
# cols we want to select
take <- c('A', 'B')
# create vector for colClasses
takecols <- ifelse(t(header) %in% take, NA, 'NULL')
# read selected cols
df <- read.table(header = TRUE, colClasses=takecols, text = '
A B C
1 2 3
4 5 6')