今天帮朋友写了一个文字处理的小东西。结果出来莫名其妙的少了几行,百思不得其解,怎么都会少几行。于是查了一晚上。最终原因居然是因为读入的时候的编码问题。啊,中文!
使用read.csv()时,有中文的话,请务必保证你的文件是GBK编码格式的。或者用fileEncoding来指定编码格式,不要用encoding!
以防还有用,先存一下
myfile = read.csv("G://Sample.txt",header = FALSE, fileEncoding = "UTF-8")
myfile.res <- myfile[myfile!=" "]
myfile.split = strsplit(myfile.res, NULL)
myfile.freq <- table(unlist(myfile.split))
myfile.freq <- rev(sort(myfile.freq))
write.csv(myfile.freq,"G:\\splitfre.csv",fileEncoding = "GBK")
因为作用还蛮死的,读入一段文字,对文字按字拆分,再记录词频,所以没做数据的清洗。正常应该是有个数据清洗过程的。