6.13. DataFrame Update

  • df['column'] = 0

  • df[1:2] = 0

  • .loc[df['species'] == 0, 'species'] = 'Setosa'

  • .replace()

  • .eval()

6.13.1. SetUp

>>> import pandas as pd
>>>
>>> df = pd.DataFrame([
...     {'firstname': 'Alice', 'lastname': 'Apricot', 'age': 30},
...     {'firstname': 'Bob', 'lastname': 'Blackthorn', 'age': 31},
...     {'firstname': 'Carol', 'lastname': 'Corn', 'age': 32},
... ], index=['a', 'b', 'c'])
>>> df
  firstname    lastname  age
a     Alice     Apricot   30
b       Bob  Blackthorn   31
c     Carol        Corn   32

6.13.2. Update Column

>>> import pandas as pd
>>>
>>>
>>> df = pd.DataFrame({
...     'A': [10, 11, 12],
...     'B': [20, 21, 22],
...     'C': [30, 31, 32]})
>>>
>>> df
    A   B   C
0  10  20  30
1  11  21  31
2  12  22  32
>>>
>>> df['C'] = 0
>>> df
    A   B  C
0  10  20  0
1  11  21  0
2  12  22  0

6.13.3. Update Row

>>> import pandas as pd
>>>
>>>
>>> df = pd.DataFrame({
...     'A': [10, 11, 12],
...     'B': [20, 21, 22],
...     'C': [30, 31, 32]})
>>>
>>> df
    A   B   C
0  10  20  30
1  11  21  31
2  12  22  32
>>>
>>> df[1:2] = 0
>>> df
    A   B   C
0  10  20  30
1   0   0   0
2  12  22  32
>>>
>>> df[::2] = 99
>>> df
    A   B   C
0  99  99  99
1   0   0   0
2  99  99  99

6.13.4. Use Case - 1

>>> #
... df.loc[df['species'] == 0, 'species'] = 'Setosa'
... df.loc[df['species'] == 1, 'species'] = 'Versicolor'
... df.loc[df['species'] == 2, 'species'] = 'Virginica'

6.13.5. Use Case - 2

>>> #
... df['species'].replace({
...     0: 'setosa',
...     1: 'versicolor',
...     2: 'virginica'
... }, inplace=True)