У меня есть фрейм данных, состоящий из двух столбцов («Cam_Trap_Days» и «Genus»), где Cam_Trap_Days указывает конкретный день и род, которые присутствовали в наблюдении.
structure(list(Cam_Trap_Days = c(0, 0, 1, 1, 1, 2, 2, 2, 2, 2,
3, 3, 3, 17, 18, 19, 19, 20, 21, 21, 22, 23, 23, 23, 24, 25,
25, 25, 26, 26, 28, 29, 29, 30, 31, 32, 33, 34, 35, 36, 36, 37,
37, 38, 38, 39, 39, 40, 41, 42, 42, 43, 44, 44, 44, 45, 45, 45,
46, 46, 46, 46, 47, 49, 50, 51, 52, 596, 596, 597, 597, 598,
598, 598, 599, 599, 599, 599, 599, 600, 601, 601, 601, 602, 602,
602, 604, 605, 605, 605, 606, 606, 627, 627, 633, 633, 634, 634
), Genus = structure(c(9L, 8L, 6L, 8L, 2L, 6L, 11L, 12L, 4L,
8L, 6L, 11L, 8L, 6L, 6L, 6L, 2L, 6L, 3L, 6L, 6L, 6L, 8L, 3L,
6L, 12L, 3L, 6L, 6L, 8L, 6L, 6L, 7L, 6L, 6L, 6L, 6L, 6L, 6L,
6L, 11L, 6L, 12L, 6L, 3L, 6L, 8L, 6L, 6L, 12L, 6L, 3L, 6L, 11L,
12L, 11L, 12L, 6L, 11L, 6L, 7L, 12L, 11L, 6L, 12L, 6L, 6L, 9L,
8L, 8L, 9L, 9L, 8L, 12L, 12L, 8L, 10L, 11L, 2L, 8L, 8L, 10L,
11L, 7L, 8L, 9L, 8L, 9L, 8L, 10L, 8L, 9L, 10L, 2L, 5L, 2L, 2L,
10L), .Label = c("", "Apodemus", "Columba", "Fringilla", "Homo",
"Meles", "Muntiacus", "Oryctolagus", "Phasianus", "Sciurus",
"Turdus", "Vulpes"), class = "factor")), row.names = c(NA, 98L
), class = "data.frame")
Моя цель - создать функцию, которая проходит через этот фрейм данных, чтобы извлечь присутствие каждого рода в каждый день захвата камеры и вставить как присутствие (то есть 1) в новый фрейм данных, который имеет следующий формат (количество строк для CamDays) 635):
CamDays Phasianus Oryctolagus Meles Apodemus Turdus Vulpes Fringilla Columba Muntiacus Sciurus Homo
1 0 0 0 0 0 0 0 0 0 0 0 0
2 1 0 0 0 0 0 0 0 0 0 0 0
3 2 0 0 0 0 0 0 0 0 0 0 0
Я бы хотел, чтобы в новом фрейме данных каждый род имел значение 1, если он присутствует в конкретном Cam_Trap_Days, а остальные роды остались равными 0. Пример ниже Вот как бы я хотел, чтобы это выглядело (если бы на CamDay 0 присутствовали только Phasianus и Oryctolagus).
CamDays Phasianus Oryctolagus Meles Apodemus Turdus Vulpes Fringilla Columba Muntiacus Sciurus Homo
1 0 1 1 0 0 0 0 0 0 0 0 0
Заранее спасибо за вашу помощь !!