Pandas: 如何将日期时间转换为 %H:%H 并保持日期时间格式?
Pandas: How to convert datetime convert to %H:%H and stays as datetime format?
我在 1 列中有一个包含所有不同时间的数据框。
Time
-----
10:00
11:30
12:30
14:10
...
我需要使用以下代码在此数据帧上执行分位数范围:
df.quantile([0,0.5,1],numeric_only=False)
在下面的 link 之后,分位数确实有效。
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.quantile.html
作为对象中的列,我需要转换为pd.datetime 或pd.Timestamp。
当我转换为 pd.datetime 时,我的所有时间也会插入日期。
如果我将其格式化为 %H:%M,该列将返回到无法在 numeric_only 模式下使用分位数的对象。
如何转换为 %H:%M 中的日期时间格式并仍然坚持日期时间格式?
下面是我使用的代码:
df = pd.DataFrame({"Time":["10:10","09:10","12:00","13:23","15:23","17:00","17:30"]})
df['Time2'] = pd.to_datetime(df['Time']).dt.strftime('%H:%M')
df['Time2'] = df['Time2'].astype('datetime64[ns]')
How can I convert to datetime format in %H:%M and still stick to datetime format?
在 pandas 中不可能,也许更接近于使用 timedelta
s:
df = pd.DataFrame({"Time":["10:10","09:10","12:00","13:23","15:23","17:00","17:30"]})
df['Time2'] = pd.to_timedelta(df['Time'].add(':00'))
print (df)
Time Time2
0 10:10 10:10:00
1 09:10 09:10:00
2 12:00 12:00:00
3 13:23 13:23:00
4 15:23 15:23:00
5 17:00 17:00:00
6 17:30 17:30:00
我在 1 列中有一个包含所有不同时间的数据框。
Time
-----
10:00
11:30
12:30
14:10
...
我需要使用以下代码在此数据帧上执行分位数范围:
df.quantile([0,0.5,1],numeric_only=False)
在下面的 link 之后,分位数确实有效。 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.quantile.html
作为对象中的列,我需要转换为pd.datetime 或pd.Timestamp。 当我转换为 pd.datetime 时,我的所有时间也会插入日期。 如果我将其格式化为 %H:%M,该列将返回到无法在 numeric_only 模式下使用分位数的对象。
如何转换为 %H:%M 中的日期时间格式并仍然坚持日期时间格式?
下面是我使用的代码:
df = pd.DataFrame({"Time":["10:10","09:10","12:00","13:23","15:23","17:00","17:30"]})
df['Time2'] = pd.to_datetime(df['Time']).dt.strftime('%H:%M')
df['Time2'] = df['Time2'].astype('datetime64[ns]')
How can I convert to datetime format in %H:%M and still stick to datetime format?
在 pandas 中不可能,也许更接近于使用 timedelta
s:
df = pd.DataFrame({"Time":["10:10","09:10","12:00","13:23","15:23","17:00","17:30"]})
df['Time2'] = pd.to_timedelta(df['Time'].add(':00'))
print (df)
Time Time2
0 10:10 10:10:00
1 09:10 09:10:00
2 12:00 12:00:00
3 13:23 13:23:00
4 15:23 15:23:00
5 17:00 17:00:00
6 17:30 17:30:00