向现有数据框架有条件地添加列时出错



我试图有条件地添加一列到数据帧。我有一个名为comments的专栏,其中有基于英语和德语的文本。我基本上想检测语言,并根据翻译添加一个值为ende的新列。

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"

最新更新