如何使用R中的read.table指定要选择的列

时间:2014-04-23 11:23:18

标签: r read.table

我有一个包含100列的数据集,但它没有标题。

我有一个int向量,由1到100之间的一些数字组成。例如,带有" 2 5 62 78"的数据。

现在,当我使用read.table读取数据集时,我想要的是从数据集中选择第2,5,62和78列。我怎样才能做到这一点?非常感谢。

1 个答案:

答案 0 :(得分:3)

你想要的是colClasses的选项read.table()(以及衍生函数)。它允许您传递character向量,其中包含数据中每列的类。如果将其设置为"NULL",则会跳过该列。您可以将整个事物设置为"NULL",然后仅更改要导入的内容(基于其类)。

以下概念证明。

cc <- rep('NULL', 100)       ## skip all 100 columns
cc[c(2, 5)] <- 'integer'     ## 2 and 5 are integer
cc[c(62, 58)] <- 'character' ## 62 and 58 will be imported as character
df <- read.csv('really-wide-data.csv', colClasses=cc)