Ouvrir un fichier csv et mettre en forme données décimales

Résolu/Fermé
pzorba75 Messages postés 70 Date d'inscription lundi 30 décembre 2013 Statut Membre Dernière intervention 22 mars 2022 - 1 août 2019 à 16:26
pzorba75 Messages postés 70 Date d'inscription lundi 30 décembre 2013 Statut Membre Dernière intervention 22 mars 2022 - 2 août 2019 à 13:42
Bonjour,
Je débute en Python 3.6 avec IDLE ou PyScripter et je viens de créer un fichier au format csv, le séparateur de colonnes est la virgule. Les données numériques placées, par Python via str(donnee), sont écrites avec un point décimal.
Quand j'ouvre le fichier créé, toutes les colonnes sont bien mises en place, seule la colonne avec des données numériques et le point décimal n'est pas reconnue par Libre Office comme "numérique" et apparaît donc comme du texte, empêchant tout calcul sur ces données.
J'ai cherché à plein d'endroits mais je ne trouve pas comment indiquer un séparateur décimal pour que Libre Office ouvre et mette correctement le tableau en place.
Je ne suis pas trop "geek" et cherche des solutions simples pour un problème assez classique.
D'avance merci de l'aide apportée et bonnes vacances à tous ceux qui peuvent en profiter.
Pierre



Configuration: Windows 10 à jour, Logiciels libres Open Office, MikTex, Chrome et quelques outils basiques.

2 réponses

OOoForum Messages postés 3861 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 28 septembre 2022 975
2 août 2019 à 12:00
Sous OpenOffice, nul besoin de remplacer.
Lors de l'importation, le dialogue permet de paramétrer le point en virgule.
https://forum.openoffice.org/fr/forum/download/file.php?id=3203



.
2
pzorba75 Messages postés 70 Date d'inscription lundi 30 décembre 2013 Statut Membre Dernière intervention 22 mars 2022 1
2 août 2019 à 13:42
Super, je n'avais jamais pensé qu'un menu déroulant offrait ces choix pour chacune des colonnes. Bien plus simple qu'une édition avec mise à jour du fichier.
0
Utilisateur anonyme
Modifié le 1 août 2019 à 16:51
Bonjour,
Sur Excel on a la possibilité d'utiliser la fonction Menu/Rechercher/Remplacer, on remplace le point par une virgule.
Je suppose que sur Libre Office c'est pareil. Vous pourriez essayer.
1
pzorba75 Messages postés 70 Date d'inscription lundi 30 décembre 2013 Statut Membre Dernière intervention 22 mars 2022 1
1 août 2019 à 17:06
Effectivement, en sélectionnant les colonnes où se trouvent des nombres avec des points décimaux, par Editer et remplacer on peut remplacer les points par des virgules et , les données peuvent ensuite être traitées dans des calculs. C'est un peu manuel et laborieux mais faisable.
Je suis surpris que Python ne sache pas faire un fichier au format qui s'ouvre en un clic avec un logiciel libre comme Libre Office.
À défaut d'autre solution, j''adopterai cette procédure.
Merci pour l'aide.
Pierre
0
Utilisateur anonyme
1 août 2019 à 18:10
A mon avis s'est la solution la moins compliquée, comme vous demandiez.
Peut être pourriez vous aussi jeter un oeuil dans les paramètres de Windows/Panneau de configuration/Langue et région/Modifier le format la date etc.
0
pzorba75 Messages postés 70 Date d'inscription lundi 30 décembre 2013 Statut Membre Dernière intervention 22 mars 2022 1
1 août 2019 à 19:18
Pour le moment, je me contente du Editer-Remplacer que je peux faire assez facilement avec Libre Office. Je n'ai pas trop envie de bricoler les paramètres de Windows à travers le Panneau de Configuration dont je ne connais pas les conséquences sur les applications et données que j'utilise.
0
Utilisateur anonyme
1 août 2019 à 20:26
Ok, c'est plus prudent, quoique les modifications soient très facilement réversible...
Bonne continuation.
0