我使用以下命令用 pandas 读取了此 Excel 工作表(仅“DATEHEUREMAX”列):
xdata = read_excel('Data.xlsx', 'Data', usecols=['DATEHEUREMAX'])
现在我想把这个 df 变成一个简化的 df,只将 hour:min 四舍五入到 15 分钟。主要思想是根据小时:分钟绘制直方图
最佳答案
考虑以下具有单列的 DataFrame,读取为日期时间(而不是字符串):
Dat
0 2019-06-03 12:07:00
1 2019-06-04 10:04:00
2 2019-06-05 11:42:00
3 2019-06-06 10:17:00
要将这些日期舍入为运行 15 分钟:
df['Dat2'] = df.Dat.dt.round('15T').dt.time.map(lambda s: str(s)[:-3])
结果是:
Dat Dat2
0 2019-06-03 12:07:00 12:00
1 2019-06-04 10:04:00 10:00
2 2019-06-05 11:42:00 11:45
3 2019-06-06 10:17:00 10:15
出于演示目的,我将结果保存在新列中,但您可以 将其保存在原始列中。
关于python - 将 pandas 日期时间转换为小时 :min rounded to 15 min,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59078238/