Caricamento dei dati da file Excel in R o Octave
-
20-09-2019 - |
Domanda
Ho un file di Excel con un ampio insieme di dati. I grafici integrati disponibili in Excel sono non sufficiente per analizzare questi dati, così sto pensando di usare qualche strumento come ottava o R.
stavo pensando a qualche metodo per caricare un file di Excel direttamente in ottava o R. Ho cercato nel web e ha scoperto che molte persone sono riuscite utilizzando esportando i dati da Excel in un file CSV.
La domanda: C'è un modo diretto per caricare un file di Excel in R o Octave?
Soluzione
Sì, ecco come :
Gli utenti Windows possono utilizzare odbcConnectExcel nel pacchetto RODBC. Questo può selezionare righe e colonne da uno qualsiasi dei fogli in un file di foglio di calcolo Excel (almeno da Excel 97-2003, a seconda delle vostre driver ODBC: chiamando direttamente odbcConnect versioni tornare a Excel 3.0 può essere letto). La versione odbcConnectExcel2007 leggerà Excel formati 2007 così come quelle precedenti (forniti i driver sono stati installati: vedere RODBC).
Altri suggerimenti
Un altro (anche portatili) opzione è read.xls
nel GData pacchetto. E 'disponibile cross-platform in quanto si basa sul codice Perl sottostante per analizzare, leggere, ... dati dal file xls in un file CSV che viene poi letto. I pacchetti Perl richiesti sono tutti forniti da gdata .
pacchetto di un'ottava potrebbe essere facilmente creata usando lo stesso trucco.
La tua domanda è già stata data risposta. Nel caso in cui questo aiuta per alcuni casi futuro, una risorsa molto utile per questi tipi di domande è la R Data Import / Export documento che copre un sacco di API utili, pacchetti, suggerimenti, ecc per l'accesso ai dati da alcuni database comuni e formati di file.
Per esempio, c'è un sezione Excel , che copre un sacco di terreno nelle risposte già fornite.
Un altro consiglio utile è quello di provare il sistema R cerca aiuto. Ad esempio, provare una delle seguenti operazioni dal prompt R:
> ??xls
> ??excel
EDIT:. BTW, ??xls
è l'abbreviazione di help.search("xls")
Il modo più semplice è per i vostri dati siano sotto forma di un file CSV, e quindi utilizzare read.csv()
per leggere i dati. Essere consapevoli del fatto che quando si legge nei dati, che R leggerà in stringhe di caratteri e li converte in fattori. Questo può diventare un problema quando si tenta di sottoinsieme dei dati, ecc.
In alternativa, se si desidera leggere in forma di file nativo di Excel, quindi è possibile utilizzare il pacchetto RODBC
.
library('RODBC')
yourData <- sqlFetch(odbcConnectExcel("yourData.xls"),
sqtable = "nameOfSheet",
na.strings = "NA",
as.is = TRUE)
odbcCloseAll()
Una soluzione ancora più semplice per Windows è quello di utilizzare il href="http://treetron.googlepages.com/xlsreadwrite.htm" rel="nofollow noreferrer"> xlsReadWrite pacchetto . Non c'è bisogno di Perl, è sufficiente installare come un pacchetto R ed è possibile leggere e scrivere file di Excel al contenuto del vostro cuore.
Ora possiamo usato read.csv o read.table.
Ad esempio
df = read.csv("~/data/demo.csv",header = TRUE)