При попытке создать фиктивные переменные возникает проблема, из-за которой строка почему-то объединяется. Это приводит к тому, что ряд ассоциируется с двумя группами, следовательно, не является фиктивной переменной. Следующий код воспроизводит проблему.
df = data.frame(group = c(4, 2, 3, 3, 4, 4), time = c(0.1, 0.2, 0.3, 0.3, 0.3, 0.4), age = c(65, 86, 49, 71, 71, 76), year = c(72, 74, 72, 76, 76, 77), death = c(1, 1, 1, 1, 1, 1))
df %>% mutate(i=1) %>% spread(group, i, fill=0)
После выполнения кода вы можете видеть, что есть объединенная строка, в результате чего субъект попадает в две группы одновременно. Это ошибка с кодом или ошибка с функцией?