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 2025

Video: Data Analysis with Python for Excel Users 2025
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

Wie man Dateien in C ++ kopiert - Dummies

Wie man Dateien in C ++ kopiert - Dummies

Ah, eine Datei kopieren - etwas so einfaches, es passiert alles Zeit. Kopiere diese Datei dorthin; Kopieren Sie diese Datei hier. Aber was genau passiert, wenn Sie eine Datei kopieren? Sie erstellen tatsächlich eine neue Datei und füllen diese mit dem gleichen Inhalt wie die Originaldatei. Und wie machst du das? Nun, ...

Anleitung zum Erstellen eines Verzeichnisses in C ++ - Dummies

Anleitung zum Erstellen eines Verzeichnisses in C ++ - Dummies

Wenn Sie ein Verzeichnis erstellen möchten, können Sie das MKdir Funktion. Wenn die Funktion das Verzeichnis für Sie erstellen kann, gibt sie eine 0 zurück. Andernfalls wird ein Wert ungleich Null zurückgegeben. (Wenn Sie es ausführen, erhalten Sie eine -1, aber Ihre beste Wette - immer - ist es, gegen 0 zu testen.) Hier ist einige ...

Wie man eine einfache mathematische Vorlage in C ++ - Dummies

Wie man eine einfache mathematische Vorlage in C ++ - Dummies

Mit einer mathematischen Vorlage erstellt, die man normalerweise benötigt Zugriff auf eine Vielzahl von Berechnungen, aber nur jeweils eine oder zwei dieser Berechnungen. Zum Beispiel, wenn jemand Ihre Hypothek berechnet, muss er die Amortisationsrechnung nicht kennen. Die Person kann jedoch die Amortisationsberechnung benötigen, wenn Sie mit ...

Die Wahl des Herausgebers

ASVAB: Lesen für die Studie - Dummies

ASVAB: Lesen für die Studie - Dummies

Lesen für die Zwecke des Studiums der ASVAB ist eine andere Art des Lesens. Leseverständnis erfordert nur, dass Sie Informationen lange genug im Kurzzeitgedächtnis speichern, um einige Sekunden später eine Frage zu beantworten. Zum Lesen für die Zwecke des Studiums müssen Sie wichtige Informationen in Ihr Langzeitgedächtnis einpflegen - ...

ASVAB Mathematik Wissenspraxis: Ungleichungen - Dummies

ASVAB Mathematik Wissenspraxis: Ungleichungen - Dummies

Als wäre Algebra nicht anspruchsvoll genug, einige Fragen zur Der Subtest Mathematik auf dem ASVAB wird auch eine Ungleichheit einwerfen - nur um sicherzustellen, dass Sie aufmerksam sind. Wie erkennst du eine Ungleichheit? Halten Sie Ausschau nach Fragen mit mehr als oder weniger als Symbolen oder nach Graphen, die eine Zahlenlinie mit einem ...

ASVAB Mathematische Wissenspraxis: Fraktionen - Dummies

ASVAB Mathematische Wissenspraxis: Fraktionen - Dummies

Der Subtest Mathematikwissen auf dem ASVAB wird Fragen beinhalten, die Sie fragen mit Teilen eines Ganzen oder Fraktionen arbeiten. Diese Fragen können das Multiplizieren, Dividieren, Addieren, Subtrahieren und Konvertieren von Brüchen beinhalten, ähnlich den folgenden Übungsfragen. Übungsfragen Welche Fraktionen sind nicht gleichwertig? Gegeben einfach den Ausdruck. Antworten und Erklärungen Das richtige ...

Die Wahl des Herausgebers

Hinzufügen von Flash-Audio- und Videodateien in Dreamweaver - Dummies

Hinzufügen von Flash-Audio- und Videodateien in Dreamweaver - Dummies

Adobe besitzt sowohl Flash als auch Dreamweaver Daher finden Sie großartige Unterstützung für Flash-Dateien in Dreamweaver. Das Dialogfeld "FLV einfügen" erleichtert das Festlegen von Parametern für Flash. Dreamweaver erkennt sogar automatisch die Größe von Flash-Videodateien. Sie können Flash auch zum Erstellen und Einfügen von Audiodateien verwenden, wobei nur der Player angezeigt wird.

Einstellen von Bildhelligkeit und -kontrast in Dreamweaver - Dummies

Einstellen von Bildhelligkeit und -kontrast in Dreamweaver - Dummies

Dreamweaver bietet Werkzeuge zum Erstellen von Bildern Einstellungen, einschließlich der Helligkeit und des Kontrastes. Durch die Anpassung der Bildhelligkeit können Sie die Gesamtlichtmenge in einem Bild ändern. Kontrast steuert den Unterschied zwischen hellen und dunklen Bereichen eines Bildes. Wenn Sie die Dreamweaver-Bearbeitungswerkzeuge verwenden, wird das Bild dauerhaft geändert, wenn die Seite ...

Hinzufügen von Bildern zu Ihrer Website in Dreamweaver - Dummies

Hinzufügen von Bildern zu Ihrer Website in Dreamweaver - Dummies

Wenn Sie Ihrer Website ein Bild hinzufügen, erscheint anfangs fast magisch, weil der Prozess mit Dreamweaver so einfach ist. Die Herausforderung bei Webgrafiken besteht darin, sie nicht zu Ihren Seiten hinzuzufügen, sondern gut aussehende Bilder zu erstellen, die schnell im Browser Ihres Viewers geladen werden. Sie benötigen ein anderes Programm wie Photoshop, Photoshop Elements oder Fireworks, um ...