Я пытаюсь отфильтровать свои данные и удалить идентификаторы, которые имеют менее 9 уникальных наблюдений за месяц. Я также хотел бы создать список идентификаторов, который включает в себя количество.
Я пробовал использовать несколько разных опций:
library(dplyr)
count <- bind %>% group_by(IDS) %>% filter(n(data.month)>= 9) %>% ungroup()
count2 <- subset(bind, with(bind, IDS %in% names(which(table(data.month)>=9))))
Ничего из этого не сработало.
Вот как выглядят мои данные:
data.month ID
01 2
02 2
03 2
04 2
05 2
05 2
06 2
06 2
07 2
07 2
07 2
07 2
07 2
08 2
09 2
10 2
11 2
12 2
01 5
01 5
02 5
01 7
01 7
01 7
01 4
02 4
03 4
04 4
05 4
05 4
06 4
06 4
07 4
07 4
07 4
07 4
07 4
08 4
09 4
10 4
11 4
12 4
В конце концов, я бы хотел это:
IDs
2
3
Мне бы тоже хотелось это
IDs Count
2 12
5 2
7 1
4 12
Пока этот код самый близкий, но все равно просто дает коды ошибок:
count <- bind %>%
group_by(IDs) %>%
filter(length(unique(bind$data.month >=9)))
Ошибка в filter_impl (.data, quo):
Аргумент 2 условие фильтра не оценивает логический вектор