У меня есть фрейм данных, где у каждого SerialNo
есть строка пропущенных значений, а у некоторых могут быть заполненные данные. Мне нужно расширить строки NA
до двух новых строк, состоящих из уникальных значений PartsUsed
.
Я считаю, что я на правильном пути, используя dplyr
complete
или expand
но я не могу получить правильные аргументы.
Ниже приведены примеры наборов данных (тот, который у меня сейчас есть, и тот, который является целевым df)
begin_ex_df <- tibble(
SerialNo = c(1234, 5678, 5678, 5678, 9012, 1357, 1357, 1357, 2468, 8080),
PartsUsed = c(NA, "A", "B", NA, NA, "A", "B", NA, NA, NA),
Values = c(NA, 10, 15, NA, NA, 11, 14, NA, NA, NA)
)
ending_ex_df <- tibble(
SerialNo = c(1234, 1234, 5678, 5678, 5678, 5678, 9012, 9012, 1357, 1357, 1357, 1357, 2468, 2468, 8080, 8080),
PartsUsed = c("A", "B", "A", "B", "A", "B", "A", "B", "A", "B", "A", "B", "A", "B", "A", "B"),
Values = c(0, 0, 10, 15, 0, 0, 0, 0, 11, 14, 0, 0, 0, 0, 0, 0)
)
Я ожидаю каждый *Строка 1014 * должна быть расширена, чтобы иметь "A"
и "B"
в PartsUsed
, и она Values
заполняется до 0 (обратите внимание, что заполнение значения не является необходимым - оно может остаться NA
.) Строки, которыеуже "A"
или "B"
следует оставить в покое.