之前在操作csv文件时一般是将中文字符在excel或用Perl将其中的中文转换成对应的英文,但是最近碰到不得不在R里面进行中文符操作,发现R里面的匹配是无法识别的中文符的。比如:
df <- read.csv("weather.csv")
head(df)
进行匹配操作:
原因R读入文件时并不指定文件的字符编码,输入的类型为unknown;而直接打中文的话则是UTF-8编码,因此两者无法识别匹配。
要解决问题也很简单,将中文赋给一个变量,因为变量也是unknown类型的,与输入的csv文件一致,进而可以进行匹配操作。
PS: 若出现输入csv文件中文无法显示的问题,可以尝试以下操作:df <-read.csv("weather.csv",encoding = 'UTF-8',stringsAsFactors = FALSE)
若系统非中文,则先输入Sys.setlocale(category = "LC_ALL", locale = "Chinese (Simplified)")