data <- data.frame(a=c("0125-510","0125-511","0125-512","4000-000","5000-000"), b=c("100 Fake Street", "100 Fake Street", "100 Fake Street", "200 Fake Street", "300 Fake Street"))
data <- data.frame(a=c("0125-510","0125-510","0125-510","4000-000","5000-000"), b=c("100 Fake Street", "100 Fake Street", "100 Fake Street", "200 Fake Street", "300 Fake Street"))
Input:
a b
0125-510 100 Fake Street
0125-511 100 Fake Street
0125-512 100 Fake Street
4000-000 200 Fake Street
5000-000 300 Fake Street
Output:
a b
0125-510 100 Fake Street
0125-510 100 Fake Street
0125-510 100 Fake Street
4000-000 200 Fake Street
5000-000 300 Fake Street
У меня есть датафрейм с адресами. С каждым адресом связан последовательный идентификатор, который отформатирован как строка символов, чтобы сохранить начальные нули. Для каждой строки с повторяющимся адресом (столбец B) я хочу заменить все значения в столбце A первым появившимся идентификатором (т. е. самым низким идентификатором).
Идентификаторы могут не обязательно быть в порядке, поэтому они могут быть отформатированы следующим образом:
Input:
a b
0125-512 100 Fake Street
0125-511 100 Fake Street
0125-510 100 Fake Street
4000-000 200 Fake Street
5000-000 300 Fake Street
Output:
a b
0125-510 100 Fake Street
0125-510 100 Fake Street
0125-510 100 Fake Street
4000-000 200 Fake Street
5000-000 300 Fake Street
Я пытаюсь реализовать это с помощью dplyr.
data %>% arrange(b, a) %>% group_by(b) %>% mutate(a =first(a))
? - person Ronak Shah   schedule 28.07.2020