Ich möchte eine Funktion "f" in R erstellen, die in einem data.frame von Kanten zwischen Individuen und einer Person (genannt A2 zum Beispiel) und die zurückgibt ein weiterer Datenrahmen mit nur "Vorfahren" und "Kindern" von A2 und auch Vorfahren von Vorfahren und Kindern von Kindern!Funktion in R, die Vorfahren und Kinder in einem Netzwerk zurückgibt
Zu meiner komplizierten Frage veranschaulichen:
library(visNetwork)
nodes <- data.frame(id = c(paste0("A",1:5),paste0("B",1:3)),
label = c(paste0("A",1:5),paste0("B",1:3)))
edges <- data.frame(from = c("A1","A1","A2","A3","A4","B1","B2"),
to = c("A2","A3","A4","A4","A5","B3","B3"))
visNetwork(nodes, edges) %>%
visNodes(font = list(size=45)) %>%
visHierarchicalLayout(direction = "LR", levelSeparation = 500)
In diesem Beispiel enthält die data.frame 2 verschiedene unabhängige Netzwerke: 1 Netzwerk mit "A" s und einem anderen mit "B" s .
Ich möchte eine Funktion f (data = Kanten, indiv = "A2") implementieren, die eine data.frame kehrt die alle Zeilen data.frame Kanten mit dem Netz von "A" s betroffenen enthält:
f (Kanten, „A2“) zurückkehren würde dieser Extrakt von data.frame
head(f(edges,"A2"))
# from to
#1 A1 A2
#2 A1 A3
#3 A2 A4
#4 A3 A4
#5 A4 A5
Kanten ich hoffe, es ist klar genug für Sie, mir zu helfen.
Vielen Dank!
Was haben Sie versucht? Was ist der Algorithmus, den Sie implementieren möchten? –
Nicht sicher, genau zu verstehen, was Sie wollen, aber das Ziel ist in der Tat, für jeden einzelnen seine Vorfahren und Kinder und die Kinder ihrer Kinder und Vorfahren der Vorfahren zurückzukehren. Und bevor ich Zeit (sicherlich Stunden) damit verbrachte, Code zu schreiben, wollte ich wissen, ob es eine wohlbekannte Funktion/ein Paket dafür gibt, weil es mir scheint, dass es eine ziemlich einfache Frage für Leute (im Gegensatz zu mir) sein könnte arbeite mit Netzwerken. Aber ich habe im Internet noch nichts befriedigendes gefunden (nur für Bäume), also wollte ich noch mehr Spezialisten fragen! Danke – antuki
Ich bin kein Grafik-Analyst, aber vielleicht könnte dies helfen: http://igraph.org/r/doc/components.html – romles