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

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Windows, avec un W majuscule, tire son nom de sa caractéristique principale: Windows, avec un w minuscule. Se familiariser avec Windows signifie apprendre à ouvrir, fermer, redimensionner, déplacer et basculer entre les fenêtres, ce qui est la clé pour jongler avec succès avec plusieurs activités. Chaque programme que vous exécutez occupe sa propre fenêtre. Une fenêtre peut occuper une partie de ...

Comment accepter ou rejeter les cookies dans Safari - dummies

Comment accepter ou rejeter les cookies dans Safari - dummies

Un cookie est un petit fichier qu'un site Web enregistre automatiquement sur le disque dur de votre Mac. Il contient des informations, telles que vos préférences ou votre date de naissance, que le site utilisera lors de vos prochaines visites. Dans Mac OS X Snow Leopard, Safari vous permet de choisir d'accepter ou non tous les cookies ...

Le choix des éditeurs

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Pour créer une boîte ou une ligne dans QuarkXPress plus complexe qu'un simple rectangle, ovale ou starburst, vous entrez dans le domaine du chemin de Bézier. Si vous avez utilisé l'outil Plume dans Adobe Illustrator ou Photoshop, vous comprenez déjà les chemins de Bézier. Il faut un peu de pratique et un esprit détendu ...

Création d'un rapport avec Crystal Reports 10 - témoins

Création d'un rapport avec Crystal Reports 10 - témoins

Lorsque vous démarrez Crystal Reports 10, généralement l'une des trois choses suivantes: créer un rapport, modifier un rapport ou exécuter un rapport sur les données de votre base de données. Les rapports prennent des données à partir d'une base de données, les traitent, les formatent et les affichent ensuite sur une imprimante, un écran d'ordinateur ou un site Web. Crystal Reports ...

Traitant des commentaires Javadoc dans Eclipse - mannequins

Traitant des commentaires Javadoc dans Eclipse - mannequins

Lorsque vous utilisez Eclipse pour écrire du code Java, n'oubliez pas de éditez les commentaires de Javadoc (les choses qui commencent par / **). Vous pouvez ajouter des informations utiles lorsque vous modifiez les commentaires Javadoc et lorsque vous les modifiez, l'aide au code d'Eclipse propose des suggestions. N'oubliez pas ces astuces lorsque vous modifiez vos commentaires Javadoc: Ajouter un commentaire Javadoc: ...

Le choix des éditeurs

Les connexions cachées sur le Nikon D5600 - les nuls

Les connexions cachées sur le Nikon D5600 - les nuls

Ouvrent les couvercles sur les côtés gauche et droit du Nikon D5600 caméra, et vous verrez plusieurs ports de connexions cachées. Les ports de connexion suivants sont indiqués sur cette image: Terminal d'accessoires: ce terminal accepte les accessoires suivants: câble déclencheur à distance Nikon MC-DC2; Télécommandes sans fil WR-1 et WR-R10; et les unités GPS GP-1 / GP-1A. I ...

Les connexions cachées sur votre Nikon D5200 - les nuls

Les connexions cachées sur votre Nikon D5200 - les nuls

ÉParpillés sur l'extérieur de votre appareil photo sont nombreuses commandes que vous utilisez pour changer d'image -prend des paramètres, revoir et modifier vos photos, et effectuer diverses autres opérations. Caché sous le couvercle sur le côté gauche de la caméra, vous trouverez les quatre ports de connexion suivants, étiquetés dans cette figure: Borne accessoire: Vous pouvez brancher le Nikon en option ...

Des boutons et autres commandes du Nikon D7500 - mannequins

Des boutons et autres commandes du Nikon D7500 - mannequins

C'est génial d'avoir une carte pour le boutons et commandes sur votre appareil photo, mais ce n'est pas beaucoup d'aide si vous ne pouvez pas vous rappeler quel bouton appuyer sur quand (et pourquoi). Alors, voici un aperçu des fonctions des contrôles les plus importants. (Certains contrôles ont des fonctions supplémentaires pendant certaines opérations, mais la table ...