У меня есть фрейм данных с названиями фруктов apple
, orange
и banana
:
> fruits
X.apple. X.orange. X.apple..1 X.banana. X.apple..2 X.orange..1 X.banana..1
apple orange apple banana apple orange banana
У меня также есть 3 списка: apples = c()
, oranges = c()
и bananas = c()
. Это просто списки.
Теперь я хочу добавить значение 0/1 в список в соответствии с df. Например: список яблок станет: apple = (1,0,1,0,1,0,0)
, в котором 0 означает, что в этой позиции df нет яблока.
oranges = (0,1,0,0,0,1,0)
bananas = (0,0,0,1,0,0,1)
Действительно мой исходный фрейм данных содержит тысячи элементов и сотни списков. Как я могу сделать это быстро?
> dput(fruits)
structure(list(X.apple. = structure(1L, .Label = "apple", class = "factor"),
X.orange. = structure(1L, .Label = "orange", class = "factor"),
X.apple..1 = structure(1L, .Label = "apple", class = "factor"),
X.banana. = structure(1L, .Label = "banana", class = "factor"),
X.apple..2 = structure(1L, .Label = "apple", class = "factor"),
X.orange..1 = structure(1L, .Label = "orange", class = "factor"),
X.banana..1 = structure(1L, .Label = "banana", class = "factor")), class = "data.frame", row.names = c(NA,
-1L))