2014-06-07 30 views
2

我需要檢測很多短文本的語言,使用R. 我使用的是textcat包,該文件包查找哪些語言是衆多(如30個)歐洲語言中的哪一個是每個文本中的哪一個。但是,我知道我的文本是法文或英文(或者更一般地說,是由textcat處理的一小部分語言)。使用textcat包在R中進行語言檢測:如何限制爲幾種語言?

如何在調用textcat函數時添加這些知識?

感謝,

+0

考慮添加您想分類的示例文本。 –

回答

2

威力工作。可能你希望限制語言選擇爲英語或法語,以減少錯誤分類率。如果沒有示例文本,我們無法測試下面的方法。但是,它似乎將語言選擇限制爲英語和法語。

my.profiles <- TC_byte_profiles[names(TC_byte_profiles) %in% c("english", "french")] 
my.profiles 

my.text <- c("This is an English sentence.", 
      "Das ist ein deutscher Satz.", 
      "Il s'agit d'une phrase française.", 
      "Esta es una frase en espa~nol.") 

textcat(my.text, p = my.profiles) 

# [1] "english" "english" "french" "french" 
0

您還可以使用內置的ECIMCI_profiles實現較高的分類準確性。

呼叫

textcat(my.text, p = ECIMCI_profiles) 

,並可選地與%in%行的代碼馬克·米勒的回答結合這一點。

ECIMCI_profiles數據庫軟件包textcat使用的1000更大的最大的n-gram大小(不同於400作爲TC_byte_profilesTC_char_profiles DBS)。