2016-05-09 4 views
0

Если мы возьмем несколько примеров данных, мы можем получить различные выходы следующим образомподмножества кадр данных с R

A <- (1:10) 
B <- (20:29) 
df1 <- data.frame(A,B) 
D <- c(1,2,3,3) 
# with this command, output the first, second, third and third row 
df1[D,] 

D <- c(5,7,3,3) 
# and here the 5th, 7th .... 
df1[D,] 

Но я хочу, чтобы получить второй кадр данных, где D значения соответствуют эквивалентному A

# here we reomve the first two rows of data 
df2 <- df1[-c(1,2),] 
# now we want to call upon our D and obtain a new data frame with 
# A==5,A==7, and 2x A==3 
df2[match(df2$A==D),] 

Если я использую это, я не получаю повторяющиеся значения

df2[(df2$A %in% D),] 

ответ

2

match аргумент не является правильным

df2[match(D,df2$A),] 
# A B 
#5 5 24 
#7 7 26 
#3 3 22 
#3.1 3 22 
0

Я действительно не Shure, но вы хотите набор данных, как это:

A <- (1:10) 
B <- (20:29) 
D <- c(1,2,3,3) 
df1 <- data.frame(A,B) 

df2<-df1[df1$A%in%D,] 

Однако я не понимаю, почему вы удалить первые 2 строк.

Смежные вопросы