2017-06-30 1 views
0

Ich habe einen Datenrahmen. Ich möchte die Spalten 3 - 6 (variable2 - variable5) der Zeile 3 (id 3) auswählen und dafür sorgen, dass es sich um einen eigenen Datenrahmen handelt. Beispiel dafür, was ich habe ...Eine Teilreihe in einem Datenrahmen nehmen?

rowId variable1 variable2 variable3 variable4 variable5 
    1  x   x2   x3   x4  x5 
    2  x   x2   x3   x4  x5 
    3  x   x2   x3   x4  x5 

möchte ich (aus Zeile 3)

x2   x3   x4  x5 

Wie würde ich mich über das tun dies nehmen?

Antwort

0

Sie einen Datenrahmen von Zeilen- und Spaltenindex wie so Subset kann:

df2 <- df[3,3:6]

0

Sie können es auch tun, in dplyr mit:

df %>% 
    select(variable2:variable5) %>% 
    slice(3) 

Colin

0

data.frame akzeptiert [] 2-dimensionale Untermenge mit ganzzahligen, logischen oder Zeichenvektoren, zB

d[ rows, cols ] 

In Ihrem Beispiel können Sie die gewünschte data.frame, indem Sie erhalten:

d[3, 3:6 ] # or 
d[3, c(3,4,5,6)] #or 
d[3, c(FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)] # etc. 
# you can also select on names: 
d[3, c('variable2', 'variable3', 'variable4', 'variable5') ] 

Beachten Sie, dass Datenrahmen auch Liste subsetting mit [[]], aber in diesem Fall ist der Datenrahmen akzeptieren trated als einfache Liste von Vektoren, im Gegensatz zu [], die immer ein Objekt der gleichen Klasse wie das Quellobjekt zurückgibt.

Verwandte Themen