Wie erstelle ich eine gewichtete Adjazenzliste / Matrix aus einer Kantenliste?

Mein Problem ist sehr einfach: Ich muss eine Adjazenzliste / Matrix aus einer Kantenliste erstellen.

Ich habe eine Kantenliste in einem csv-Dokument mit column1 = node1 und column2 = node2 gespeichert und möchte diese in eine gewichtete Adjazenzliste oder eine gewichtete Adjazenzmatrix konvertieren.

Genauer gesagt sehen die Daten wie folgt aus - wobei die Zahlen einfach Knoten-IDs sind:

node1,node2
551,548
510,512
548,553
505,504
510,512
552,543
512,510
512,510
551,548
548,543
543,547
543,548
548,543
548,542

Irgendwelche Tipps, wie man die Umwandlung von dieser in eine gewichtete Adjazenzliste / Matrix erreicht? Dies ist, wie ich beschlossen habe, es zuvor ohne Erfolg zu tun (mit freundlicher Genehmigung vonDai Shizuka):

dat=read.csv(file.choose(),header=TRUE) # choose an edgelist in .csv file format
el=as.matrix(dat) # coerces the data into a two-column matrix format that igraph likes
el[,1]=as.character(el[,1])
el[,2]=as.character(el[,2])
g=graph.edgelist(el,directed=FALSE) # turns the edgelist into a 'graph object'

Vielen Dank!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage