Zuhause Persönliche Finanzen Wie man Python benutzt, um Graphen für Data Science zu entwickeln - Dummies

Wie man Python benutzt, um Graphen für Data Science zu entwickeln - Dummies

Inhaltsverzeichnis:

Video: How I Learned to Code in Less Than 2 Months 2025

Video: How I Learned to Code in Less Than 2 Months 2025
Anonim

Diagramme sind nützlich für Datenwissenschaftler. Ein Graph ist eine Darstellung von Daten, die die Verbindungen zwischen Datenpunkten unter Verwendung von Linien in Pythopn zeigen. Der Zweck besteht darin, zu zeigen, dass sich einige Datenpunkte auf andere Datenpunkte beziehen, jedoch nicht auf alle Datenpunkte, die im Diagramm erscheinen.

Denken Sie an eine Karte eines U-Bahn-Systems. Jede der Stationen verbindet sich mit anderen Stationen, aber keine einzige Station verbindet sich mit allen Stationen im U-Bahn-System. Graphen sind wegen ihrer Verwendung in der Social-Media-Analyse ein beliebtes Thema in der Datenwissenschaft. Bei der Durchführung von Social-Media-Analysen stellen Sie Beziehungsnetzwerke wie Freunde oder Geschäftsverbindungen von sozialen Netzwerken wie Facebook, Google+, Twitter oder LinkedIn dar und analysieren diese.

Die beiden gebräuchlichsten Darstellungen von Graphen sind ungerichtet , wobei der Graph einfach die Linien zwischen den Datenelementen zeigt und auf verweist, wobei Pfeile, die der Linie hinzugefügt wurden, angezeigt werden. diese Daten fließen in eine bestimmte Richtung. Betrachten Sie zum Beispiel eine Darstellung eines Wassersystems. Das Wasser würde in den meisten Fällen nur in eine Richtung fließen, so dass Sie einen gerichteten Graphen verwenden könnten, um nicht nur die Verbindungen zwischen Quellen und Zielen für das Wasser darzustellen, sondern auch die Wasserrichtung mithilfe von Pfeilen anzuzeigen.

Entwicklung von ungerichteten Graphen

Ein ungerichteter Graph zeigt einfach Verbindungen zwischen Knoten. Der Ausgang liefert keine Richtung von einem Knoten zum nächsten. Wenn zum Beispiel eine Verbindung zwischen Webseiten hergestellt wird, wird keine Richtung impliziert. Im folgenden Beispiel wird gezeigt, wie ein ungerichteter Graph erstellt wird.

importiere networkx als nx import matplotlib. pyplot als plt G = nx. Graph () H = nx. Graph () G. add_node (1) G. add_nodes_from ([2, 3]) G. add_nodes_from (Bereich (4, 7)) H. add_node (7) G. add_nodes_from (H) G. add_edge (1, 2) G. add_edge (1, 1) G. add_edges_from ([(2, 3), (3, 6), (4, 6), (5, 6)]) H. add_edges_from ([(4, 7), (5, 7), (6, 7)]) G. add_edges_from (H. Kanten ()) nx. draw_networkx (G) plt. show ()

In diesem Beispiel wird das Diagramm mit einer Reihe verschiedener Techniken erstellt. Es beginnt mit dem Importieren des Networkx-Pakets. Um ein neues ungerichtetes Diagramm zu erstellen, ruft der Code den Graph () - Konstruktor auf, der eine Reihe von Eingabeargumenten als Attribute verwenden kann. Sie können jedoch einen perfekt verwendbaren Graphen erstellen, ohne Attribute zu verwenden. Dies ist in diesem Beispiel der Fall.

Der einfachste Weg zum Hinzufügen eines Knotens ist das Aufrufen von add_node () mit einer Knotennummer. Sie können mit add_nodes_from () auch eine Liste, ein Wörterbuch oder einen Bereich () von Knoten hinzufügen. In der Tat können Sie Knoten aus anderen Graphen importieren, wenn Sie möchten.

Auch wenn die im Beispiel verwendeten Knoten auf Zahlen basieren, müssen Sie keine Zahlen für Ihre Knoten verwenden. Ein Knoten kann einen einzelnen Buchstaben, eine Zeichenfolge oder sogar ein Datum verwenden. Knoten haben einige Einschränkungen. Beispielsweise können Sie keinen Knoten mit einem booleschen Wert erstellen.

