2014-09-29 241 views
1

我在格式2010-01-31中有一列日期。我可以提取一年使用在python中從日期中提取月份

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

我想要得到的月份,但我不明白如何得到它在第二次拆分。

+0

如果您使用的熊貓,你可以使用使他們datetime對象'df.apply'這可能是存儲數據 – 2014-09-29 18:04:21

回答

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

真的更爲有效的方式?你對'datetime'標準庫有什麼作用? – 2014-09-29 18:24:53

11
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 
+0

,除了問題要求月 – 2014-09-29 17:55:52

+1

@PadraicCunningham我希望OP不需要太多的手持,他們會看到「然後提取年」,並認爲「但等,我真的想提取這個月!我不能使用這個答案!「 – SethMMorton 2014-09-29 17:57:06

+0

對不起,糾正它:D – Abdelouahab 2014-09-29 17:59:55

相關問題