
M1 Bio-informatique - TP 1 : Manipulation de tableaux, tests statistiques
Jean-Baptiste Lamy /
Le module Python pandas permet de manipuler des tableaux de donn´ees (appel´e tci-dessous) :
Tableau
Charger un fichier CSV t = pandas.read_table("fichier.csv ", sep = ",")
Enregistrer un fichier CSV t.to_csv("fichier.csv ", sep = ",")
Dimensions du tableau t.shape
Transposer le tableau t.T
Transposer = ´echanger les lignes et les colonnes.
Obtenir les noms des colonnes t.axes[1]
Obtenir les noms des lignes t.axes[0]
Colonnes
Extraire une colonne t.nom_de_colonne
t["nom_de_colonne "]
t.icol(num´ero_de_colonne )
Extraire de la colonne x `a la
colonne y
t.iloc[ : , x:y]
=>cr´ee un nouveau tableau
Extraire les colonnes x, y, z... t.iloc[ : , (x,y,z,...)]
Calculer la moyenne de chaque
colonne
t.mean()
Moyenne d’une colonne t.nom_de_colonne .mean()
M´ediane d’une colonne t.nom_de_colonne .median()
´
Ecart-type d’une colonne t.nom_de_colonne .std()
Ajouter une colonne t["nouveau_nom_de_colonne "] = valeurs
Supprimer une colonne del t["nom_de_colonne "]
Appliquer un logarithme sur
une colonne
t["nom_de_colonne "] = numpy.log(valeurs )
Lignes
Extraire une ligne t.irow("nom_de_ligne ")
t.irow(num´ero_de_ligne )
Extraire de la ligne x `a la ligne y t[x:y]
Extraire les lignes avec une
valeur x dans une colonne
t[tableau.nom_de_colonne == x ]
t[tableau.nom_de_colonne > x ]
Calculer la moyenne de chaque
ligne
t.T.mean()
Cases Obtenir la valeur d’une case t.nom_de_colonne ["nom_de_ligne "]
t.nom_de_colonne [num´ero_de_ligne ]
Changer la valeur d’une case t.nom_de_colonne ["nom_de_ligne "] = nouvelle_valeur
t.nom_de_colonne [num´ero_de_ligne ] = nouvelle_valeur
Exercice 1 : Manipulation de tableaux
Afin de tester la toxicit´e du ma¨
ıs OGM MON863, 3 groupes de 10 rats ont ´et´e nourri avec ce ma¨
ıs. Le ma¨
ıs OGM
repr´esentait 11% de la ration alimentaire dans le premier groupe, 22% dans le second, et 33% dans le troisi`eme. Un quatri`eme
groupe t´emoin de 60 rats a ´et´e nourri avec du ma¨
ıs non-OGM. Apr`es 90 jours, on mesure le poids du foie et des reins de
chaque rat.
[donn´ees simul´ees d’apr`es de Vendˆomois JS, Roullier F, Cellier D, S´eralini GE. A Comparison of the Effects of Three GM
Corn Varieties on Mammalian Health. Int J Biol Sci 2009 ; 5 :706-726. http ://www.biolsci.org/v05p0706.htm]
1. Lancer l’interpr´eteur Python et importer les modules Numpy, Pandas, Matplotlib.Pylab et Scipy.Stats :
import numpy, pandas, matplotlib.pylab as pylab, scipy.stats
2. Le fichier ”ogm.csv” (disponible sur le campus virtuel) contient le tableau de donn´ees. Charger ce tableau en Python.
3. Combien y a-t-il de lignes dans le tableau ? de colonnes ?
4. Afficher les 10 premi`eres lignes du tableau.
5. Calculer la moyenne et l’´ecart type du poids du rein sur l’ensemble des rats.
1