Knoten haben zu Beginn keine Konnektivität. Sie müssen Verbindungen (Kanten) zwischen ihnen definieren. Um eine einzelne Kante hinzuzufügen, rufen Sie add_edge () mit den Nummern der Knoten auf, die Sie hinzufügen möchten. Wie bei Knoten können Sie add_edges_from () verwenden, um mehr als eine Kante mithilfe einer Liste, eines Wörterbuchs oder eines anderen Diagramms als Eingabe zu erstellen. Hier ist die Ausgabe von diesem Beispiel (Ihre Ausgabe kann leicht abweichen, sollte aber die gleichen Verbindungen haben).

Ungerichtete Graphen verbinden Knoten miteinander, um Muster zu bilden.

Entwickeln von gerichteten Graphen

Sie verwenden gerichtete Graphen, wenn Sie eine Richtung angeben müssen, z. B. von einem Startpunkt zu einem Endpunkt. Wenn Sie eine Karte erhalten, die Ihnen zeigt, wie Sie von einem bestimmten Punkt zu einem anderen gelangen, werden der Startknoten und der Endknoten als solche markiert und die Linien zwischen diesen Knoten (und allen Zwischenknoten) zeigen die Richtung an.

Deine Graphen müssen nicht langweilig sein. Sie können sie auf alle möglichen Arten verkleiden, so dass der Betrachter auf verschiedene Weise zusätzliche Informationen erhält. Beispielsweise können Sie benutzerdefinierte Beschriftungen erstellen, bestimmte Farben für bestimmte Knoten verwenden oder sich auf Farbe verlassen, um den Benutzern die Bedeutung ihrer Diagramme zu vermitteln.

Sie können auch die Kantenliniengewichtung ändern und andere Techniken verwenden, um einen bestimmten Pfad zwischen Knoten als den besseren zu markieren. Das folgende Beispiel zeigt viele (aber nicht alle) Möglichkeiten, wie Sie einen gerichteten Graphen verkleinern und interessanter machen können:

importiere networkx als nx import matplotlib. pyplot als plt G = nx. DiGraph () G. add_node (1) G. add_nodes_from ([2, 3]) G. add_nodes_from (Bereich (4, 6)) G. add_path ([6, 7, 8]) G. add_edge (1, 2) G. add_edges_from ([(1, 4), (4, 5), (2, 3), (3, 6), (5, 6)]) Farben = ['r', 'g', 'g', 'g', 'g', 'm', 'm', 'r'] etiketten = {1: 'Start', 2: '2', 3: '3', 4: '4', 5: '5', 6: '6', 7: '7', 8: 'Ende'} Größen = [800, 300, 300, 300, 300, 600, 300, 800] nx. draw_networkx (G, node_color = Farben, node_shape = "D", with_labels = True, labels = Labels, node_size = Größen) plt. show ()

Das Beispiel beginnt mit dem Erstellen eines Richtdiagramms mit dem DiGraph () - Konstruktor. Sie sollten beachten, dass das NetworkX-Paket auch die Graphentypen MultiGraph () und MultiDiGraph () unterstützt. Sehen Sie sich diese Liste aller Diagrammtypen an.

Das Hinzufügen von Knoten funktioniert ähnlich wie ein ungerichteter Graph. Sie können einzelne Knoten mit add_node () und mehreren Knoten mit add_nodes_from () hinzufügen. Mit dem Aufruf add_path () können Sie Knoten und Kanten gleichzeitig erstellen. Die Reihenfolge der Knoten im Aufruf ist wichtig. Der Fluss von einem Knoten zu einem anderen ist von links nach rechts in der Liste, die dem Anruf übergeben wird.

Das Hinzufügen von Kanten ist ähnlich wie das Arbeiten mit einem ungerichteten Graphen. Sie können add_edge () verwenden, um eine einzelne Kante hinzuzufügen, oder add_edges_from (), um mehrere Kanten gleichzeitig hinzuzufügen. Die Reihenfolge der Knotennummern ist jedoch wichtig.Der Fluss geht von dem linken Knoten zu dem rechten Knoten in jedem Paar.

In diesem Beispiel werden spezielle Knotenfarben, Beschriftungen, Formen (nur eine Form wird verwendet) und Größen für die Ausgabe hinzugefügt. Sie rufen immer noch draw_networkx () auf, um die Aufgabe auszuführen. Wenn Sie jedoch die angezeigten Parameter hinzufügen, ändert sich das Aussehen des Diagramms. Beachten Sie, dass Sie with_labels auf True setzen müssen, um die vom label-Parameter bereitgestellten Labels zu sehen. Hier ist die Ausgabe dieses Beispiels.

Verwenden Sie gerichtete Graphen, um die Richtung zwischen Knoten anzuzeigen.

Wie man Python benutzt, um Graphen für Data Science zu entwickeln - Dummies

