У меня есть ряд учетных записей с уникальными номерами счетов, которые можно сгруппировать по порядковому номеру. Я хотел бы использовать уникальный номер счета в начале каждой последовательности в качестве нового справочного столбца для всей группы. Я могу выполнить свою задачу с Do
, но я думаю, что мое решение довольно неэлегантно. Может ли кто-нибудь с помощью этого примера кода продемонстрировать более чистый способ достижения результата?
library(tidyverse)
df <- tibble(Seq = factor(c(1,1,1,2,2,2,2,3,3)),
Num = c("8432", "a2233", "234",
"b532", "q265", "z4453", "1232",
"a644", "124"))
df %>%
group_by(Seq) %>%
do(mutate(.,HH = as_vector(.[1,2]))) %>%
ungroup()
Выход:
# A tibble: 9 × 3
Seq Num HH
<fctr> <chr> <chr>
1 1 8432 8432
2 1 a2233 8432
3 1 234 8432
4 2 b532 b532
5 2 q265 b532
6 2 z4453 b532
7 2 1232 b532
8 3 a644 a644
9 3 124 a644
dplyr
? - person akrun   schedule 19.02.2017library(stringi); df %>% group_by(Seq) %>% mutate(HH = Num[stri_detect(Num, regex="[a-z]")])
- person akrun   schedule 19.02.2017