2013-10-30 36 views
9

Questo codice proviene direttamente da una vignetta di Bioconductor per la creazione di un'espressione Set (http://www.bioconductor.org/packages/2.12/bioc/vignettes/Biobase/inst/doc/ExpressionSetIntroduction.pdf).Come leggere una tabella di dati in R come matrice

> exprs <- as.matrix(read.table(exprsFile, header=TRUE, sep = "\t", 
       + row.names = 1, 
       + as.is=TRUE)) 

Chiunque può dire il motivo per cui questo codice genera il seguente messaggio di errore?

> exprs <- as.matrix(read.table(exprsFile, header=TRUE, sep = "\t", 
+      row.names = 1, 
Error: unexpected '=' in: 
"exprs <- as.matrix(read.table(exprsFile, header=TRUE, sep = "\t", 
       + row.names =" 
>      + as.is=TRUE)) 
Error: unexpected ')' in "      + as.is=TRUE)" 

Oppure, potresti suggerire un metodo alternativo per leggere il file exprsFile come matrice con intestazione?

Grazie mille per il vostro tempo.

+1

Ciao. Sembra che tu abbia copiato + incollato il codice Rimuovi i segni '+' Durante la lettura di un documento di codice 'R',' + ' segni ** ** generalmente indicano una linea continua quando si digita nella console. (una notevole eccezione è in 'codice relativo ggplot', ma che non sono pertinenti qui) –

+0

Rimozione segni + risolto il problema, grazie S! – user2939281

+0

Lo script corretto generato "errore riga finale incompleta". Un altro post su questo sito suggerito per scorrere fino all'ultima riga del file di testo e premere invio. Salvare il file con tale modifica fissato l'errore riga finale incompleta. – user2939281

risposta

15

La vignetta di biobase è (quasi certamente) prodotta utilizzando Sweave. I > e leader + dove singole espressioni sono stati suddivisi su più righe sono un artefatto di utilizzare Sweave e come si visualizza il codice che elabora. Essa riflette come il terminale/console (sessione R) avrebbe guardato se avessi inserito la seguente (che dovrebbe funzionare)

exprs <- as.matrix(read.table(exprsFile, header=TRUE, sep = "\t", 
        row.names = 1, 
        as.is=TRUE)) 

knitr (che è un'alternativa al Sweave, ed è ora consentito per vignette, per impostazione predefinita ha questi prompts sono stati rimossi, quindi il codice è più direttamente copia-e-pastable

Problemi correlati