1

非常に大きな.TSVファイルがあり、そのサイズが原因でRに読み込むことができません。

ヘッダー名で選択した列のみを読み取りたい、たとえば。"健康"。

どうすればこれを行うことができますか?

4

1 に答える 1

7

colClassesread.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')
于 2013-03-26T19:39:47.923 に答える