Accueil Finances personnelles Travailler avec Graph Data en Python pour Data Science - dummies

Travailler avec Graph Data en Python pour Data Science - dummies

Table des matières:

Vidéo: Formation Data science avec Python | Rappel sur l'environnement de travail 2025

Vidéo: Formation Data science avec Python | Rappel sur l'environnement de travail 2025
Anonim

La plupart des scientifiques doivent travailler avec des données graphiques à un moment donné. Python vous donne cette fonctionnalité. Imaginez des points de données connectés à d'autres points de données, tels que la façon dont une page Web est connectée à une autre page Web via des liens hypertexte. Chacun de ces points de données est un nœud . Les nœuds se connectent les uns aux autres en utilisant les liens .

Tous les nœuds ne sont pas liés à tous les autres nœuds, de sorte que les connexions aux nœuds deviennent importantes. En analysant les nœuds et leurs liens, vous pouvez effectuer toutes sortes de tâches intéressantes en science des données, telles que la définition de la meilleure façon d'aller du travail à votre domicile en utilisant les rues et les autoroutes.

Comprendre la matrice d'adjacence

Une matrice d'adjacence représente les connexions entre les nœuds d'un graphe. Lorsqu'il y a une connexion entre un nœud et un autre, la matrice l'indique comme une valeur supérieure à 0. La représentation précise des connexions dans la matrice dépend de la direction du graphique (où la direction de la connexion est importante) ou non dirigée.

Un problème avec de nombreux exemples en ligne est que les auteurs les gardent simples à des fins d'explication. Cependant, les graphiques du monde réel sont souvent immenses et défient l'analyse facile simplement par la visualisation. Pensez seulement au nombre de nœuds que même une petite ville aurait en considérant les intersections de rues. Beaucoup d'autres graphiques sont beaucoup plus grands, et simplement les regarder ne révélera jamais aucun modèle intéressant. Les scientifiques de données appellent le problème en présentant n'importe quel graphique complexe en utilisant une matrice d'adjacence hairball .

Une clé pour analyser les matrices d'adjacence consiste à les trier de façon spécifique. Par exemple, vous pouvez choisir de trier les données en fonction de propriétés autres que les connexions réelles. Un graphique des connexions de rues peut inclure la date à laquelle la rue a été pavée avec les données, ce qui vous permet de rechercher des modèles qui orientent quelqu'un en fonction des rues les mieux réparées. En bref, rendre les données de graphique utiles devient une manipulation de l'organisation de ces données de manière spécifique.

Utiliser les bases de NetworkX

Travailler avec des graphiques pourrait devenir difficile si vous deviez écrire tout le code à partir de zéro. Heureusement, le paquet NetworkX pour Python facilite la création, la manipulation et l'étude de la structure, de la dynamique et des fonctions de réseaux complexes (ou graphiques). Vous pouvez également utiliser le package pour travailler avec des digrammes et des multigraphes.

L'objectif principal de NetworkX est d'éviter tout le problème des boules de poils.L'utilisation d'appels simples cache une grande partie de la complexité de travailler avec des graphiques et des matrices d'adjacence à partir de la vue. L'exemple suivant montre comment créer une matrice d'adjacence de base à partir de l'un des graphiques fournis par NetworkX:

import networkx comme nx G = nx. cycle_graph (10) A = nx. adjacency_matrix (G) print (A. todense ())

L'exemple commence par l'importation du paquet requis. Il crée ensuite un graphique en utilisant le modèle cycle_graph (). Le graphique contient dix nœuds. L'appel de la fonction adjacency_matrix () crée la matrice d'adjacence à partir du graphique. La dernière étape consiste à imprimer la sortie sous forme de matrice, comme indiqué ici:

[[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 1 0]]

Vous n'êtes pas obligé de Construisez votre propre graphique à partir de zéro à des fins de test. Le site NetworkX documente un certain nombre de types de graphiques standard que vous pouvez utiliser, tous disponibles dans IPython.

Il est intéressant de voir à quoi ressemble le graphique après l'avoir généré. Le code suivant affiche le graphique pour vous.

Tracer le graphique d'origine.
import matplotlib. pyplot comme plt nx. draw_networkx (G) plt. show ()

Le graphique montre que vous pouvez ajouter une arête entre les nœuds 1 et 5. Voici le code nécessaire pour effectuer cette tâche à l'aide de la fonction add_edge ().

