Я хочу, чтобы превратить мой data.frame
из этой формы:преобразовать таблицу, которая имеет столбец со списком в длинный стол
Day Fruits
Monday Apple, Banana, Orange
Tuesday Apple, Banana
Thursday Orange, Melone
Saturday Apple
Sunday Banana
в такую форму:
Day Fruit
Monday Apple
Monday Banana
Monday Orange
Tuesday Apple
Tuesday Banana
Thursday Orange
Thursday Melone
Saturday Apple
Sunday Banana
Часть я не знать, как решить, состоит в том, что столбец фруктов имеет список разных предметов.
Это мой рабочий пример:
day <- c("Monday", "Tuesday", "Thursday", "Saturday", "Sunday")
fruits <- c("Apple, Banana, Orange", "Apple, Banana", "Orange, Melone", "Apple", "Banana")
df <- data.frame(day, fruits)
df
library(reshape2)
df[, c(2:4)] <- colsplit(df[, 2], ", ", c("fruit1", "fruit2", "fruit3"))
df
melt(df, id.vars="day")
можно разделить Fruits
столбец на несколько столбцов, но дело в том, что там может быть больше, чем просто три фруктов. И я до сих пор не получаю таблицу в длинном формате с расплавом, как я хочу.
Спасибо за помощь!