通过来自不同列的条目在R中过滤列中的数据

时间:2015-12-29 17:30:12

标签: r excel

我正在尝试将数据组织为一致的面板数据。唯一的问题是两列Year和school_id的问题是,一些school_id没有多年的数据。有没有办法可以过滤数据集,其中只包含年份包含2012,2013,2014的school_ids?

我更喜欢在R中这样做,但如果可以在Excel中完成,那就没问题了。

1 个答案:

答案 0 :(得分:0)

这是一个开始,虽然我不知道您的实际数据是什么样的(同样,尝试使用[r] remove na data frame在stackoverflow上进行搜索)

 set.seed(422)
 (
 foo <- data.frame(
   school_id = c(0, 10, NA, 8),
   Year = c(2011,2012,2013,2014),
   variable_01 = sample(c(1:4, NA), 4, replace=T),
   variable_02 = sample(c(1:4, NA), 4, replace=T),
   variable_03 = sample(c(1:4, NA), 4, replace=T),
   variable_04 = sample(1:4, 4, replace=T),
   variable_05 = sample(c(1:4, NA), 4, replace=T))
 )  
# school_id Year variable_01 variable_02 variable_03 variable_04 variable_05
#         0 2011           3           1           1           4           4
#        10 2012          NA           3           4           1          NA
#        NA 2013          NA           4          NA           3           3
#         8 2014           3           4           1           3           2

 foo[complete.cases(foo[,3:7]), ]
# school_id Year variable_01 variable_02 variable_03 variable_04 variable_05
#         0 2011           3           1           1           4           4
#         8 2014           3           4           1           3           2