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