读取器包中的Read.Table与Read_Table - Readr添加的额外列

时间:2017-12-20 06:24:41

标签: r readr

我正在尝试使用readr包读取zip文件。我原来的csv文件有170列。

使用常规read.table函数将zip文件读入R时,不会添加额外的列:

data1 <- read.table(unz(zip_file,csv_file), skip = 10, header=T, quote="\"", sep=",")

当我尝试使用下面的read_table重现时:

data2 <- read_table(unz(zip_file,csv_file), skip = 10)

还有更多的额外列。

我使用read.table时有170列,read_table有1461列。

下面列出了excel中的一些列(以便您可以了解原始的内容)并且我想知道如何使用read_table函数来读取所有内容而不需要额外的列补充道:

Column Names: 
A
B
C
D (A)
D (B)
E F
G
A B C : 2017 D E - F G: H I
J.org - B : L -- K.org: F C
2016 TEST TESTING : Baltimore TEST TESt: H B

我认为有一堆空格,破折号,冒号等会导致read_table添加额外的列。

如何避免使用额外的列,但同时保持列的原始格式?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您使用readr::read_csv,则无需添加其他列即可正常工作,因为它会从您的CSV文件中正确选取相应的分隔符。

data2 <- read_csv(unz(zip_file,csv_file), skip = 10)