我试图有条件地添加一列到数据帧。我有一个名为comments
的专栏,其中有基于英语和德语的文本。我基本上想检测语言,并根据翻译添加一个值为en
或de
的新列。
library(googleLanguageR)
df$language <- ifelse(df$comments %>%
gl_translate_detect() %>%
pull(language) == "en","en", "de"
)
然而,我得到
Error: NA/NaN argument
预期:
title | comments | language
-----------------------------------
A | I like... | en
B | I wish... | en
C | Das ist.... | de
C | Es war... | de
C | Most of the... | en
...
编辑:gl_translate_detect()
输出
A tibble:1 x 4
confidence isReliable language text
<dbl> <lgl> <chr> <chr>
0.983067 FALSE de Dem ich mich.
您是否愿意使用其他软件包?我不能在我的电脑上使用googleLanguageR
。但是它的文档建议使用cld2
包。
从文档
考虑使用library(cld2)和cld2::detect_language代替脱机,因为这是免费的本地而不需要付费API调用
https://cran.r-project.org/web/packages/googleLanguageR/googleLanguageR.pdf (pg.15)
# install.packages("cld2")
x = cld2::detect_language("katten sidder på måtten")
y = cld2::detect_language("how are you")
x
y
> x
[1] "da"
> y
[1] "en"