Ho file json
con dati per paesi. Uno dei file ha i seguenti dati:"NA" nel file JSON si traduce in NA logico
"[{\"count\":1,\"subject\":{\"name\":\"Namibia\",\"alpha2\":\"NA\"}}]"
Ho il seguente codice convertire il json
in un data.frame
utilizzando il pacchetto jsonlite
:
df = as.data.frame(fromJSON(jsonfile), flatten=TRUE))
mi aspettavo un data.frame
con i numeri e stringhe:
count subject.name subject.alpha2
1 Namibia "NA"
Invece, il codice alpha2 NA
viene convertito automaticamente in NA
logica, e questo è ciò che ottengo:
str(df)
$ count : int 1
$ subject.name : chr "Namibia"
$ subject.alpha2: logi NA
voglio alpha2 di essere una stringa, non è logico. Come posso risolvere questo?
Benvenuti in SO. buona prima domanda Prova ad aggiungere altri dati di esempio con cui le persone possono giocare. – vagabond
Basta costringere a 'character'. Probabilmente non è necessario farlo perché R farà quella coercizione al primo bisogno. –
@BondedDust Grazie. Sì, R richiede inizialmente la coercizione, ma ci sono alcuni file con solo dati per la Namibia. C'è un modo per forzare a 'character' quando si converte il json in' dataframe'? – Armin