Tracer l'addition du graphique.
G. add_edge (1, 5) nx. draw_networkx (G) plt. Afficher ()
Travailler avec Graph Data en Python pour Data Science - dummies

Le choix des éditeurs

Principes de base du protocole de routage IP Multicast - dummies

Principes de base du protocole de routage IP Multicast - dummies

IP Le routage multicast est le routage du trafic multicast. La nature des données IP Multicast est telle qu'elle a ses propres problèmes de routage de réseau Cisco. Il existe quatre protocoles de multidiffusion principaux pris en charge par le Cisco IOS actuel. L'illustration vous montre approximativement où les protocoles sont utilisés; Ce qui suit est ...

Comment le protocole STP (Spanning Tree Protocol) gère les modifications du réseau - dummies

Comment le protocole STP (Spanning Tree Protocol) gère les modifications du réseau - dummies

Nouveau concentrateur ou passer à un réseau mappé STP (Spanning Tree Protocol)? Pour cet exemple, un concentrateur était connecté à un port sur les deux commutateurs 11: 99 et 77: 22. Un concentrateur était utilisé car il ne disposait pas d'une intelligence réseau. L'effet net est en fait le même que ...

Types de réseau local (LAN) - nuls

Types de réseau local (LAN) - nuls

Un WAN est un type de réseau local (LAN) . Un réseau local est un réseau privé généralement constitué d'une connexion réseau fiable, rapide et bien connectée. Les alternatives sur le framework LAN incluent CAN, MAN et WAN. Ces trois options de réseau sont illustrées ci-dessous: CAN Si vous utilisez le réseau LAN ...

Le choix des éditeurs

Bebo est l'application de médias sociaux pour vous? - les nuls

Bebo est l'application de médias sociaux pour vous? - les nuls

Comment savez-vous quel est le bon média social pour vous? La culture moderne devient de plus en plus dépendante des médias sociaux tels que Bebo, Facebook, Twitter et What'sApp, ainsi que de nombreux autres. Le questionnaire suivant vous aidera à déterminer si vous avez ou non ce qu'il faut pour être social sur le nouveau ...

Comment utiliser Bebo - dummies

Comment utiliser Bebo - dummies

Bebo, la nouvelle application des médias sociaux, est aussi facile à utiliser que C'est amusant à regarder. Vous pouvez obtenir cette nouvelle application sur Google Play Store et Apple App Store. Lancez Bebo et suivez les instructions à l'écran pour terminer le processus de création de compte. Après avoir téléchargé avec succès, ...

Le choix des éditeurs

Ce que vous pouvez trouver dans une barre latérale de blog - des mannequins

Ce que vous pouvez trouver dans une barre latérale de blog - des mannequins

La plupart des blogs contiennent du matériel de barre latérale. La plupart des blogs sont disposés en deux ou trois colonnes, et le contenu de la barre latérale apparaît généralement dans les deuxième et / ou troisième colonnes. Certains blogs n'ont pas de barres latérales, et sur d'autres blogs, vous pouvez découvrir des éléments supplémentaires au-delà de ce que vous voyez ici. Archives basées sur la date: Presque tous les blogs sont ...

Lorsqu'un réseau publicitaire est approprié pour votre blog maman - les mannequins

Lorsqu'un réseau publicitaire est approprié pour votre blog maman - les mannequins

Ne sont que quelques-unes modèles conflit en cours d'exécution des publicités avec vos meilleurs intérêts. C'est quand vous bloguez pour vendre vos propres produits ou pour promouvoir vos services professionnels. Même dans ce cas, il est toujours possible de diffuser des annonces sur ces blogs, surtout si les annonces font la promotion de produits et de services complémentaires et non concurrents. Mais si vous êtes ...

Quand maman blogue pour Swag is Okay - les mannequins

Quand maman blogue pour Swag is Okay - les mannequins

Dans certaines circonstances légitimes vous pouvez vous sentir travailler gratuitement vaut votre temps et la publicité que vous offrez à une marque. Cela peut être comparé à un stage non rémunéré. Si vous êtes stagiaire et que vous avez une excellente expérience de travail, alors c'est une entreprise précieuse. Si vous êtes stagiaire et que vous ne versez que du café et que vous livrez ...