gpt4 book ai didi

python - 如何根据字符串列设置 python pandas 中日期时间列的时间

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:36 24 4
gpt4 key购买 nike

我有一个包含 DateTime 列的 DataFrame,其中包含日期但没有时间 ['date_from']。我的时间在['Time']列(字符串)中。如何仅将时间添加到现有的 DateTime 列中?

我尝试过:

df['date_from'].dt.time = pd.to_datetime(df['Time'], format='%H%M').dt.time

最佳答案

将列转换为to_timedelta并添加到 datetime 列:

#convert to string and if necessary add zero for 4 values
s = df['Time'].astype(str).str.zfill(4)
df['date_from'] += pd.to_timedelta(s.str[:2] + ':' + s.str[2:] + ':00')

示例:

df = pd.DataFrame({'date_from':pd.date_range('2015-01-01', periods=3),
'Time':[1501,112, 2012]})

print (df)
Time date_from
0 1501 2015-01-01
1 0112 2015-01-02
2 2012 2015-01-03

s = df['Time'].astype(str).str.zfill(4)
df['date_from'] += pd.to_timedelta(s.str[:2] + ':' + s.str[2:] + ':00')
print (df)
Time date_from
0 1501 2015-01-01 15:01:00
1 0112 2015-01-02 01:12:00
2 2012 2015-01-03 20:12:00

关于python - 如何根据字符串列设置 python pandas 中日期时间列的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47177148/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com