如何将pandas DataFrame中的时间字符串转换为小时级标准时间数据
不需要手动处理,pandas内置的pd.to_datetime()方法完全适配你当前的时间格式转换需求,一行代码就能完成小时级时间数据的转换。
具体操作代码
import pandas as pd # 假设你的原始DataFrame变量名为df # 转换时间列(0列)为带时区的datetime类型 df['datetime'] = pd.to_datetime(df[0], format="%Y%m%dT%H-%z") # 可选:如果不需要保留时区信息,避免后续运算时报时区不匹配错误,可以去掉时区属性 # df['datetime'] = pd.to_datetime(df[0], format="%Y%m%dT%H-%z").dt.tz_localize(None) # 可选:单独提取日期、小时字段,方便后续统计分析 df['date'] = df['datetime'].dt.date df['hour'] = df['datetime'].dt.hour # 重命名能源需求列 df['energy_demand'] = df[1] # 可选:设置时间为索引,方便后续做小时级重采样、滑动窗口计算等时间序列操作 df = df.set_index('datetime').asfreq('H')
说明
你提供的时间串结构为年月日T小时-时区偏移,完全符合strftime的格式规范,指定format参数转换的速度远高于pandas自动识别格式的速度,数据量越大性能优势越明显。
内容的提问来源于stack exchange,提问作者MUD
相关产品推荐
相关产品推荐

