Я хотел бы преобразовать некоторые реберные списки в матрицу смежности. Тем не менее, я сталкиваюсь с различными осложнениями. Мой набор данных состоит из 27 участников, которые могут или не могут иметь ничью (взвешенную между 1-5 и направленной) в течение 3 моментов времени.R: Как преобразовать взвешенные краевые списки в матрицу смежности?
Это означает, например, что для т = 1, у меня есть список края, как это:
countryA,countryB,tie
AUH,GMY,2
AUH,RUS,1
AUH,UKG,4
BOL,PER,5
BRA,ARG,1
PAR,UKG,4
И т = 2, У меня есть список края, как это:
countryA,countryB,tie
ARG,AUH,1
AUH,UKG,4
BOL,PER,5
BRA,ARG,1
PAR,UKG,4
RUS,UKG,2
Проблема в том, что для каждого периода я хотел бы иметь матрицу 27x27. Это означает, что также все актеры, которые не могут делиться ничьей с кем-либо еще, включаются на каждый период времени. В принципе, я хотел бы иметь что-то подобное для всех 3-х периодов (обратите внимание, что, в идеале, запятые ушли):
0 0 0 3 2 1 4
0 0 4 2 1 0 0
0 0 0 0 3 4 4
0 0 0 0 2 1 4
0 0 4 2 0 0 0
0 0 0 0 3 0 4
0 3 4 2 0 0 0
Конечно, я уже проверил различные посты на форуме, помогают сайты и тому подобное. Но я не мог понять, как я должен это делать. Я расстроен.
Спасибо! Я хотел ответить в этом поле «комментарий», но мой комментарий был слишком длинным, поэтому я ответил в теме. – farbetjan
Хорошо, мой «ответ» был удален. Но на самом деле я не ввел его в качестве факторов. Тем не менее, даже если вы используете свой код 'ttx <- lapply (tt, function (x) {x [, 1: 2] <- lapply (x [, 1: 2], factor, levels = groups); x}) 'не работал. Он выдает ошибку «Ошибка в FUN (X [[1L]], ...): группы объектов« не найдены ». С наилучшими пожеланиями! – farbetjan
@farbetjan Я вижу. Да. Я изменил имя переменной в одном месте, а не другое. Я исправил код выше. Извини за это. – MrFlick