6.20. DataFrame Replace

6.20.1. SetUp

>>> import pandas as pd
>>> from datetime import date
>>>
>>>
>>> df = pd.DataFrame([
...     {'firstname': 'Alice', 'lastname': 'Apricot', 'lastlogin': date(2000, 1, 1)},
...     {'firstname': 'Bob', 'lastname': 'Blackthorn', 'lastlogin': date(2000, 2, 2)},
...     {'firstname': 'Carol', 'lastname': 'Corn', 'lastlogin': date(2000, 3, 3)},
...     {'firstname': 'Dave', 'lastname': 'Durian', 'lastlogin': date(2000, 4, 4)},
...     {'firstname': 'Eve', 'lastname': 'Elderberry', 'lastlogin': date(2000, 5, 5)},
...     {'firstname': 'Mallory', 'lastname': 'Melon', 'lastlogin': pd.NaT},
... ], index=['a', 'b', 'c', 'd', 'e', 'f']).astype({'lastlogin': 'datetime64[ns]'})
>>>
>>> df
  firstname    lastname  lastlogin
a     Alice     Apricot 2000-01-01
b       Bob  Blackthorn 2000-02-02
c     Carol        Corn 2000-03-03
d      Dave      Durian 2000-04-04
e       Eve  Elderberry 2000-05-05
f   Mallory       Melon        NaT

6.20.2. Replace

>>> MONTHS = {
...     'January': 'Styczeń',
...     'February': 'Luty',
...     'March': 'Marzec',
...     'April': 'Kwiecień',
...     'May': 'Maj',
...     'June': 'Czerwiec',
...     'July': 'Lipiec',
...     'August': 'Sierpień',
...     'September': 'Wrzesień',
...     'October': 'Październik',
...     'November': 'Listopad',
...     'December': 'Grudzień',
... }
>>>
>>>
>>> df['lastlogin']
a   2000-01-01
b   2000-02-02
c   2000-03-03
d   2000-04-04
e   2000-05-05
f          NaT
Name: lastlogin, dtype: datetime64[ns]
>>>
>>> df['lastlogin'].dt.strftime('%-d %B %Y')
a     1 January 2000
b    2 February 2000
c       3 March 2000
d       4 April 2000
e         5 May 2000
f                NaN
Name: lastlogin, dtype: str
>>> df['lastlogin'].dt.strftime('%-d %B %Y').replace(MONTHS)
a     1 January 2000
b    2 February 2000
c       3 March 2000
d       4 April 2000
e         5 May 2000
f                NaN
Name: lastlogin, dtype: str
>>> df['lastlogin'].dt.strftime('%-d %B %Y').replace(MONTHS, regex=True)
a     1 Styczeń 2000
b        2 Luty 2000
c      3 Marzec 2000
d    4 Kwiecień 2000
e         5 Maj 2000
f                NaN
Name: lastlogin, dtype: str