R的read.csv在第一列名称前加上垃圾文本[复制]

参见英文答案 > When I import text file into R, I get a special character appended to the first value of the first column                                    3个
我已将数据从SQL Server Management Studio中的结果网格导出到csv文件.
csv文件看起来正确.

但是当我使用read.csv将数据读入R数据帧时,第一列名称前缀为“ï..”.我如何摆脱这个垃圾文本?

例:

str(trainData)

'data.frame':   64169 obs. of  20 variables:    
 $ï..Column1             : int  3232...   
 $Column2                : int  4242...

数据看起来像这样(没什么特别的):

列1,列2
100116577,100116577
100116698,100116702

您在文件的开头有一个Unicode UTF-8 BOM:

http://en.wikipedia.org/wiki/Byte_order_mark

A text editor or web browser interpreting the text as ISO-8859-1 or
CP1252 will display the characters  for this

R为您提供ï,然后将其他两个转换为点,因为它们是非字母数字字符.

这里:

http://r.789695.n4.nabble.com/Writing-Unicode-Text-into-Text-File-from-R-in-Windows-td4684693.html

邓肯默多克建议:

You can declare a file to be in encoding “UTF-8-BOM” if you want to
ignore a BOM on input

因此,请尝试使用fileEncoding =“UTF-8-BOM”的read.csv或说服您的SQL wotsit不输出BOM.

否则你也可以测试一下名字是否以ï开头…并用substr去掉它(只要你知道你永远不会有一个像真正那样开始的专栏……)

翻译自:https://stackoverflow.com/questions/24568056/rs-read-csv-prepending-1st-column-name-with-junk-text

转载注明原文:R的read.csv在第一列名称前加上垃圾文本[复制]