有时当我将文本文件导入R时,我会在第一列的第一个值上附加字符"".有人知道为什么吗?
例如,文本文件的值为:
2011_21,3130
2010_51,4153
2011_16,3168
2010_20,3945
2012_38,2099
2012_17,2436
2010_40,2090
2011_2 ,1462
Run Code Online (Sandbox Code Playgroud)
在R中提出以下结果:
我在第一次阅读文件:
ts_data <- read.csv("yr_wk sales.csv", header=FALSE)
head(ts_data)
Run Code Online (Sandbox Code Playgroud)
这是返回的数据:
V1 V2
1 2011_21 3130
2 2010_51 4153
3 2011_16 3168
4 2010_20 3945
5 2012_38 2099
6 2012_17 2436
Run Code Online (Sandbox Code Playgroud)
有什么好方法可以避免这个吗?谢谢你的帮助.
小智 5
您需要使用以下内容:
ts_data <- read.csv("yr_wk sales.csv", fileEncoding="UTF-8-BOM", header=FALSE)
head(ts_data)
Run Code Online (Sandbox Code Playgroud)
正如我在评论中指出的,这是Byte Order Mark。这里有关于处理它的讨论( http://cran.r-project.org/doc/manuals/R-data.html )。
如果你知道文件编码,就可以搞清楚。假设是UTF-8:
ts_data <- read.table("yr_wk sales.csv", fileEncoding = "UTF-8")
Run Code Online (Sandbox Code Playgroud)