Я пытался провести некоторый динамический c анализ сети, и я обнаружил, что языковые пакеты R могут пригодиться в этом, поэтому я попытался использовать его, но столкнулся с множеством трудностей:
- У меня есть файлы ребер, которые я скачал с networkrepository.com, которые содержат ребра и их вес. все файлы представляют состояние графика каждый день. пример файлов: 1 2 44 1 3 56 1 6 34 2 3 56 2 7 65
- Мне удалось поместить каждый из файлов в график с пакетом igraph и преобразовать его в сеть, используя функцию asNetwok из пакета intergraph, но кажется, что я теряю вес, поэтому есть ли как я могу положить его обратно в сеть.
- Наконец, я попытался собрать все сети в одну сеть Dynami c, используя функцию networkDynami c из пакета networkDynami c, но он возвращает ошибка в файле vertices.pid, поэтому я хочу знать, есть ли способ поместить имена вершин в файлы ребер в качестве требуемого pid
library(igraph)
path <- '../Ants'
files <- list.files(path=path)
library(comprehenr)
nl <- to_list(for (i in files) read.table(paste0(path,"/",i), col.names = c("V1", "V2", "weight"), sep=" "))
netlist <- to_list(for (df in nl) graph_from_data_frame(df, directed = FALSE))
is_weight <- to_list(for (g in netlist) is_weighted(g))
direc <- to_list(for (g in netlist) is_directed(g))
library(network)
netlist <- to_list(for (g in netlist) asNetwork(g, attrmap=attrmap()))
library(networkDynamic)
dn <- networkDynamic(network.list=netlist, create.TEAs = T)