Итак, вот данные, с которыми я работаю:
ID Year State Grade Loss Total
1 2016 AZ A 50 1000
1 2016 AZ A 50 1000
2 2016 AZ B 0 5000
3 2017 AZ A 0 2000
4 2017 AZ C 10 100
2 2017 AZ B 0 3000
Я пытаюсь создать таблицу, показывающую сумму потерянного значения, сгруппированную по году, состоянию и классу,Та часть, которую я сделал, но проблема в том, что вы видите, что есть дублированная строка для ID = 1.Мне нужно добавить в мой код компонент, который удаляет все дублирующиеся строки, подобные ему, в моих данных после того, как я сгруппировал данные по году, состоянию и классу.
Причина, по которой я хочу удалить дубликаты после группировки данных, заключается в том, что идентификационный номер может дублироваться для другого года, но это нормально, поскольку это новое наблюдение.Я просто хочу удалить все дубликаты, если год, штат и класс совпадают.В основном, если вся строка является дубликатом, она должна быть удалена.
Я не могу сказать, должен ли я использовать Unique () или Distinct (), но вот что у меня есть:
Answer <- data %>%
group_by(Year, State, Grade) %>%
filter(row_number(ID) == 1) %>% #This is the part to replace
summarise(x = sum(Loss) / sum(Total)) %>%
spread(State, x)
Вывод должен выглядеть так:
Year State Grade x
2016 AZ A 0.05
2016 AZ B 0
2016 AZ C 0
2017 AZ A 0
2017 AZ B 0
2017 AZ C 0.1