IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Fractionner un DATAFRAME


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 21
    Par défaut Fractionner un DATAFRAME
    Bonjour

    J'ai une seule colonne dans un data frame et je voulais fractionner cette colonne en plusieurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    nom
    valeur
    variation
    nom
    valeur 
    variation
    nom
    valeur 
    variation

    je voulais ainsi avoir 3 lignes et plusieurs colonnes...

    Auriez-vous une idée ?
    Merci

  2. #2
    Membre émérite

    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    662
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 662
    Par défaut
    Ouais j'ai bien une idée, mais sale:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import pandas as pd
     
    s = pd.Series(['roger', 0, 1, 'bobby', 1, 2, 'stan', 3, 4])
     
    vals = s.values
    d = {i: {'nom': vals[3*i + 0], 'valeur': vals[3*i + 1], 'variation': vals[3*i + 2]} for i in range(3)}
    df = pd.DataFrame.from_dict(d, orient='index')
    Ok, c'est pas rapide et pas propre. Ce serait étonnant que Pandas n'ait pas déjà quelque chose pour faire ça.

    Ju

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 21
    Par défaut
    Ah oui pas mal, partant d'un Dataframe ça me donne un résultat pas très esthétique ahah mais ça fonctionne ! je vais étayer l'idée sur mon cas, mais c'est vrai que c'est chelou qu'il n'y ait pas de "fractionner" chez pandas...

    Merci bien en tous cas

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    .reshape devrait savoir le faire (mais les tableaux pandas ne sont pas des tableaux numpy).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Etat - Fractionner un nombre pour l'impression
    Par migaleb dans le forum Access
    Réponses: 2
    Dernier message: 06/12/2005, 20h56
  2. Réponses: 4
    Dernier message: 20/11/2005, 21h46
  3. Fractionnement de bdd
    Par Virgile59 dans le forum Access
    Réponses: 2
    Dernier message: 10/11/2005, 10h16
  4. Fractionner BDD
    Par Virgile59 dans le forum Access
    Réponses: 4
    Dernier message: 31/10/2005, 15h40
  5. Réponses: 1
    Dernier message: 22/09/2005, 16h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo