fre*_*888 4 python datetime pandas
我有以下 df:
date time
2018-01-01 00:00:00 7:30:33
2017-01-01 00:00:00 7:30:33
Run Code Online (Sandbox Code Playgroud)
我想创建一个日期时间列,应如下所示:
2018-01-01 7:30:33
2017-01-01 7:30:33
Run Code Online (Sandbox Code Playgroud)
为此,我使用以下代码:
df["datetime"] = pd.to_datetime(df['date'].apply(str)+' '+df['time'])
Run Code Online (Sandbox Code Playgroud)
它在大多数时间都有效。但是,在我的 df 的某些部分(我不知道是哪些部分),我收到以下错误:
ValueError: hour must be in 0..23
Run Code Online (Sandbox Code Playgroud)
我做错了什么以及如何解决这个问题?
转换date为datetime、 和time,timedelta然后将它们相加。
pd.to_datetime(df.date) + pd.to_timedelta(df.time)
0 2018-01-01 07:30:33
1 2017-01-01 07:30:33
dtype: datetime64[ns]
Run Code Online (Sandbox Code Playgroud)
如果您担心无效值,请将errors='coerce'参数添加到两个函数以适当处理它们。
| 归档时间: |
|
| 查看次数: |
12568 次 |
| 最近记录: |