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.

1

4 Answers

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 
4

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 
1
>>> a='2010-01-31' >>> a.split('-') ['2010', '01', '31'] >>> year,month,date=a.split('-') >>> year '2010' >>> month '01' >>> date '31' 
2

if you use datetime, you can simply add .month at the end of the datetime method

>>> from datetime import datetime, date, time, timedelta, timezone >>> datetime.now() datetime.datetime(2022, 1, 3, 11, 33, 16, 609052) >>> datetime.now().date() datetime.date(2022, 1, 3) >>> datetime.now().date().month 1 
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like