Возможно ли объединить по нескольким столбцам в df_a
Например, если у меня есть df_a и df_b, где мой df_a выглядит как
SKS1 SKS2
UXCC77 NA
UXCC00 NA
UXCC00 UXCD00
UXCD00 NA
UXCD60 NA
UXME10 NA
, а df_b имеет описания длямои коды SKS.
SKS desc
UXCC77 Left Leg
UXCC00 Right Leg
UXCD00 Right Arm
UXCD60 Left Arm
UXME10 Head
и т. д.
Я хочу сделать что-то вроде
new_df <- merge(x = df_a, y = df_b, by.x = paste0("SKS", 1:ncol(df_a)), by.y = "SKS", all.x = TRUE)
Так что мой вывод
SKS1 SKS2 Desc1 Desc2
UXCC77 NA Left Leg NA
UXCC00 NA Right Leg NA
UXCC00 UXCD00 Right Leg Right Arm
UXCD00 NA Right Arm NA
UXCD60 NA Left Arm NA
UXME10 NA Head NA
или только с одним дескриптором, где "/" разделяет описания.
Так что мой вывод равен
SKS1 SKS2 Desc1
UXCC77 NA "Left Leg"
UXCC00 NA "Right Leg"
UXCC00 UXCD00 "Right Leg"/"Right Arm"
UXCD00 NA "Right Arm"
UXCD60 NA "Left Arm"
UXME10 NA "Head"
dput из df_a
structure(list(SKS_koder_samlet = structure(c(3L, 1L, 2L, 4L,
5L, 6L), .Label = c("UXCC00", "UXCC00/UXCD00", "UXCC77", "UXCD00",
"UXCD60", "UXME10"), class = "factor"), SKS1 = structure(c(2L,
1L, 1L, 3L, 4L, 5L), .Label = c("UXCC00", "UXCC77", "UXCD00",
"UXCD60", "UXME10"), class = "factor"), SKS2 = structure(c(NA,
NA, 3L, NA, NA, NA), .Label = c("UXCC00", "UXCC77", "UXCD00",
"UXCD60", "UXME10"), class = "factor")), class = "data.frame", row.names = c(NA,
-6L))