在R中读取csv文件时出错

时间:2013-08-26 12:59:54

标签: r csv

我在使用R。

读取csv文件时遇到一些问题
 x=read.csv("LorenzoFerrone.csv",header=T)

Error in make.names(col.names, unique = TRUE) : 
      invalid multibyte string at '<ff><fe>N'

我可以使用libre office读取文件,没有任何问题。

我无法上传文件,因为它充满了明智的信息。

我该怎么办?


设置编码似乎是解决问题的方法。

> x=read.csv("LorenzoFerrone.csv",fileEncoding = "UCS-2LE")
> x[2,1]
[1] Adriano Caruso
100 Levels:  Ada Adriano Caruso adriano diaz Adriano Diaz alberto ferrone Alexey ... Zia Tina

10 个答案:

答案 0 :(得分:8)

原因是编码无效。我已经用e

解决了所有“è”的问题

答案 1 :(得分:2)

您需要在sep参数中指定正确的分隔符。

答案 2 :(得分:2)

这将按原样读取列名,不会返回任何错误:

x = read.csv(check.names = F)

要删除/替换列名中的麻烦字符,请使用:

iconv(names(x), to = "ASCII", sub = "")

答案 3 :(得分:2)

我发现这个问题是由文件代码引起的,我通过打开它来解决这个问题,用UTF-8保存,然后用Excel重新打开(最初变得乱码),并用UTF-8重新开始,然后它奏效了!

答案 4 :(得分:2)

在读取csv时,您始终可以使用“ Latin1”编码:

 x = read.csv("LorenzoFerrone.csv", fileEncoding = "Latin1", check.names = F)

我要添加check.names = F以避免在标题中用点替换空格。

答案 5 :(得分:1)

将文件格式更改为-CSV UTF-8。它对我有用。

答案 6 :(得分:0)

不确定这是否有用,但我遇到了类似的问题并且发现这是因为我的&#34; csv&#34;文件后缀为.csv,但实际上是一个.xls文件!

答案 7 :(得分:0)

不确定这是否有帮助,只是有一个类似的问题我通过删除“从我尝试导入的csv解决了。数据库的第一行的列名称写为”colname“,”colname2“,”等等“我删除了所有的”然后在R中读取了csv就好了。

答案 8 :(得分:0)

我通过删除书写中的任何图形符号(即重音符号)来解决问题。我的标题是用西班牙语写的,并且在那里有一些重点标记。我用简单的词(México=墨西哥)代替,问题解决了。

答案 9 :(得分:0)

我知道这是一篇旧帖子,但只是想对非英语母语者说,如果你使用“,”作为十进制分隔符,