Возникла проблема изменения структуры данных из-за специальных символов - PullRequest
0 голосов
/ 08 ноября 2018

Мой набор входных данных

df1 = data.frame(Var_A = c('A&B X+Y','C S'),
                 Var_B = c('1,2','2'))

Желаемый вывод

df2 = data.frame(Var_A = c('A&B','A&B','X+Y','X+Y','C S'),
                 Var_B = c('1','2','1','2','2'))

Наличие специальных символов, таких как "&", "+" и пробел, создает проблему

Я использую код

test_new = separate_rows(df1, "Var_B", convert = FALSE) %>%
  separate_rows("Var_A") %>%
  arrange(Var_A)

1 Ответ

0 голосов
/ 08 ноября 2018

Мы можем указать sep в separate_rows с регулярным выражением

df1 %>% 
   separate_rows(Var_B) %>% 
   separate_rows(Var_A, sep= "(?<=[A-Z]) (?=[A-Z][+])") %>%
   arrange(Var_A)
...