Ich bin neu in der Programmierung in R und nicht sehr gut, so jetzt habe ich eine Frage zu meinem Projekt. Ich verbringe viel Zeit damit, einen bestimmten Code über "delete.edges" zu suchen. Ich möchte bestimmte Kanten aus meinem Graph löschen, solche mit dem Gewicht 0. Ich habe einen Txt gemacht, in dem ich 3 Spalten habe. der erste und der zweite sind die Ecken kai der dritte ist das Gewicht. Ich schrieb 0, um keine Verbindung, 1,2,3 usw. für die Verbindung zu definieren. Mein Diagramm ist gewichtet. Die Handlung gab mir alle möglichen Kanten, einschließlich der mit Gewicht = 0 und jetzt muss ich sie löschen und eine neue Handlung machen.löschen bestimmte Kanten in R
0
A
Antwort
3
Ich machte eine zufällige Grafik und dann zufällig Gewicht von 0,1,2,3 zugewiesen. Wenn Sie Kanten löschen möchten, tun Sie dies auf folgende Weise:
library(igraph)
g<-erdos.renyi.game(100,p=.5)
E(g)$weight <- sample(0:3, length(E(g)),T)
delete.edges(g, which(E(g)$weight==0))
Ich benutze Sigma, Matrix und Gitter. – maraki
Wenn Sie die Kantenliste erstellen, schließen Sie die Zeilen mit dem Gewicht = 0 nicht ein, wenn Sie das Diagramm erstellen. – jalapic
Code anzeigen; Machen Sie ein [reproduzierbares Beispiel] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). Es wird einfacher sein, Ihnen auf diese Weise zu helfen. – MrFlick