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

Wie man die Socialcast Mobile App benutzt - dummies

Wie man die Socialcast Mobile App benutzt - dummies

Sogar die stoischste Anwendung wie Microsoft Excel hat ein begleitendes Smartphone-App, natürlich hat Socialcast auch eine. Wenn es so wäre, wäre es nicht wirklich eine Ausrede zu sagen, dass Socialcast nicht sehr sozial wäre, wenn du es nicht mit in die große Welt außerhalb deiner Zelle mitnehmen könntest. Die mobile App ...

Wie man das App Verzeichnis von Yammer benutzt - dummies

Wie man das App Verzeichnis von Yammer benutzt - dummies

Sie haben vielleicht gehört: "Es gibt eine App dafür. "Nun, das ist der Fall bei Yammer, der als einzige Ressource für die Vernetzung am Arbeitsplatz funktioniert. Aber Yammer bietet Ihnen auch eine Menge Apps, mit denen Sie Ihr Arbeitsleben noch einfacher gestalten können. Es gibt zwei Möglichkeiten, auf das App-Verzeichnis zuzugreifen: Option ...

So ​​verwenden Sie die Yammer-Analysetools - Dummies

So ​​verwenden Sie die Yammer-Analysetools - Dummies

Yammer rühmt sich damit als "führendes soziales Unternehmensnetzwerk für Unternehmen" um die Arbeit intelligenter und schneller zu erledigen. "Woher weißt du, ob das wahr ist? Ein guter Weg, um zu sehen, wie es für Sie funktioniert, ist die Analyse von Yammer. Wie greifen Sie auf diese großartigen Tools zu? Es ist einfach. Log ...

Die Wahl des Herausgebers

Die Evolution von Distributed Computing für Big Data - Dummies

Die Evolution von Distributed Computing für Big Data - Dummies

Hinter allen wichtigen Trends des letzten Jahrzehnts, einschließlich Serviceorientierung, Cloud Computing, Virtualisierung und Big Data, ist eine grundlegende Technologie namens Distributed Computing. Einfach gesagt, ohne die Verteilung von Datenverarbeitung wäre keiner dieser Fortschritte möglich. Distributed Computing ist eine Technik, mit der einzelne Computer über geografische Gebiete hinweg miteinander vernetzt werden können, so als ob ...

Drei Anbieter mit Data Mining-Produkten - Dummies

Drei Anbieter mit Data Mining-Produkten - Dummies

Es gibt mehrere Anbieter, die Data-Mining-Produkte verkaufen, die Sie vielleicht in Betracht ziehen möchten. Verwenden Sie mit Ihrem Data Warehouse. Hier sind drei, die eine Überlegung wert sind. Microsoft Microsoft hat das serverseitige Data Mining mit Microsoft SQL Server 2005 eingeführt. Obwohl es nicht so ausgereift und ausgeklügelt wie SAS und SPSS ist, hat Microsoft im Laufe der Zeit seine Fähigkeit bewiesen ...

Grundlagen der Big-Data-Integration - Dummies

Grundlagen der Big-Data-Integration - Dummies

Die fundamentalen Elemente der Big-Data-Plattform verwalten Daten auf neue Weise verglichen mit der traditionellen relationalen Datenbank. Dies liegt daran, dass Skalierbarkeit und hohe Leistung erforderlich sind, um sowohl strukturierte als auch unstrukturierte Daten zu verwalten. Komponenten des Big-Data-Ökosystems von Hadoop bis NoSQL DB, MongoDB, Cassandra, ...

Die Wahl des Herausgebers

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

Die meisten modernen Smartphones sind Wi-Fi-fähig. In ein lokales Netzwerk können Sie Spotify-Tracks mithilfe von Wi-Fi auf Ihr Telefon streamen. Sie können Spotify Mobile zu Hause und über Wi-Fi-Netzwerke in Hotels und Cafés problemlos nutzen - Sie müssen nur sicherstellen, dass Sie angemeldet und verbunden sind. ...

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert, kann Auswirkungen auf den Festplattenspeicher Ihres Computers haben. Internetverbindung. Spotify funktioniert anders als viele andere Online-Musikdienste, weil es auf mehrere Arten angewiesen ist, um Ihnen reibungslos Musik ohne Verzögerungen zu liefern. In Computing-Sprechen, das Maß der Verzögerung zwischen Anfordern eines Songs und Hören es ...

So ​​erreichen Sie Spotify Support - Dummies

So ​​erreichen Sie Spotify Support - Dummies

Es kann vorkommen, dass Sie eine kleine Hilfe beim Navigieren und Verwenden von Spotify benötigen von deinen Spotify Freunden. Sie können jederzeit Support @ spotify per E-Mail senden. com mit Ihrer Frage oder melden Sie sich bei Twitter an und senden Sie einen Tweet an @spotify. Stellen Sie sicher, dass Sie alle Informationen einschließen, die dem Support-Team helfen könnten, einschließlich Ihres Benutzernamens, damit sie ...