-3
votes

Manipulation des données TUPLE pour la visualisation pathérique

J'ai les données dans .txt code> séparés par des espaces et des pauses de ligne. Voici certains d'entre eux.

t.add_edge('1', '2', 1082040961)
t.add_edge('3', '4', 1082155839)
t.add_edge('5', '2', 1082414391)
t.add_edge('6', '7', 1082439619)
t.add_edge('8', '7', 1082439756)


0 commentaires

4 Réponses :


2
votes

Vous pouvez parcourir le jeu de données de la manière suivante:

with open(filename.txt) as f:
    for line in f:
        data = line.strip().split()
        t.add_edge(data[0], data[1], int(data[2])


2 commentaires

't.add_edge (données [0], données [1], int (données [2])' Cette pièce codant dans des guillemets simples pour les données dans les première et seconde colonnes?


oui, data [0] , data [1] et data [2] sont toutes des cordes et donc les deux premières peuvent être transmises à la une fonction.



0
votes

Vous pouvez également utiliser la bibliothèque Pandas. XXX


4 commentaires

Pourquoi marquez-vous la chaîne dans chemin avec un préfixe r ? Ce préfixe marque le début d'une expression régulière.


Pour éviter une erreur unicode. Par exemple, mon chemin est "c: \ users \ users \ berka \ dektop \ dene.txt" et \ b provoque une erreur unicode.


@accdias - le r ne signifie pas que c'est une expression régulière, cela signifie qu'il s'agit d'une chaîne brute, qui sont souvent utilisées pour des expressions régulières, mais dans ce cas, il suffit de ne pas avoir à échapper manuellement à la " `Dans le chemin du nom de fichier.


@thesilkworm, Oh! Je vois. Merci pour l'explication. Je l'ai toujours utilisé en pensant que c'était un marqueur pour une expression régulière et que maintenant, cela fait beaucoup plus de sens.



0
votes

Je ne sais pas si c'est ce dont vous avez besoin, mais il y a une fonction lecture_file dans la bibliothèque pathpy. Il permet de construire un nouvel objet temporalnetwork à partir d'un fichier de format similaire au vôtre. Cochez cette case commettre .


0 commentaires

0
votes

Cela peut aider aussi:

print [t.add_edge(str(data[0]),str(data[2]),int(data[4:-1])) for data in open("filename.txt") if data.strip().split(" ")]


0 commentaires