我有一個包含以下資訊的資料框:
N_Ord PSN debut_interval
1 A4BA0D07 01/01/2022
2 04BB0607 01/01/2022
我需要
- 將
debut_interval我的資料框的每一行轉換為該格式yyyy-mm-ddT00:00:00 - 添加一個
fin_interval包含與yyyy-mm-ddT23:59:59相同的日期的新列
uj5u.com熱心網友回復:
您可以使用:
fmt = '%Y-%m-%dT%H:%M:%S'
df2 = (df
.assign(debut_interval=pd.to_datetime(df['debut_interval'], dayfirst=True),
fin_interval=lambda d: d['debut_interval'].add(pd.to_timedelta('23:59:59')).dt.strftime(fmt))
.assign(debut_interval=lambda d: d['debut_interval'].dt.strftime(fmt)
)
)
輸出:
N_Ord PSN debut_interval fin_interval
0 1 A4BA0D07 2022-01-01T00:00:00 2022-01-01T23:59:59
1 2 04BB0607 2022-01-01T00:00:00 2022-01-01T23:59:59
uj5u.com熱心網友回復:
def get_date(fmt):
fmt = "%Y-%m-%dT" fmt
return lambda x: x.dt.strftime(fmt)
df['debut_interval'] = pd.to_datetime(df['debut_interval'])
df.debut_interval.transform({'debut_interval':get_date('00:00:00'),
'fin_interval':get_date('23:59:59')})
debut_interval fin_interval
0 2022-01-01T00:00:00 2022-01-01T23:59:59
1 2022-01-01T00:00:00 2022-01-01T23:59:59
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/478154.html
上一篇:更改顏色取決于日期的值
