2015-12-29 53 views
0

我試圖將數據組織爲一致的面板數據。唯一的問題是對於Year和School_id這兩列,問題是一些school_id沒有所有年份的數據。有沒有辦法可以過濾僅包含含2012,2013,2014年份的school_ids的數據集?通過不同列的條目過濾R中的數據

我寧願在R中這樣做,但如果它可以在Excel中完成,那很好。

+3

請提供一個最小的工作示例以及所需輸出。 –

+0

re。最小的工作示例:你可以看看[這個SO帖子](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)關於如何使一個偉大的在R中可重現的例子。此外,如果你概述你已經嘗試過的東西,它也會很有幫助。 –

回答

0

這裏是一個開始,雖然我不知道以什麼實際數據的樣子(也,請嘗試用[r] remove na data frame在計算器搜索)

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