![](/img/trans.png)
[英]Extracting time interval by minute and hour in a particular day using datetimeindex of pandas
[英]Pandas combine Hour and Minute column to time
我正在尝试将 Hour 列和 Minute 列组合成 HH:MM 格式
我尝试了以下
time = pd.to_timedelta(df['HOUR'],unit='h') + pd.to_timedelta(df['MINUTE'],unit ='m')
time = pd.to_datetime(report_time).dt.time
这是有效的,但是它显示
FutureWarning: Passing timedelta64-dtype data is deprecated, will raise a TypeError in a future version return func(*args, **kwargs)
而且它效率不高,因为我尝试了一个大型数据集的代码,它耗尽了我的记忆。
我想知道是否有另一种方法可以将小时列和分钟列转换为 HH:MM 格式
我的数据就像
Hour Minute
8 12
9 30
3 15
我的目标就像
08:12
09:30
03:15
将两列转换为字符串,添加分隔符并使用带format
参数的to_datetime
:
time = (pd.to_datetime(df['Hour'].astype(str) + ':' + df['Minute'].astype(str), format='%H:%M')
.dt.time)
print (time)
0 08:12:00
1 09:30:00
2 03:15:00
dtype: object
另一个想法是多个Hour
乘以 100,添加minute
并转换为%H%M
格式:
time = pd.to_datetime(df['Hour']*100 + df['Minute'], format='%H%M').dt.time
print (time)
0 08:12:00
1 09:30:00
2 03:15:00
dtype: object
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.