[英]How to reformat dates in an index using Pandas/in Python
我的變量dates_city
存儲這個:
Index(['2020-11-17T00:00:00', '2020-11-18T00:00:00', '2020-11-19T00:00:00',
'2020-11-20T00:00:00', '2020-11-21T00:00:00', '2020-11-22T00:00:00',
'2020-11-23T00:00:00', '2020-11-24T00:00:00', '2020-11-25T00:00:00',
'2020-11-26T00:00:00', '2020-11-27T00:00:00', '2020-11-28T00:00:00'])
我希望它存儲為:
Index(['2020-11-17', '2020-11-18', '2020-11-19',
'2020-11-20', '2020-11-21', '2020-11-22',
'2020-11-23', '2020-11-24', '2020-11-25',
'2020-11-26', '2020-11-27', '2020-11-28'])
所以,基本上只有 yyyy-mm-dd 格式的日期。 我試圖使用 datetime 但我似乎無法讓它工作,可能是因為這個變量是一個索引,而不是一個數組。 我該如何重新格式化?
您可以使用 pandas reset_index()方法更改 dataframe 的索引。 請注意,這會將日期列重命名為“索引”,因此您可能希望使用 pandas rename()方法對其進行重命名。
然后您可以使用 pandas strftime()方法重新格式化您的日期。 重新格式化后,如果仍想使用日期列作為索引,可以通過更改 dataframe 的索引屬性來實現(見下面的代碼):
df.index = df['Date']
pandas.to_datetime
為我工作:
pd.to_datetime(dates_city)
#DatetimeIndex(['2020-11-17', '2020-11-18', '2020-11-19', '2020-11-20',
# '2020-11-21', '2020-11-22', '2020-11-23', '2020-11-24',
# '2020-11-25', '2020-11-26', '2020-11-27', '2020-11-28'],
# dtype='datetime64[ns]', freq=None)
如果要將其保留為pandas.Index
,可以添加方法pandas.DatetimeIndex.strftime
:
pd.to_datetime(dates_city).strftime("%Y-%m-%d")
#Index(['2020-11-17', '2020-11-18', '2020-11-19', '2020-11-20', '2020-11-21',
# '2020-11-22', '2020-11-23', '2020-11-24', '2020-11-25', '2020-11-26',
# '2020-11-27', '2020-11-28'],
# dtype='object')
您可以在此處找到日期時間格式代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.