2016-06-08 4 views
0

Mit einigen data.table Ich bin mit Subsetting-Problem konfrontiert.R: Subsetting-Problem mit einigen Datentabellen bei Verwendung von Spalte Wert/Position für die Untergruppe

zum Beispiel, wenn ich 4., 8. und 9. Spalte einer bestimmten Datentabelle "y" verwende ich unten Code, aber als Ergebnis ist es Erstellen von Vektor von 4,8,9 anstelle von 4., 8. und 9.

Spalten
y<-data.table(rnorm(100),pnorm(100),rnorm(100),pnorm(100),rnorm(100),pnorm(100),rnorm(100),pnorm(100),rnorm(100),pnorm(100)) 
req<-y[,c(4,8,9)] 
req 

für den obigen Code Ergebnis ist ein Vektorausgabe von 4,8,9

# [1] 4 8 9 

nur für einige Datentabelle dieses jemand issue.Can i bin vor dieser bitte lösen?

+1

mischen Sie data.frames und data.tables up? Dieser Link kann helfen, http://stackoverflow.com/questions/5487269/subsetting-in-data-table, wenn Sie data.tables meinen. – user1945827

+2

Bitte [lesen Sie die Vignetten] (https://github.com/Rdatatable/data.table/wiki/Getting-started). – Arun

Antwort

1

Versuchen

req<-y[,c(4,8,9),with=FALSE] 

ich denke, es wird dir geben, was Sie wollen

+0

danke. Ist eine Standardeinstellung mit = FALSE vorzunehmen? Da ich nur mit einigen Datentabellen Probleme habe. – PPC

+0

Nein, ich denke nicht, dass Sie standardmäßig "mit" auf "false" setzen können. Auf diese Weise wurde die Datentabelle entworfen. Wenn Sie ihn auf false setzen, können Sie die Datentabelle als Datenrahmen verwenden. Vielleicht möchten Sie versuchen y <- data.frame (rnorm (100) ...), wo Sie nicht angeben müssen mit = False. Sie können diese FAQ Post http://datatable.r-forge.r-project.org/datatable-faq.pdf über die Datentabelle lesen, es ist sehr nützlich! –

+1

@ George91 diese FAQ ist ziemlich veraltet, verwenden Sie stattdessen diesen Link: https://rawgit.com/wiki/Rdatatable/data.table/vignettes/datatable-faq.html – jangorecki

0

Mindestens zwei Möglichkeiten:

# using column name 
y[ , .(V4,V8,V9)] 

# using column position 
y[, c(4,8,9), with = FALSE] 
Verwandte Themen