如何使用这两个条件在R中对我的数据框进行子集化?

时间:2017-07-01 14:07:11

标签: r dplyr subset

假设我有一个数据框(称为mydata1),其中6列具有标题A到F.

我需要创建一个包含A,C和F列的新数据集,但只能创建F> = 100的行。

我是R的新手,我这样做的方式分为两步:

第1步:

library (dplyr)
mydata2 %>% select(A, C, F)

第2步:

mydata3[mydata2$F >= 100, ]

有没有办法一步完成,只有mydata2作为最终数据集?

2 个答案:

答案 0 :(得分:2)

你几乎就在那里。你只需要使用filter动词(执行行子集化)并将它们全部链接起来。请参阅Hadley Wickham的书中的data transformation chapter

mydata2 <- mydata1 %>%
  filter(F >= 100) %>%
  select(A, C, F) 

答案 1 :(得分:1)

只需使用基数R并注意引号

   mydata2= mydata[mydata$F>100,c("A","C","F")]