#r #dplyr #tidyr #data-wrangling #feature-engineering
Вопрос:
У меня есть этот набор данных sheep.df из пакета dmm. Мне нужно преобразовать формат данных таким образом:
исходные данные:
- 2a4242 9a4003 9a4123 1984 Т. М. 4.4 19.2 40
Новый формат:
- 1 2a4242 9a4003 9a4123 1984 Т М 4,4
- 2 2a4242 9a4003 9a4123 1984 Т M19.2
- 3 2a4242 9a4003 9a4123 1984 Т М 40
Таким образом, для каждого из последних 3 столбцов будут новые строки, пронумерованные как 1 2 3 .
Комментарии:
1. Попробуй
tidyr::pivot_longer()
2. В целом, полезно делиться своими данными воспроизводимым способом, чтобы мы могли загружать ваши данные (или поддельные данные с теми же структурными свойствами) на наши компьютеры. Часто проще всего сделать это с помощью
dput()
функции в R, которая создает «рецепт» в коде для создания объекта с нуля. Например, вы могли бы использоватьdput(head(YOUR_DATA))
, включить выходные данные в свой вопрос, а затем мы могли бы сгенерировать первые несколько строк ваших данных точно так, как они у вас есть. (Конечно, вы отметили источник, но у большинстваdmm
из них пакет не будет установлен.). кстатиsheep.df %gt;% pivot_longer(Cww:Bwt)
3. спасибо за совет.