Notebook Contrôle 5
- Charger les données du fichier Donnees_M2_RD.xlsx dans une DataFrame placée dans une variable df.
df = pandas.read_excel('Donnees_M2_RD.xlsx')
- Afficher les valeurs de la colonne Subject de df. On ne veut pas de doublon dans cet affichage.
df["Subject"].drop_duplicates()
0 P_ADI_331
400 P_ALM_345
800 P_AMY_346
1200 P_BAM_347
1600 P_BEH_340
2000 P_BLC_325
2399 P_BLR_321
2798 P_BOA_321
3197 P_BOC_342
3597 P_CAR_327
3995 P_CAV_333
4395 P_CON_336
4795 P_GAM_338
5195 P_GHM_334
5595 P_GRC_341
5995 P_GRF_322
6394 P_LAC_354
6794 P_LEG_335
7194 P_MOE_339
7594 P_ROS_336
7994 P_SOA_337
8394 P_TAI_343
8794 P_VAL_329
9194 P_VAR_330
Name: Subject, dtype: object
- Placer dans une DataFrame df_d les essais de la valeur pour Side est D.
Placer dans une DataFrame df_g les essais de la valeur pour Side est G.
df_d = df[df["Side"] == 'D']
df_g = df[df["Side"] == 'G']
- Créer une Series s_rt_d contenant la moyenne des RT par Subject pour les essais ayant Side qui vaut D.
Créer une deuxième Series s_rt_g sur le même principe, mais pour les essais ayant Side qui vaut G.
s_rt_d = df_d.groupby(by="Subject")["RT"].mean()
s_rt_g = df_g.groupby(by="Subject")["RT"].mean()
- Indiquer les Subjects dont le RT pour les essais ayant Side valant D est en moyenne inférieur à celui pour les essais ayant Side valant G.
# Assembler les deux Series en une DataFrame
s_rt = pandas.concat([s_rt_d.rename("RT_D"), s_rt_g.rename("RT_G")], axis=1, join="inner")
s_rt[s_rt["RT_D"] < s_rt["RT_G"]]
|
RT_D |
RT_G |
Subject |
|
|
P_BLC_325 |
11311.120603 |
11421.280 |
P_GHM_334 |
10762.345000 |
11679.255 |
P_SOA_337 |
9864.230000 |
10238.120 |
- Ranger dans la variable df_min_max une DataFrame contenant les valeurs minimales et maximales de RT pour chaque Subject.
s_rt_min = df.groupby(by="Subject")["RT"].min().rename("min")
s_rt_max = df.groupby(by="Subject")["RT"].max().rename("max")
# une autre manière de faire pour assembler 2 Series en une DataFrame
df_min_max = pandas.DataFrame({"min": s_rt_min, "max":s_rt_max})
df_min_max
|
min |
max |
Subject |
|
|
P_ADI_331 |
4851 |
18865 |
P_ALM_345 |
3181 |
51807 |
P_AMY_346 |
2703 |
29020 |
P_BAM_347 |
3500 |
24332 |
P_BEH_340 |
4582 |
50600 |
P_BLC_325 |
4728 |
32306 |
P_BLR_321 |
2885 |
44985 |
P_BOA_321 |
8414 |
89205 |
P_BOC_342 |
2851 |
103152 |
P_CAR_327 |
4088 |
65254 |
P_CAV_333 |
3105 |
36168 |
P_CON_336 |
3180 |
37280 |
P_GAM_338 |
4703 |
52262 |
P_GHM_334 |
3238 |
33643 |
P_GRC_341 |
3191 |
38528 |
P_GRF_322 |
6248 |
42200 |
P_LAC_354 |
5909 |
93540 |
P_LEG_335 |
3936 |
49580 |
P_MOE_339 |
3585 |
34250 |
P_ROS_336 |
3996 |
54405 |
P_SOA_337 |
4842 |
31123 |
P_TAI_343 |
6486 |
62619 |
P_VAL_329 |
5112 |
80916 |
P_VAR_330 |
2918 |
80729 |