Ho creato uno script di seguito per convertire unicode in caratteri cinesi, l'ultima stringa in temp.df[,"name_unicode"]
è "§® £" (senza preventivo), in modo che anche le persone che non conoscono il cinese possano essere d'aiuto.conversione Unicode ed esportazione in R
library(RODBC)
library(Unicode)
temp.df <- data.frame(name_unicode=c("陳大文",
"陳小敏",
"陳一山",
"§®£"),
stringsAsFactors=FALSE)
temp.df[,"name_unicode_mod"] <- sapply(temp.df[,"name_unicode"],
function(x) {
temp <- unlist(strsplit(x,";"))
temp <- sprintf("%x",as.integer(gsub("[^0-9]","",temp)))
temp <- intToUtf8(as.u_char_range(temp))
return(temp)
})
write.csv(temp.df,file("test.csv",encoding="UTF-8"),row.names=FALSE)
L'uscita per temp.df[,"name_unicode_mod"]
è OK per la console R. Ma ho bisogno di esportarli nel formato csv
o xls
. Ho provato write.csv
, write.table
, odbcConnectExcel
in RODBC
ma tutto mi dà qualcosa come <U+00A7><U+00AE><U+00A3>
.
Qualcuno può aiutare? Grazie.
P.S. Sto usando R 3.0.0 e Win7
Hai provato a utilizzare anche l'argomento 'encoding' nella funzione' write.table'? –
provato: 'out <- file (" test.txt "," w ", encoding =" UTF-8 "); write.table (temp.df, out, row.names = FALSE); chiudere (out) ' fallire ancora – lokheart
+1 perché sento il tuo dolore con la codifica. –