[python] extract month from date in python

I have a column of dates in the format 2010-01-31. I can extract the year using

#extracting year
year = df["date"].values
year = [my_str.split("-")[0] for my_str in year]
df["year"] = year

I'm trying to get the month, but I don't understand how to get it on the second split.

This question is related to python pandas

The answer is


Alternate solution

Create a column that will store the month:

data['month'] = data['date'].dt.month

Create a column that will store the year:

data['year'] = data['date'].dt.year

>>> a='2010-01-31'
>>> a.split('-')
['2010', '01', '31']
>>> year,month,date=a.split('-')
>>> year
'2010'
>>> month
'01'
>>> date
'31'

import datetime

a = '2010-01-31'

datee = datetime.datetime.strptime(a, "%Y-%m-%d")


datee.month
Out[9]: 1

datee.year
Out[10]: 2010

datee.day
Out[11]: 31