RODBC è la libreria principale in R per importare i dati da un database in R. RODBC
sembra avere la capacità di "indovinare" il tipo di dati della colonna che trovo particolarmente fastidioso.fastidioso "funzionalità" (o bug?) Per RODBC
ho caricato un file test.xls
here, oppure si può creare un file xls da soli:
- creare 2 colonne, prima colonna chiamato
col_a
e la seconda colonna di nomecol_b
. - tipo quello che vuoi in
col_a
, ho digitato le lettere su questa colonna per 92 righe - alla fila 92 ° di col_b, digitare un numero lì, ho digitato "1923" senza modificare il tipo di dati (cioè non utilizzando
'
) - cercano di importare il file xls nella R utilizzando il seguente script:
library(RODBC)
setwd("C:/Users/hke775/Documents/Enoch/MISC/R_problems/RODBC")
channel <- odbcConnectExcel("test.xls",readOnly=TRUE)
dummy.df <- sqlFetch(channel,"Sheet1")
odbcClose(channel)
Vedrete che in dummy.df
, col_b
è tutto NA
, lo 1923
in questa colonna è sparito.
Se si desidera visualizzare nuovamente lo 1923
, è possibile modificare la 1a riga di col_b
in un numero ed è di nuovo indietro.
Questo è molto fastidioso in quanto non preferisco modificare manualmente i dati. Ho bisogno di usare un altro pacchetto per importare xls, ma non riesco a trovare altri pacchetti uguali a RODBC
(ho provato gdata
e xlsReadWrite
).
Mi sono perso qualcosa nel comando sqlFetch
e causa il problema? Grazie.
Sei sicuro di aver provato gdata? Quando ho provato il tuo file di test con il pacchetto gdata usando 'DF <- read.xls (" test.xls ")' ha funzionato. Era presente il '1923'. –
Gdata deve avere perl, che non posso installarlo nel mio ufficio – lokheart
Se i poteri che possono installare R allora dovrebbero installare anche la distribuzione Rtools poiché è richiesta per lo sviluppo R e che contiene perl in esso: http : //cran.r-project.org/bin/windows/Rtools/ –