Zuhause Persönliche Finanzen Arbeiten mit Graph Data in Python für Data Science - Dummies

Arbeiten mit Graph Data in Python für Data Science - Dummies

Inhaltsverzeichnis:

Video: Data Analysis with Python for Excel Users 2024

Video: Data Analysis with Python for Excel Users 2024
Anonim

Die meisten Datenwissenschaftler müssen irgendwann mit Graphdaten arbeiten. Python bietet Ihnen diese Funktionalität. Stellen Sie sich Datenpunkte vor, die mit anderen Datenpunkten verbunden sind, z. B. wie eine Webseite über Hyperlinks mit einer anderen Webseite verbunden ist. Jeder dieser Datenpunkte ist ein Knoten . Die Knoten verbinden sich über Links miteinander.

Nicht jeder Knoten ist mit jedem anderen Knoten verbunden, daher werden die Knotenverbindungen wichtig. Durch die Analyse der Knoten und ihrer Verknüpfungen können Sie alle Arten von interessanten Aufgaben in der Datenwissenschaft ausführen, wie z. B. die Definition des besten Weges, um von der Arbeit über Straßen und Autobahnen nach Hause zu gelangen.

Die Adjazenzmatrix verstehen

Eine Adjazenzmatrix repräsentiert die Verbindungen zwischen Knoten eines Graphen. Wenn eine Verbindung zwischen einem Knoten und einem anderen Knoten besteht, zeigt die Matrix diesen Wert als einen Wert größer als 0 an. Die genaue Darstellung von Verbindungen in der Matrix hängt davon ab, ob der Graph gerichtet ist (wo die Richtung der Verbindung von Bedeutung ist) oder ungerichtet ist.

Ein Problem bei vielen Online-Beispielen ist, dass die Autoren sie zu Erklärungszwecken einfach halten. Allerdings sind Grafiken aus der realen Welt oft immens und lassen sich nicht einfach durch Visualisierung analysieren. Denken Sie nur an die Anzahl der Knotenpunkte, die selbst eine kleine Stadt bei der Betrachtung von Straßenkreuzungen hätte. Viele andere Diagramme sind viel größer, und wenn man sie einfach betrachtet, werden sie niemals interessante Muster offenbaren. Datenwissenschaftler nennen das Problem bei der Darstellung komplexer Graphen mit Hilfe einer Adjazenzmatrix a hairball .

Ein Schlüssel zur Analyse von Adjazenzmatrizen besteht darin, sie auf bestimmte Arten zu sortieren. Beispielsweise könnten Sie die Daten nach anderen Eigenschaften als den tatsächlichen Verbindungen sortieren. Ein Diagramm der Straßenverbindungen könnte das Datum enthalten, an dem die Straße zuletzt mit den Daten gepflastert wurde, sodass Sie nach Mustern suchen können, die jemanden anhand der am besten reparierten Straßen leiten. Kurz gesagt, wird es nützlich, die Graphendaten nützlich zu machen, indem die Organisation dieser Daten auf spezifische Weise manipuliert wird.

Verwenden von NetworkX-Grundlagen

Das Arbeiten mit Diagrammen kann schwierig werden, wenn Sie den gesamten Code von Grund auf neu schreiben müssen. Glücklicherweise ist es mit dem NetworkX-Paket für Python einfach, die Struktur, Dynamik und Funktionen komplexer Netzwerke (oder Graphen) zu erstellen, zu manipulieren und zu studieren. Sie können das Paket auch verwenden, um mit Digraphen und Multigraphen zu arbeiten.

Das Hauptaugenmerk von NetworkX liegt auf der Vermeidung der gesamten Problematik von Haarballen.Die Verwendung einfacher Aufrufe verbirgt einen Großteil der Komplexität der Arbeit mit Diagrammen und Adjazenzmatrizen aus der Sicht. Das folgende Beispiel zeigt, wie eine einfache Adjazenzmatrix aus einem der von NetworkX bereitgestellten Diagramme erstellt wird:

importiert networkx als nx G = nx. cycle_graph (10) A = nx. adjacency_matrix (G) print (A. todense ())

Das Beispiel beginnt mit dem Importieren des erforderlichen Pakets. Es erstellt dann ein Diagramm mit der Vorlage cycle_graph (). Der Graph enthält zehn Knoten. Durch Aufruf von adjacency_matrix () wird die Adjazenzmatrix aus dem Diagramm erstellt. Der letzte Schritt besteht darin, die Ausgabe als Matrix zu drucken, wie hier gezeigt:

[[0 1 0 0 0 0 0 0 0 1] [1 0 1 0 0 0 0 0 0 0] [0 1 0 1 0 0 0 0 0 0] [0 0 1 0 1 0 0 0 0 0] [0 0 0 1 0 1 0 0 0 0] [0 0 0 0 1 0 1 0 0 0] [0 0 0 0 0 1 0 1 0 0] [0 0 0 0 0 0 1 0 1 0] [0 0 0 0 0 0 0 1 0 1] [1 0 0 0 0 0 0 0 1 0]]

Sie müssen nicht Erstellen Sie Ihre eigene Grafik zu Testzwecken von Grund auf neu. Die NetworkX-Site dokumentiert eine Reihe von Standard-Diagrammtypen, die Sie verwenden können und die alle in IPython verfügbar sind.

