0

一部のベクターを HTMLdecode でデコードしたいのですが、うまくいかない場合があります。Excel シートからデータを読み込み、変数をデコードしたいのですが、機能しません。これらの変数を手動で設定すると、何らかの理由で機能し、その理由が本当にわかりません。

library(magrittr)
library(openxlsx)
library(data.table)
library(textutils)

Data.Guests <- read.xlsx("Data/xxx.xlsx") %>% 
  setDT 

HTMLdecode(Data.Guests[, Name]) # does not work, nothing happens
vector <- Data.Guests[, Name]
HTMLdecode(vector) # does not work
HTMLdecode(c("Rübezahl", "Meier")) # does work. "Rübezahl" is one element of the variable

これはdput(Data.Guests) 次のようになります。

structure(list(Titel = NA_character_, Vorname = NA_character_, 
    Name = "Rübezahl", Email = NA_character_, Institution = NA_character_, 
    Position = NA_character_, Anrede = "Herr", `Priorität-einladen` = NA_character_, 
    nachrangig = NA_character_, Noch.überlegen = NA_character_, 
    Bemerkung.1 = NA_character_, Salutation = "Sehr geehrter Herr Rübezahl,\n"), row.names = c(NA, 
-1L), class = c("data.table", "data.frame"), .internal.selfref = <pointer: 0x0000000002571ef0>) 
4

1 に答える 1

1

これは今の私のハックです...私は本当に満足していませんが、うまくいきます...

fil <- file("Data/tmp.r")
dput(Data.Guests, fil)
Text <- readLines(fil)
Text %<>% str_replace(", \\.internal.*", ")")
writeLines(Text, con = fil)
Data.Guests <- dget(fil)

それでなぜか効く…

于 2019-03-26T10:40:39.557 に答える