Comment définir la valeur d'une cellule particulière dans Pandas DataFrame à l'aide de l'index
-
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode
pandas.dataframe.at
-
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode
Dataframe.set_value()
-
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode
Dataframe.loc
Pandas est un package python centré sur les données qui rend l’analyse des donnéesen Python facile et cohérente. Dans cet article, nous examinerons différentes méthodes d’accès et de définition de valeurs pour une cellule particulière dans la structure de données pandas DataFrame
à l’aide d’un index.
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode pandas.dataframe.at
La méthode pandas.dataframe.at
est principalement utilisée lorsque nous devons définir une seule valeur dans un DataFrame
.
import pandas as pd
sample_df = pd.DataFrame(
[[10, 20, 30], [11, 21, 31], [15, 25, 35]],
index=[0, 1, 2],
columns=["Col1", "Col2", "Col3"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(sample_df))
sample_df.at[0, "Col1"] = 99
sample_df.at[1, "Col2"] = 99
sample_df.at[2, "Col3"] = 99
print "\nModified DataFrame"
print (pd.DataFrame(sample_df))
Production:
Original DataFrame
Col1 Col2 Col3
0 10 20 30
1 11 21 31
2 15 25 35
Modified DataFrame
Col1 Col2 Col3
0 99 20 30
1 11 99 31
2 15 25 99
Comme vous le remarquerez peut-être, lors de l’accès à la cellule, nous avons spécifié l’index et la colonne comme .at[0, 'Col1']
parmi lesquels le premier paramètre est l’index et le second est la colonne.
Si vous quittez la colonne et spécifiez uniquement l’index, toutes les valeurs de cet index seront modifiées.
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode Dataframe.set_value()
Une autre alternative est la méthode Dataframe.set_value()
. Ceci est très similaire à la méthode précédente et accède à une valeur à la fois, mais avec une légère différence de syntaxe.
import pandas as pd
sample_df = pd.DataFrame(
[[10, 20, 30], [11, 21, 31], [15, 25, 35]],
index=[0, 1, 2],
columns=["Col1", "Col2", "Col3"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(sample_df))
sample_df.set_value(0, "Col1", 99)
sample_df.set_value(1, "Col2", 99)
sample_df.set_value(2, "Col3", 99)
print "\nModified DataFrame"
print (pd.DataFrame(sample_df))
Production:
Original DataFrame
Col1 Col2 Col3
0 10 20 30
1 11 21 31
2 15 25 35
Modified DataFrame
Col1 Col2 Col3
0 99 20 30
1 11 99 31
2 15 25 99
Définir la valeur d’une cellule particulière dans pandas DataFrame en utilisant la méthode Dataframe.loc
Une autre méthode viable pour définir une cellule particulière avec une légère différence de syntaxe est la méthode dataframe.loc
.
import pandas as pd
sample_df = pd.DataFrame(
[[10, 20, 30], [11, 21, 31], [15, 25, 35]],
index=[0, 1, 2],
columns=["Col1", "Col2", "Col3"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(sample_df))
sample_df.loc[0, "Col3"] = 99
sample_df.loc[1, "Col2"] = 99
sample_df.loc[2, "Col1"] = 99
print "\nModified DataFrame"
print (pd.DataFrame(sample_df))
Production:
Original DataFrame
Col1 Col2 Col3
0 10 20 30
1 11 21 31
2 15 25 35
Modified DataFrame
Col1 Col2 Col3
0 10 20 99
1 11 99 31
2 99 25 35
Toutes les méthodes mentionnées ci-dessus dans l’article sont des moyens pratiques de modifier ou de définir une cellule particulière dans pandas DataFrame
, avec des différences infimes de syntaxe et de spécification.
Article connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme