我正在尝试使用 gtrendsR 包运行一个简单的命令,但它给了我一个错误,说Error in make.names(col.names, unique = TRUE) : invalid multibyte string 1
这是代码:
res <- gtrends(c("nhl", "nba"), geo = c("CA", "US"))
Sys.setlocale("LC_CTYPE", "English")
如果错误是由于不同的语言设置引起的,那么它应该适合您。
但是,如果您想用其他语言而不是英语搜索关键字(例如对我来说是中文),那么另一个问题是检索到的数据中的关键字可能会被编码。我的技巧只是将 LC_CTYPE 重置为原始设置。
Sys.setlocale("LC_CTYPE", "Chinese (Traditional)")
对于像我这样有困难的人。
即使某些关键字效果很好,也有一些关键字效果不佳。我不知道
是什么造成了差异。
一些关键字[Error in make.names(col.names, unique = TRUE) : invalid multibyte string]
出现problelm。
我尝试了很多东西,但没有任何效果
我尝试过但没有奏效的事情
read.csv(~, fileEncoding = "UTF-8") and (~~ encoding = "UTF-8")
re-save
记事本中的文件Encoding()
解决方案
起初,我使用“韩语”并使用 Windows10,我所有的 CSV 文件都被编码为(ASCII)
如果我重新编码原始 CSV 文件,则在读取文件步骤出现问题。
结论
以上Sys.setlocale()
是我的唯一解决方案,但有一些限制。
你可以找到你自己的Sys.locale by
Sys.getlocale()`。
就我而言,
["LC_COLLATE=Korean_Korea.949;LC_CTYPE=Korean_Korea.949;LC_MONETARY=Korean_Korea.949;LC_NUMERIC=C;LC_TIME=Korean_Korea.949"]
所以我将语言环境设置更改为Sys.setlocale("LC_CTYPE", "English")
限制
即使“geo”是正确的,“related_topics”的结果也是值得怀疑的,因为related_topics被翻译了。
下面是我的代码
google.trends = gtrends(keyword = key_final, geo = "KR", gprop = "web", time = "2018-01-01 2018-11-30")[[1]]
google.trends = dcast(google.trends, date ~ keyword + geo, value.var = "hits")
rownames(google.trends) = google.trends$date
google.trends$date = NULL
google.trends
plot(google.trends[[1]], type = 'l')
但结果被翻译了