Es ist interessant zu sehen, wie der Graph aussieht, nachdem Sie ihn erzeugt haben. Der folgende Code zeigt das Diagramm für Sie an.

Das ursprüngliche Diagramm wird gezeichnet.
importieren Sie Matplotlib. Pyplot als Plt nx. draw_networkx (G) plt. show ()

Das Diagramm zeigt, dass Sie eine Kante zwischen den Knoten 1 und 5 hinzufügen können. Hier ist der Code, der benötigt wird, um diese Aufgabe mit der Funktion add_edge () auszuführen.

Zeichnen der Grafikaddition.
G. add_edge (1, 5) nx. draw_networkx (G) plt. zeige ()
Arbeiten mit Graph Data in Python für Data Science - Dummies

Die Wahl des Herausgebers

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Bei der Arbeit mit IPv6-Adressen kann es viel Zeit in Anspruch nehmen. schreibe deine Adressen - immerhin sind sie 128 Bit lang. Um das Leben einfacher zu machen, gibt es einige Regeln, die Sie verwenden können, um diese Schreibweise zu verdichten: Führende Nullen in der Adresse sind optional. Für einen Adressblock wäre also 0A45 gleich A45, ...

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkadressierungsarchitektur unterteilt den Adressraum für Internet Protocol Version 4 (IPv4 ) in fünf Adressklassen. Jede Klasse, die in den ersten vier Bits der Adresse codiert ist, definiert entweder eine andere Netzwerkgröße, d.h. e. Anzahl der Hosts für Unicast-Adressen (Klassen A, B, C) oder Multicast-Netzwerk (Klasse D). Die fünfte Klasse (E) address ...

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

In TCP / IP- und UDP-Netzwerken ist ein Port ein Endpunkt eine logische Verbindung. Die Portnummer gibt an, um welchen Port es sich handelt. Port 80 wird beispielsweise für HTTP-Datenverkehr verwendet. Wenn Sie einen Befehl wie netstat -n unter Microsoft Windows oder Linux verwenden, sehen Sie eine Auflistung der lokalen Adressen ...

Die Wahl des Herausgebers

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Wenn Sie ein Anfänger auf dem Dashboard sind Automatisierung in Excel ist es unwahrscheinlich, dass Sie den VBA-Code (Visual Basic für Applikationen) von Hand schreiben können, um Makros zu erstellen. Ohne vollständige Kenntnis des Objektmodells und der Syntax von Excel wäre das Schreiben des benötigten Codes für die meisten Anfänger unmöglich. Hier können Sie ein Makro aufzeichnen ...

Excel-Formelberechnungsmodi - Dummys

Excel-Formelberechnungsmodi - Dummys

Standardmäßig ist Excel so eingestellt, dass es automatisch neu berechnet wird. Wenn Sie eine der Zellen ändern, auf die in einer bestimmten Formel verwiesen wird, berechnet Excel diese Formel automatisch neu, sodass ein korrektes Ergebnis basierend auf den Änderungen in den Zellbezügen zurückgegeben wird. Wenn die Formel, die neu berechnet wird, auch als Zellenreferenz in anderen verwendet wird ...

Excel Formelfehler - Dummies

Excel Formelfehler - Dummies

Es ist nicht immer glatt, wenn Sie mit Excel-Formeln arbeiten. Manchmal gibt eine Formel einen Fehlerwert anstelle des erwarteten Werts zurück. Excel hilft Ihnen, das Problem zu identifizieren, indem Sie einen von sieben Fehlerwerten zurückgeben: # DIV / 0! , # N / A, #NAME? , #NULL! , #NUM! , #REF! und #WERT! , erklärt in der folgenden Liste: # DIV / 0! : ...

Die Wahl des Herausgebers

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

, Wenn Sie mit der Verwendung und Veröffentlichung beginnen Bei Google+ möchten Sie gelegentlich Links und Bilder teilen, die Beiträge anderer freigeben, ihre Beiträge kommentieren und andere in Ihren eigenen Google+ Beiträgen erwähnen. Vielleicht fragen Sie sich auch, wie Sie andere dazu bringen, Ihre eigenen Beiträge öfter zu kommentieren. Teilen von Links und Bildern in Google+ So geben Sie ein ...

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Beiträge auf Google+ sind ganz einfach und können posten Text, Links, Fotos, Videos und sogar Ihren aktuellen Standort. Der schwierigste Teil des Beitrags auf Google+ besteht darin, auszuwählen, wen Sie Ihren Beitrag sehen möchten. Google+ verwendet Ihre Kreise, um festzulegen, wer Ihre Beiträge sehen kann. Kreise sind etwas einfacher als Listen, weil ...

Taggen von Personen in Google+ Fotos - Dummies

Taggen von Personen in Google+ Fotos - Dummies

Sie können Personen in Ihren Kreisen auf jedem Foto auf Google+ markieren. Wenn Sie eine Person in einem Foto taggen, wird diese Person über ihre Google+ Benachrichtigungen benachrichtigt. Sie können dann das Tag entfernen oder genehmigen, und das Foto wird mit dem Tag des Namens dieser Person darin angezeigt. Um jemanden zu markieren, ...