У меня есть два больших списка в той же структуре примеров игрушек, показанных в этом вопросе.
dput (глава (песни1)):
list(FEB_GAMES = c(GAME1 = c("Stan", "Kenny", "Cartman", "Kyle",
"Butters"), GAME2 = c("Kenny", "Cartman", "Kyle", "Butters")),
MAR_GAMES = c(GAME3 = c("Stan", "Kenny", "Cartman", "Butters"
), GAME4 = c("Kenny", "Cartman", "Kyle", "Butters")))
dput (руководитель (песни2)):
list(first = c("Stan", "Kenny", "Cartman", "Kyle", "Butters",
"Kenny", "Cartman", "Kyle", "Butters"), second = c("Stan", "Kenny",
"Cartman", "Wendy", "Ike"), third = c("Randy", "Randy", "Randy",
"Randy"))
Я хотел бы превратить эти два списка в один большой data.frame / matrix. Имена строк будут из списка1 (ИГРА1, ИГРА2, ИГРА3, ИГРА4). Имена столбцов будут именами списков 2 (первый, второй, третий). Информация в матрице будет целым числом, которое указывает на количество раз, когда общий символ найден в обоих списках. например GAME1xfirst содержит 9 общих символов, а GAME1xthird содержит 0.
Вывод будет выглядеть так:
first second third
GAME1 9 3 0
GAME2 8 2 0
GAME3 8 3 0
GAME4 8 2 0
Таким образом, значения в [1,1] будут суммой, в которой общий символ будет найден как в списке GAME1 из списка 1, так и в первом списке, найденном в списке 2.
Примечание. Списки в списках 1 и 2 имеют различное количество значений.