2017-10-20 137 views
0

我有用下面的代碼創建的熊貓日期列表。將熊貓日期列表轉換爲python日期字符串列表

import pandas as pd 
panda_datelist = pd.bdate_range(pd.datetime.today(), periods=3).tolist() 

我想將panda_datelist轉換成python列表。它應該看起來像這樣;

python_datelist_from_panda = ['10/2/2017','10/3/2017','10/4/2017'] 

我使用python V3.6

回答

1

使用list comprehension

In [4553]: [x.strftime('%m/%d/%Y') for x in panda_datelist] 
Out[4553]: ['10/20/2017', '10/23/2017', '10/24/2017'] 

或者,使用map

In [4554]: map(lambda x: x.strftime('%m/%d/%Y'), panda_datelist) 
Out[4554]: ['10/20/2017', '10/23/2017', '10/24/2017'] 

但是,將列出你可以實際使用strftime

In [4559]: pd.bdate_range(pd.datetime.today(), periods=3).strftime('%m/%d/%Y') 
Out[4559]: 
array([u'10/20/2017', u'10/23/2017', u'10/24/2017'], 
     dtype='<U10') 

詳細

In [4555]: panda_datelist 
Out[4555]: 
[Timestamp('2017-10-20 00:00:00', freq='B'), 
Timestamp('2017-10-23 00:00:00', freq='B'), 
Timestamp('2017-10-24 00:00:00', freq='B')] 
+0

感謝。我不知道'strftime'對熊貓有效。熊貓給我的印象是與Python數據結構完全不同的動物。 – user3848207

+0

我想了解使用map和lambda的解決方案。他們對我來說看起來很陌生。這是一種函數式編程嗎? – user3848207