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
auth Gibt an, wie die Autoritätszentralität berechnet werden soll.
between Gibt an, wie die Zwischenzentralität berechnet werden soll.
betweenNorm Wenn auf True gesetzt, normalisiert die Berechnung der Zwischenzentralität.
close Gibt an, wie die Nähezentralität berechnet werden soll.
closeNoPath Gibt eine Methode zur Berücksichtigung der kürzesten Pfaddistanz zwischen zwei Knoten an, wenn kein Pfad existiert (nicht verbundene Knoten).
clusteringCoefficient Wenn auf True gesetzt, berechnet den Knoten-Clusterkoeffizienten.
degree Gibt an, wie die Gradzentralität berechnet werden soll.
deterministic Wenn auf True gesetzt, stellt sicher, dass jeder Aufruf (mit derselben Maschinenkonfiguration und Parametereinstellungen) dasselbe Endergebnis erzeugt.
direction Gibt an, ob der Eingabegraph als gerichtet oder ungerichtet betrachtet werden soll.
display Gibt eine Liste von Ergebnistabellen an, die zur Anzeige an den Client gesendet werden sollen.
distributed Wenn auf True gesetzt, wird ein verteilter Graph verwendet.
eigen Gibt an, wie die Eigenvektor-Zentralität berechnet werden soll.
eigenAlgorithm Gibt den Algorithmus an, der bei der Berechnung von Zentralitätsmetriken verwendet werden soll, die das Lösen von Eigensystemen erfordern.
eigenMaxIters Gibt die maximale Anzahl von Iterationen für Eigenvektorberechnungen an, um die Berechnungszeit bei langsamer Konvergenz zu begrenzen.
graph Gibt den zu verwendenden In-Memory-Graphen an.
hub Gibt an, wie die Hub-Zentralität berechnet werden soll.
indexOffset Gibt den Index-Offset für Bezeichner in den Log- und Ergebnisausgabetabellen an.
influence Gibt an, wie die Einflusszentralität berechnet werden soll.
links Gibt die Eingabedatentabelle an, die die Graphen-Link-Informationen enthält.
linksVar Gibt die Datenvariablennamen für die Link-Tabelle an.
logFreqTime Steuert die Frequenz n (in Sekunden) für die Anzeige von Iterationsprotokollen für einige Algorithmen.
logLevel Steuert die Menge der im SAS-Log angezeigten Informationen.
multiLinks Wenn auf True gesetzt, werden Mehrfachverbindungen beim Lesen eines Eingabegraphen berücksichtigt.
nodes Gibt die Eingabedatentabelle an, die die Graphen-Knoten-Informationen enthält.
nodesVar Gibt die Datenvariablennamen für die Knotentabelle an.
nThreads Gibt die maximale Anzahl von Threads an, die für die Multithread-Verarbeitung verwendet werden sollen.
outGraphList Gibt die Ausgabedatentabelle an, die zusammenfassende Informationen über In-Memory-Graphen enthalten soll.
outLinks Gibt die Ausgabedatentabelle an, die die Graphen-Link-Informationen zusammen mit allen Ergebnissen der Algorithmen enthält, die Metriken für Links berechnen.
outNodes Gibt die Ausgabedatentabelle an, die die Graphen-Knoten-Informationen zusammen mit allen Ergebnissen der Algorithmen enthält, die Metriken für Knoten berechnen.
outputTables Listet die Namen der Ergebnistabellen auf, die als CAS-Tabellen auf dem Server gespeichert werden sollen.
pageRank Gibt an, wie die PageRank-Zentralität berechnet werden soll.
pageRankAlpha Gibt den Dämpfungsfaktor für den PageRank-Algorithmus an.
pageRankTolerance Gibt die Konvergenztoleranz für den PageRank-Algorithmus an.
samplePercent Gibt den Prozentsatz der Quellknoten an, die für die ungefähre Zwischenzentralitätsberechnung abgetastet werden sollen.
selfLinks Wenn auf True gesetzt, werden Selbstverknüpfungen beim Lesen eines Eingabegraphen berücksichtigt.
standardizedLabels Wenn auf True gesetzt, gibt an, dass die Eingabegraphendaten in einem standardisierten Format vorliegen.
standardizedLabelsOut Wenn 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?

Zugehörige Szenarien

Anwendungsfall
Identifizierung von Key Opinion Leadern in sozialen Netzwerken

Eine Marketingagentur möchte die einflussreichsten Nutzer in einem sozialen Netzwerk identifizieren, um eine virale Kampagne zu starten. Das Ziel ist es, Nutzer mit vielen direk...

Anwendungsfall
Stresstest der Netzwerktopologie und Engpassanalyse

Ein Telekommunikationsanbieter muss kritische Knotenpunkte (Single Points of Failure) in seinem Glasfasernetzwerk identifizieren. Da das Netzwerk sehr groß ist, wird eine approx...

Anwendungsfall
Geldwäsche-Erkennung in fragmentierten Transaktionsdaten

Eine Bank analysiert Transaktionsdaten auf Geldwäschemuster. Das Netzwerk besteht aus mehreren isolierten Gruppen (nicht verbundenen Komponenten) und enthält Selbstüberweisungen...