我目前有一個月份格式的字串。月份是 3 個字符,年份是 4 個字符。下面是我所擁有的一些日期的一些示例。
apr2021
jun2021
mar2020
dec2020
我在熊貓資料框中有一個日期,格式為 yyyy-mm-dd hh:mm:ss。我想將此字串與熊貓中的日期進行比較并確定它是否小于或等于它?有沒有辦法將這個月-年字串轉換為實際的日期格式?
我將洗掉日期為 yyyy-mm-dd,然后嘗試以相同格式獲取月-年字串,然后進行直接比較。我不太確定是否有更有效的方法來做到這一點?
示例偽代碼如下:
temp_date = apr2021 -> 01-04-2021
pandas_date = 29-03-2021
if temp_date < pandas_date:
do x
else:
do y
uj5u.com熱心網友回復:
您可以使用pandas.to_datetime在資料框中和隔離字串中轉換日期。然后,您將能夠使用>/<或 Pandas 方法gt/ lt/...執行比較:
import pandas as pd
df = pd.DataFrame({'temp_date': ['apr2021', 'jun2021', 'mar2020', 'dec2020']})
df['temp_date'] = pd.to_datetime(df['temp_date'])
pandas_date = pd.to_datetime('29-03-2021') # optional
import numpy as np
df['new_col'] = np.where(df['temp_date'].gt(pandas_date), 'greater', 'lower')
輸出:
temp_date new_col
0 2021-04-01 greater
1 2021-06-01 greater
2 2020-03-01 lower
3 2020-12-01 lower
注意。跟進評論,在datetime的檔案中有完整的日期時間格式串列,在您的情況下,這將是%b%Y:pd.to_datetime('apr2021', format='%b%Y')
uj5u.com熱心網友回復:
pd.to_datetime 就是你要找的。
>>> import pandas as pd
>>> pd.to_datetime("apr2021")
Timestamp('2021-04-01 00:00:00')
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/338353.html
上一篇:時間戳中的m/d/y日期。如何在mysql中轉換為dd-mm-yyyy
下一篇:R兩個日期之間的總和值,無需重復
