Моя общая проблема заключается в том, что я теряю имена/метки вершин (не уверен в правильном слове здесь) при создании графа с помощью iGraph.
У меня есть список ребер IC_edge_sub двудольной сети, который выглядит следующим образом:
new_individualID new_companyID
1 <NA> 10024354c
3 10069415i 2020225c
4 10069415i 16020347c
5 10069272i 2020225c
6 10069272i 16020347c
7 10069274i 2020225c
Затем я создаю элемент графа:
IC_projected_graphs <- bipartite.projection(IC_twomode, types =
is.bipartite(IC_twomode)$type)
Затем сворачиваю его, чтобы идентифицировать только связи между идентификаторами компаний
IC_projected_graphs <- bipartite.projection(IC_twomode, types =
is.bipartite(IC_twomode)$type)
И затем получаю смежность матрица:
CC_matrix_IC_based <- get.adjacency(CC_graph_IC_based); CC_matrix_IC_based
В iGraph нумерация узлов начинается с нуля, и, следовательно, нумерация матриц тоже начинается с нуля. Однако вместо этого мне теперь нужен «new_companyID», как указано во 2-м столбце списка краев в возможной матрице CC_matrix_IC_based.
Можете ли вы помочь мне, как использовать информацию из исходного списка краев для добавления имен строк и столбцов в возможную матрицу смежности?
Я погуглил и искал поток стека, но не смог найти рабочий ответ. Большое спасибо за вашу помощь