2015-10-04 61 views
0

我有一大堆35k +行的数据。我从R中的.csv文件导入这些数据,并在Excel中执行相同的操作。在Excel中,它显示了8行不同的35k行列。但是在R中,它只显示一个列名,并且列中的所有列名都是一个列。我曾尝试与下列R-代码:R中的拆分列

> YR1999 <- read.csv("~/Desktop/---/---/YR1999.csv", header=TRUE, quote="\"") 

> class(YR1999) 
[1] "data.frame" 

> names(YR1999) 
[1] "SYMBOL.......SHORT_NAME...........INFO_4THE.OPENING_RATE.HIGH_RATE..LOW_RATE.CURR_RATE.CURR_TURNOVER" 

> dim(YR1999) 
[1] 35647  1 
> colnames(YR1999) <- c("Symbol", "Stock Name", "Date", "Open-Rate","High-Rate", "Low-Rate", "Current-Rate", "Turnover") 
Fehler in `colnames<-`(`*tmp*`, value = c("Symbol", "Stock Name", "Date", : 
    Attribut 'names' [8] muss dieselbe Länge haben wie der Vektor [1] 

在Excel中我看到每列名不同的列,但在R I不。我想将这个名称与原始数据中的8列分开,任何人都可以告诉我该怎么做?

+1

您可能需要使用正确的分隔符,即'sep =' – akrun

+0

您确定您将excel文件保存为“逗号分隔值(.csv)”吗? – pcantalupo

+1

如果您保存了像@pcantalupo建议的文件,那么您可能需要'read.csv2'而不是'read.csv',因为在大多数欧洲国家,逗号用作小数点和分号作为字段分隔符。 – Jaap

回答

0

只需尝试read.csv("~/Desktop/---/---/YR1999.csv", sep=";", header=TRUE, quote="\"")read.csv("~/Desktop/---/---/YR1999.csv", sep=",", header=TRUE, quote="\"")。您实际上可以在Excel中查找使用哪种分隔(“;”或“,”)。

+0

我试过用csv和csv2添加额外你提到的参数,但结果是一样的。我甚至尝试打开这两种文件格式 - .txt和.csv,也尝试过.csv2,但它总是向我显示一列有许多行。 – Archie