Dans la doc de Series , les paramètres d'utilisation de name
et fastpath
ne sont pas expliqués. Que font-ils?
L’argument name
vous permet de donner un nom à un objet Series
, c’est-à-dire à la colonne. Ainsi, lorsque vous placerez cela dans une DataFrame
, la colonne sera nommée en fonction du paramètre name
.
exemple:
In [1]: s = pd.Series(["A","B","C"], name="foo")
In [2]: s
Out[2]:
0 A
1 B
2 C
Name: foo, dtype: object
In [3]: pd.DataFrame(s)
Out[4]:
foo
0 A
1 B
2 C
Si vous ne donnez pas une name
à votre Series
, elle sera nommée automatiquement. Ici ce sera un 0
dans l'objet dataframe
:
0
0 A
1 B
2 C
Pour la fastpath
, il s'agit d'un paramètre interne et un problème a déjà été signalé:
La name
de pd.Series
devient le column name
lorsque vous les concatéminez. Inversement, lorsque vous extrayez une colonne de dataframe
, elle a le column name
comme nom du pd.Series
extrait.
import pandas as pd
import numpy as np
s1 = pd.Series(np.random.randn(10), name='series1')
s2 = pd.Series(np.random.randn(10), name='series2')
pd.concat([s1, s2], axis=1)
Out[16]:
series1 series2
0 0.3499 0.3017
1 -2.2980 -1.1121
2 -1.4517 -0.5107
3 -0.4596 -0.0855
4 -0.3230 0.5391
5 -0.1764 -0.3218
6 2.4806 -0.6129
7 1.6766 1.1408
8 -1.2407 0.4857
9 0.3587 -1.5752
Il y a une autre utilisation du paramètre 'name'. Je vais donner un exemple. Dans cet exemple, nous verrons que le paramètre 'name' pourrait être utilisé comme nom d'index pour les valeurs.
purchase_1 = pd.Series({'Name': 'JJ',
'Item': 'A',
'Cost': 22.00})
purchase_2 = pd.Series({'Name': 'KK',
'Item': 'B',
'Cost': 22.50})
dfn = pd.DataFrame([purchase_1, purchase_2], index=['Store X', 'Store Y'])
dfn = dfn.append(pd.Series(data={'Cost': 30.00, 'Item': 'C','Name': 'TT'}, name='Store Y'))
dfn
Out[3]:
Cost Item Name
Store X 22.0 A JJ
Store Y 22.5 B KK
Store Y 30.0 C TT
En ajoutant à toutes les informations, je viens d'apprendre que lorsque vous devez ajouter une ligne à l'aide de la série, deux options existent: 1) ignore_index = True, dans ce cas, il supprimera l'index défini et le réinitialisera en index numérique (par défaut). 2) l’utilisation du nom aide à conserver la structure actuelle de la structure de données et à utiliser le paramètre name comme index multiple (dans l’ordre).