network

centrality

Beschreibung

Berechnet die Zentralitätsmetriken eines Graphen. Diese Aktion bietet eine Vielzahl von Metriken, um die Bedeutung oder den Einfluss von Knoten in einem Netzwerk zu quantifizieren, wie z.B. Grad-, Zwischen-, Nähe- und Eigenvektor-Zentralität. Sie ist grundlegend für das Verständnis von Netzwerkstrukturen und die Identifizierung von Schlüsselakteuren.

network.centrality <result=results> <status=rc> / <auth="BOTH" | "UNWEIGHT" | "WEIGHT">, <between="BOTH" | "UNWEIGHT" | "WEIGHT">, <betweenNorm=TRUE | FALSE>, <close="BOTH" | "UNWEIGHT" | "WEIGHT">, <closeNoPath="DIAMETER" | "HARMONIC" | "NNODES" | "ZERO">, <clusteringCoefficient=TRUE | FALSE>, <degree="BOTH" | "UNWEIGHT" | "WEIGHT">, <deterministic=TRUE | FALSE>, <direction="DIRECTED" | "UNDIRECTED">, <display={...}>, <distributed=TRUE | FALSE>, <eigen="BOTH" | "UNWEIGHT" | "WEIGHT">, <eigenAlgorithm="AUTOMATIC" | "JACOBIDAVIDSON" | "POWER">, <eigenMaxIters=integer>, <graph=integer>, <hub="BOTH" | "UNWEIGHT" | "WEIGHT">, <indexOffset=integer>, <influence="BOTH" | "UNWEIGHT" | "WEIGHT">, <links={...}>, <linksVar={...}>, <logFreqTime=integer>, <logLevel="AGGRESSIVE" | "BASIC" | "MODERATE" | "NONE">, <multiLinks=TRUE | FALSE>, <nodes={...}>, <nodesVar={...}>, <nThreads=integer>, <outGraphList={...}>, <outLinks={...}>, <outNodes={...}>, <outputTables={...}>, <pageRank="BOTH" | "UNWEIGHT" | "WEIGHT">, <pageRankAlpha=double>, <pageRankTolerance=double>, <samplePercent=double>, <selfLinks=TRUE | FALSE>, <standardizedLabels=TRUE | FALSE>, <standardizedLabelsOut=TRUE | FALSE>;
Einstellungen
ParameterBeschreibung
authGibt an, wie die Autoritätszentralität berechnet werden soll.
betweenGibt an, wie die Zwischenzentralität berechnet werden soll.
betweenNormWenn auf True gesetzt, normalisiert die Berechnung der Zwischenzentralität.
closeGibt an, wie die Nähezentralität berechnet werden soll.
closeNoPathGibt eine Methode zur Berücksichtigung der kürzesten Pfaddistanz zwischen zwei Knoten an, wenn kein Pfad existiert (nicht verbundene Knoten).
clusteringCoefficientWenn auf True gesetzt, berechnet den Knoten-Clusterkoeffizienten.
degreeGibt an, wie die Gradzentralität berechnet werden soll.
deterministicWenn auf True gesetzt, stellt sicher, dass jeder Aufruf (mit derselben Maschinenkonfiguration und Parametereinstellungen) dasselbe Endergebnis erzeugt.
directionGibt an, ob der Eingabegraph als gerichtet oder ungerichtet betrachtet werden soll.
displayGibt eine Liste von Ergebnistabellen an, die zur Anzeige an den Client gesendet werden sollen.
distributedWenn auf True gesetzt, wird ein verteilter Graph verwendet.
eigenGibt an, wie die Eigenvektor-Zentralität berechnet werden soll.
eigenAlgorithmGibt den Algorithmus an, der bei der Berechnung von Zentralitätsmetriken verwendet werden soll, die das Lösen von Eigensystemen erfordern.
eigenMaxItersGibt die maximale Anzahl von Iterationen für Eigenvektorberechnungen an, um die Berechnungszeit bei langsamer Konvergenz zu begrenzen.
graphGibt den zu verwendenden In-Memory-Graphen an.
hubGibt an, wie die Hub-Zentralität berechnet werden soll.
indexOffsetGibt den Index-Offset für Bezeichner in den Log- und Ergebnisausgabetabellen an.
influenceGibt an, wie die Einflusszentralität berechnet werden soll.
linksGibt die Eingabedatentabelle an, die die Graphen-Link-Informationen enthält.
linksVarGibt die Datenvariablennamen für die Link-Tabelle an.
logFreqTimeSteuert die Frequenz n (in Sekunden) für die Anzeige von Iterationsprotokollen für einige Algorithmen.
logLevelSteuert die Menge der im SAS-Log angezeigten Informationen.
multiLinksWenn auf True gesetzt, werden Mehrfachverbindungen beim Lesen eines Eingabegraphen berücksichtigt.
nodesGibt die Eingabedatentabelle an, die die Graphen-Knoten-Informationen enthält.
nodesVarGibt die Datenvariablennamen für die Knotentabelle an.
nThreadsGibt die maximale Anzahl von Threads an, die für die Multithread-Verarbeitung verwendet werden sollen.
outGraphListGibt die Ausgabedatentabelle an, die zusammenfassende Informationen über In-Memory-Graphen enthalten soll.
outLinksGibt die Ausgabedatentabelle an, die die Graphen-Link-Informationen zusammen mit allen Ergebnissen der Algorithmen enthält, die Metriken für Links berechnen.
outNodesGibt die Ausgabedatentabelle an, die die Graphen-Knoten-Informationen zusammen mit allen Ergebnissen der Algorithmen enthält, die Metriken für Knoten berechnen.
outputTablesListet die Namen der Ergebnistabellen auf, die als CAS-Tabellen auf dem Server gespeichert werden sollen.
pageRankGibt an, wie die PageRank-Zentralität berechnet werden soll.
pageRankAlphaGibt den Dämpfungsfaktor für den PageRank-Algorithmus an.
pageRankToleranceGibt die Konvergenztoleranz für den PageRank-Algorithmus an.
samplePercentGibt den Prozentsatz der Quellknoten an, die für die ungefähre Zwischenzentralitätsberechnung abgetastet werden sollen.
selfLinksWenn auf True gesetzt, werden Selbstverknüpfungen beim Lesen eines Eingabegraphen berücksichtigt.
standardizedLabelsWenn auf True gesetzt, gibt an, dass die Eingabegraphendaten in einem standardisierten Format vorliegen.
standardizedLabelsOutWenn auf True gesetzt, fordert an, dass die Ausgabegraphendaten ein standardisiertes Format enthalten.
Erstellung von Beispieldaten

