Мне нужно запустить тест хи-квадрат, поэтому мне нужно, чтобы уровни одного столбца (пола) были именами столбцов для вывода различных переменных. Вот некоторые данные:
test <- data.frame(gender = as.character(sample(c('male','female'),10, replace = T)),
test1 = sample(c(1:10)),
test2 = sample(1:5,10 , replace = T))
> test
gender test1 test2
1 female 2 2
2 male 9 1
3 male 4 4
4 female 8 1
5 female 5 4
6 female 3 3
7 female 7 3
8 female 1 1
9 male 10 2
10 male 6 2
Я использовал следующую строку кода с dplyr :: spread (), но она дает мне ошибку:
test %>% spread(gender,test1)
Error: Each row of output must be identified by a unique combination of keys.
Я следовал всем примеры, которые dplyr предоставляет с использованием collect () и spread (), но ничего не работает. Если у вас есть какие-либо советы, пожалуйста, дайте мне знать. Вот мой желаемый результат:
> goal
male female
1 10 3
2 1 4
3 5 10
4 3 9
5 6 7