count()
ヘルパーを使用して行をフィルタリングしようとしています。出力として必要なのは、map %>% count(StudentID) = 3
が含まれるすべての行です。
たとえば、以下のdfでは、StudentID 10016と10020のすべての行が削除されます。これらは2つのインスタンスにすぎず、3つ必要です。
StudentID StudentGender Grade TermName ScaleName TestRITScore
100 M 9 Fall 2010 Language Usage 217
100 M 10 2011-2012 Language Usage 220
100 M 9 Fall 2010 Reading 210
10016 M 6 Fall 2010 Language Usage 217
10016 M 6 Fall 2010 Mathematics 210
10020 F 7 Fall 2010 Language Usage 210
10020 F 7 Fall 2010 Mathematics 213
10022 F 8 Fall 2010 Language Usage 232
10022 F 9 2011-2012 Language Usage 240
10022 F 8 Fall 2010 Mathematics 242
私が行った場合:
count(df, StudentID)
次に、2列のdfしか表示されませんが、dfのすべての列を保持したいと思います。だから私はフィルターを使うべきだと思います。
count
はあなたが探しているものではないと思います。代わりにn()
を試してください。
df %>%
group_by(StudentID) %>%
filter(n() == 3)
# Source: local data frame [6 x 6]
# Groups: StudentID
#
# StudentID StudentGender Grade TermName ScaleName TestRITScore
# 1 100 M 9 Fall 2010 Language Usage 217
# 2 100 M 10 2011-2012 Language Usage 220
# 3 100 M 9 Fall 2010 Reading 210
# 4 10022 F 8 Fall 2010 Language Usage 232
# 5 10022 F 9 2011-2012 Language Usage 240
# 6 10022 F 8 Fall 2010 Mathematics 242