Wie man den Wert für eine bestimmte Zelle im Pandas-DataFrame mit Hilfe des Indexes einstellt

  1. Setzen von Werten für eine bestimmte Zelle in Pandas DataFrame unter Verwendung der pandas.Dataframe.at Methode
  2. Wert für bestimmte Zelle im Pandas-DataFrame mit der Methode Dataframe.set_value() setzen
  3. Wert für bestimmte Zelle in Pandas DataFrame mit der Methode Dataframe.loc setzen

Pandas ist ein datenzentriertes Python-Paket, das die Datenanalyse in Python einfach und kohärent macht. In diesem Artikel werden wir uns mit verschiedenen Methoden des Zugriffs auf und des Setzens von Werten für eine bestimmte Zelle in Pandas DataFrame-Datenstruktur unter Verwendung eines Indexes befassen.

Setzen von Werten für eine bestimmte Zelle in Pandas DataFrame unter Verwendung der pandas.Dataframe.at Methode

Die Methode pandas.Dataframe.at wird hauptsächlich verwendet, wenn wir einen einzelnen Wert in einem DataFrame setzen müssen.

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))

Ausgabe:

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

Wie Sie vielleicht bemerkt haben, haben wir beim Zugriff auf die Zelle Index und Spalte als .at[0, 'Col1'] angegeben, wobei der erste Parameter der Index und der zweite die Spalte ist.

Wenn Sie die Spalte verlassen und nur den Index angeben, werden alle Werte für diesen Index geändert.

Wert für bestimmte Zelle im Pandas-DataFrame mit der Methode Dataframe.set_value() setzen

Eine weitere Alternative ist die Methode Dataframe.set_value(). Diese ist der vorherigen Methode sehr ähnlich und greift auf einen Wert nach dem anderen zu, jedoch mit einem leichten Unterschied in der Syntax.

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))

Ausgabe:

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

Wert für bestimmte Zelle in Pandas DataFrame mit der Methode Dataframe.loc setzen

Eine andere brauchbare Methode, um eine bestimmte Zelle mit einem leichten Unterschied in der Syntax zu setzen, ist die dataframe.loc-Methode.

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))

Ausgabe:

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

Alle oben genannten Methoden in diesem Artikel sind bequeme Wege, um eine bestimmte Zelle in Pandas DataFrame zu modifizieren oder zu setzen, mit geringfügigen Unterschieden in Syntax und Spezifikation.

Verwandter Artikel - Pandas DataFrame

  • Wie man Pandas-DataFrame in ein Numpy-Array konvertiert
  • Eindeutige Pandas-Werte in einer Spalte abrufen und diese sortieren