[英]How can I extract and further test the list of dates from pandas DatetimeIndex?
這個問題實際上有兩個部分,因為我仍在學習。
date_list = pd.date_range(2019-09-24, 2019-09-26)
將返回 object
DatetimeIndex( ['2019-09-24', '2019-09-25'] , dtype='datetime64[ns]', freq='D')
但是,我只想要上面顯示的返回格式的列表。 我嘗試附加.tolist()但它隨后返回列表中的時間戳,例如。
時間戳('2019-09-24 00:00:00', freq='D')
然后我使用了 .date這似乎有效
print(date_list[0])
2019-09-24
這是最好的使用方法嗎?
然后我來測試它,我理解這個測試可能沒有必要但出於學習的目的:
def datetimeindex(dates):
start = dates['from_date']
end = dates['to_date']
date_list = pd.date_range(start, end).date
print(date_list[0])
return date_list[0]
def test_datetimeindex(self):
dates = {"from_date": "2019-09-24",
"to_date": "2019-09-27"}
actual = datetimeindex(dates)
expected = "2019-09-24"
self.assertEqual(expected, actual)
我收到此錯誤:
AssertionError: '2019-09-24'.= datetime,date(2019, 9, 24)
為什么打印和退貨不一樣? 如果我將它傳遞給另一個方法,它實際上會傳遞什么,2019-09-24 或 datetime.date(2019, 9, 24)?
我不能斷言datetime.date(2019, 9, 24)因為它不是字符串,所以不知道該怎么做?
謝謝
編輯:這返回了我想要的。 這提醒我 print() 總是字符串,所以很有意義。
return str(date_list[0])
您可以使用此方法以字符串格式創建日期列表
[i.strftime("%Y-%m-%d") for i in pd.date_range(start=start_date, end=end_date)]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.