Dieses Beispiel erstellt eine CAS-Tabelle 'mycas.Links', die die Verbindungen eines einfachen Graphen darstellt. Diese Tabelle wird in den folgenden Beispielen zur Berechnung von Zentralitätsmetriken verwendet.

Kopiert!
1DATA mycas.Links;
2 INFILE DATALINES delimiter=',';
3 INPUT from $ to $ weight;
4 DATALINES;
5A,B,1
6A,C,1
7A,D,1
8B,C,1
9B,D,2
10C,D,1
11C,E,1
12D,E,1
13;
14RUN;

Beispiele

Dieses Beispiel berechnet die ungewichteten Zentralitätsmaße (Grad, Nähe, Zwischenzentralität) für den Graphen, der in 'mycas.Links' definiert ist. Die Ergebnisse werden in der Tabelle 'mycas.OutNodes' gespeichert.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 network.centrality /
3 links={name="Links"}
4 outNodes={name="OutNodes", replace=true}
5 degree="UNWEIGHT"
6 close="UNWEIGHT"
7 between="UNWEIGHT"
8 direction="UNDIRECTED";
9RUN;
10QUIT;
Ergebnis :
Die Tabelle 'mycas.OutNodes' wird erstellt und enthält die Zentralitätswerte für jeden Knoten im Graphen. Zum Beispiel wird Knoten 'C' einen hohen Grad- und Zwischenzentralitätswert haben, da er ein zentraler Verbindungspunkt ist.

Dieses Beispiel berechnet verschiedene gewichtete Zentralitätsmaße für einen gerichteten Graphen. Es berechnet die gewichtete Einflusszentralität, die PageRank-Zentralität mit einem Dämpfungsfaktor von 0,85 und die Eigenvektor-Zentralität. Die Ergebnisse werden in der Tabelle 'mycas.OutNodesDirected' ausgegeben.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 network.centrality /
3 links={name="Links"}
4 outNodes={name="OutNodesDirected", replace=true}
5 direction="DIRECTED"
6 influence="WEIGHT"
7 pageRank="WEIGHT"
8 pageRankAlpha=0.85
9 eigen="WEIGHT";
10RUN;
11QUIT;
Ergebnis :
Die Ausgabetabelle 'mycas.OutNodesDirected' enthält die berechneten gewichteten Zentralitätswerte. Die PageRank-Werte zeigen die Bedeutung der Knoten basierend auf den eingehenden gewichteten Links, während die Einflusszentralität die ausgehende Konnektivität misst.

FAQ

Was bewirkt die `centrality`-Aktion?
Welche Arten von Zentralitätsmetriken können mit dieser Aktion berechnet werden?
Wie kann ich die Richtung des Graphen für die Analyse festlegen?
Wie geht die Aktion mit nicht verbundenen Knoten bei der Berechnung der Closeness-Zentralität um?
Welche Algorithmen stehen für die Berechnung der Eigenvektor-Zentralität zur Verfügung?
Ist es möglich, die Betweenness-Zentralität zu normalisieren?
Was ist der Hauptzweck der `centrality`-Aktion im Network Action Set?
Welche spezifischen Zentralitätsmetriken kann ich mit dieser Aktion berechnen?
Wie gebe ich an, ob mein Graph gerichtet oder ungerichtet ist?
Kann die Aktion sowohl gewichtete als auch ungewichtete Graphen verarbeiten?
Wie wird die Closeness-Zentralität für Knoten in nicht zusammenhängenden Graphen behandelt?
Wie kann ich die Ergebnisse der Zentralitätsberechnungen speichern?
Ist es möglich, eine approximative Betweenness-Zentralität für große Graphen zu berechnen?