У меня есть эти данные:
df_1 <- data.frame(
x = c(NA, 1, 2, NA, 6),
y = c(1, 2, 3, 4, 6)
)
И код:
library(tidyverse)
df_2 <- df_1 %>%
pivot_longer(cols = c(x, y), names_to = 'factor', values_to = 'values',
values_drop_na = FALSE)
df_2
# A tibble: 10 x 2
factor values
<chr> <dbl>
1 x NA
2 y 1
3 x 1
4 y 2
5 x 2
6 y 3
7 x NA
8 y 4
9 x 6
10 y 6
Проблема: аргумент values_fill
не работает.
df_2 %>%
group_by(factor) %>%
mutate(n = row_number()) %>%
pivot_wider(names_from = factor, values_from = values,
values_fill = list(values = 0)) %>%
select(-1)
values_fill = list(values = 0))
не заменять пропущенные значения на 0
:
# A tibble: 5 x 2
x y
<dbl> <dbl>
1 NA 1
2 1 2
3 2 3
4 NA 4
5 6 6
В чем проблема?