2
我有一個.csv
數據框df
具有100,000+行和兩列代表城市和國家的名稱(從網站的許可刮),其中一部分數據如下所示:R中的外部字符自動編碼修復
df <- read.csv("country_dat.csv", header = TRUE, sep = ",", stringsAsFactors = FALSE)
df
city country
1 Huntsville, Alabama US
2 Nyn_shamn Sweden
3 J__li Finland
該文件包括多個編碼,所以我嘗試了以下解決在後處理的編碼錯誤:
guess_encoding(df$city[2])
encoding language confidence
1 ISO-8859-1 en 0.30
2 ISO-8859-2 hu 0.20
3 UTF-8 0.15
4 UTF-16BE 0.10
5 UTF-16LE 0.10
6 Shift_JIS ja 0.10
7 GB18030 zh 0.10
8 EUC-JP ja 0.10
9 EUC-KR ko 0.10
10 Big5 zh 0.10
repair_encoding(df$city[2])
Best guess: ISO-8859-1 (56% confident)
[1] "Nyn_shamn"
這顯然是行不通的。是否有可能自動修復編碼過程,而不必再次刮掉網站?
編輯:所需的輸出看起來象下面這樣:
city country city_fixed
1 Huntsville, Alabama US Huntsville, Alabama
2 Nyn_shamn Sweden Nynäshamn
3 J__li Finland Jääli
試過'enc2utf8()'但是沒有工作,這個和guess_encoding'輸出的結果都是下劃線而不是特殊字符 – 1984
你能否提供一個小樣本.csv文件,以便可以播放一下?否則,測試可能的解決方案相當困難 – TomS