Die Wahl des Herausgebers

Web Marketing: Warum Suchmaschinen existieren - Dummies

Web Marketing: Warum Suchmaschinen existieren - Dummies

Wenn Sie verstehen, warum Suchmaschinen existieren, können sie für Sie in Ihrem Web-Marketing-Geschäft arbeiten. Also, hier ist eine kurze Lektion, warum Suchmaschinen existieren und wie Sie sie nutzen können, um Geld zu verdienen. Suchmaschinen liefern Relevanz. Relevanz bedeutet, dass Besucher auf Suchergebnisse klicken und zufrieden sind mit ...

Was sind Tür- und Informationsseiten? - dummies

Was sind Tür- und Informationsseiten? - dummies

Eine Doorway-Seite wird nur als Zugang von einer Suchmaschine zu Ihrer Website erstellt. Doorway-Seiten werden manchmal als Gateway-Seiten und Geisterseiten bezeichnet. Die Idee besteht darin, hoch optimierte Seiten zu erstellen, die von Suchmaschinen aufgenommen und indiziert werden und die mit etwas Glück gut ranken und somit den Traffic auf eine ...

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Eine Weiterleitung ist das automatische Laden einer Seite ohne Benutzereingriff. Sie klicken auf einen Link, um eine Webseite in Ihren Browser zu laden, und innerhalb von Sekunden verschwindet die geladene Seite, und eine neue wird angezeigt. Designer erstellen häufig Seiten für Suchmaschinen - optimierte, schlüsselwortreiche Seiten -, die Besucher auf die ...

Die Wahl des Herausgebers

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

, Wenn Kunden wissen, dass sie direkt mit ein Geschäft in den sozialen Medien, können sie aus einer beliebigen Anzahl von Gründen mit ihnen in Verbindung treten. Aber sobald sie merken, dass ein Problem mit dem Kundenservice oder einer Produktfrage über einen einzigen Tweet oder Beitrag angesprochen werden kann, ist es wahrscheinlicher, dass sie mit dem Unternehmen Geschäfte machen.

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Die heutige Technologie verändert die Art und Weise, wie wir Geschäfte machen blitzschnell. Auch der Social-Media-Handel bewegt sich blitzschnell, aber durch die Beobachtung von Erwähnungen und Fragen an die Community können Sie einen Eindruck davon bekommen, wie Ihr Markt über bevorstehende Veränderungen denkt. Auch andere Posts können Ihnen helfen, kritisches Feedback aus der Öffentlichkeit zusammenzustellen ...

Manage Social Media Commerce mit HootSuite - dummies

Manage Social Media Commerce mit HootSuite - dummies

HootSuite ist ein Social Media Management System zur Umsetzung von Outreach und Überwachung in sozialen Netzwerken über ein einziges webbasiertes Dashboard. Für Unternehmen wird HootSuite am häufigsten von Social-Media-Teams mit mehreren Agenten verwendet, aber auch viele Einzelanwender mögen es. Wenn Sie auf der Suche nach einer robusten Plattform sind, die alles an einem Ort hält, ...

Die Wahl des Herausgebers

Die 5 Kornsterne der Mittelmeer - Dummies

Die 5 Kornsterne der Mittelmeer - Dummies

Die Mittelmeerdiät ist in der Praxis des Habens begründet ein Vollkorn zu jeder Mahlzeit. Und nein, das bedeutet nicht, eine ganze Platte Vollkornspaghetti mit Fleischsauce zum Abendessen zu essen. Stattdessen machen die Menschen im Mittelmeerraum ihr Getreide zur Beilage oder schaffen durch die Zugabe von magerem Eiweiß mehr Gleichgewicht ...

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Der Verzehr von sieben bis zehn Portionen Obst und Gemüse pro Tag, wie sie für die mediterrane Ernährung empfohlen werden, mag sehr viel erscheinen, aber es muss keine so große Herausforderung sein. Wenn Sie nicht die Früchte und das Gemüse lieben, die spezifisch mit der Mittelmeerdiät verbunden sind, ist das okay! Essen Sie jede Art von Obst oder Gemüse, die Sie ...

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Sie haben vielleicht gedacht, dass der Oregano und Basilikum in Ihrer Spaghetti-Sauce lieferte nur einen deutlichen italienischen oder mediterranen Geschmack, aber diese kleinen Kräuter sind Pflanzen, was bedeutet, dass sie alle Arten von gesundheitlichen Vorteilen haben, die einen großen Einfluss auf Ihre allgemeine Gesundheit haben können. Einfache Gewürze wie Ingwer und Oregano enthalten Phytochemikalien, ...