« Restructurer un tableau de données dyadiques » : différence entre les versions
m (Sunny Avry a déplacé la page Restructurer un tableau de données dyadiques avec Python vers Restructurer un tableau de données dyadiques) |
Aucun résumé des modifications |
||
(8 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 6 : | Ligne 6 : | ||
|prérequis=Python | |prérequis=Python | ||
}} | }} | ||
Ce script nécessite python3+ et la librairie pandas. Il permet de passer d'un tableau de données de dyades structurées par individus à une structure par dyades. | |||
Pour installer pandas à partir de pip dans l'invite de commande/terminal : <source>python -m pip install –upgrade pandas</source> | |||
<br> | |||
Structure individuelle : | Structure individuelle : | ||
Ligne 26 : | Ligne 29 : | ||
<source lang="python">os.chdir('path')</source> | <source lang="python">os.chdir('path')</source> | ||
<b>Préciser le nom de votre fichier .csv</b> | <b>Préciser le nom de votre fichier .csv. Le fichier .csv doit être sauvegardé avec un encodage utf-8 pour que les caractères accentués soient pris en compte</b> | ||
<source lang="python">df1 = pd.read_csv('fichier.csv',sep=';')</source> | <source lang="python">df1 = pd.read_csv('fichier.csv',sep=';')</source> | ||
Ligne 32 : | Ligne 35 : | ||
<source lang="python">data = df1.drop(['Dyade','Sujet','Sexe','Condition'], axis = 1)</source> | <source lang="python">data = df1.drop(['Dyade','Sujet','Sexe','Condition'], axis = 1)</source> | ||
<b> | <b>Mettre les noms de colonnes dans une liste</b> | ||
<source lang="python">variables = data.columns</source> | <source lang="python">variables = data.columns</source> | ||
Ligne 38 : | Ligne 41 : | ||
<source lang="python">new_data = pd.DataFrame()</source> | <source lang="python">new_data = pd.DataFrame()</source> | ||
<b>Pour chaque colonne, mettre les valeur paires dans p1 et impaires dans p2. Attribuer le même index à chaque colonne. Ajouter les colonnes renommées dans le nouveau tableau de données | <b>Pour chaque colonne, mettre les valeur paires dans p1 et impaires dans p2. Attribuer le même index à chaque colonne. Ajouter les colonnes renommées dans le nouveau tableau de données</b> | ||
<source lang="python">for i in variables: | <source lang="python">for i in variables: |
Dernière version du 16 novembre 2018 à 14:26
Restructurer un tableau de données dyadiques | |
---|---|
⚐ Terminé | ☸ intermédiaire |
⚒ 2018/11/16 |
Ce script nécessite python3+ et la librairie pandas. Il permet de passer d'un tableau de données de dyades structurées par individus à une structure par dyades.
Pour installer pandas à partir de pip dans l'invite de commande/terminal :
python -m pip install –upgrade pandas
Structure individuelle :
Structure dyadique :
Code
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import pandas as pd
Spécifier le chemin d'accès de votre dossier
os.chdir('path')
Préciser le nom de votre fichier .csv. Le fichier .csv doit être sauvegardé avec un encodage utf-8 pour que les caractères accentués soient pris en compte
df1 = pd.read_csv('fichier.csv',sep=';')
Supprimer les colonnes pour lesquelles vous ne souhaitez pas restructurer les données
data = df1.drop(['Dyade','Sujet','Sexe','Condition'], axis = 1)
Mettre les noms de colonnes dans une liste
variables = data.columns
Créer un nouveau tableau de données
new_data = pd.DataFrame()
Pour chaque colonne, mettre les valeur paires dans p1 et impaires dans p2. Attribuer le même index à chaque colonne. Ajouter les colonnes renommées dans le nouveau tableau de données
for i in variables:
p1 = data[i].iloc[::2]
p1.index = range(1,len(p1)+1)
p2 = data[i].iloc[1::2]
p2.index = range(1,len(p2)+1)
v = i
v1 = i + '_p1'
v2 = i + '_p2'
new_data[v1] = p1
new_data[v2] = p2
Exporter le .csv restructuré
new_data.to_csv('out.csv',sep=';')