重新采样Pandas数据帧无效

2024-04-27 05:24:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试导入一个带有pandas的.csv 30分钟时间序列文件,以将其重采样为小时,但重采样函数无法识别日期时间格式。在

  1. Import与stackoverflow上的脚本一起工作正常。在
  2. 当我打开Dataframe并双击日期和时间时,它会提到我不能编辑时间戳。在
  3. 当我尝试重新采样数据帧时,它给出了类型错误:“仅对DatetimeIndex、TimedeltaIndex或PeriodIndex有效,但得到了一个“RangeIndex”的实例。

下面是我当前使用的代码,日期和时间在.csv文件中是分开的列,并由脚本合并到“datetime”。.csv由8列和5131行组成。在

def dateparse(d,t):
    dt = d + " " + t
    return pd.datetime.strptime(dt, '%d/%m/%Y %H:%M:%S')
df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

df.resample('H').mean()

有人知道这个问题吗?在


Tags: 文件csv函数脚本pandasdfdatetimedate
1条回答
网友
1楼 · 发布于 2024-04-27 05:24:38

首先将dataframe的索引设置为datetime列,将其转换为datetime索引,它应该可以工作。在

def dateparse(d,t):
    dt = d + " " + t
    return pd.datetime.strptime(dt, '%d/%m/%Y %H:%M:%S')
df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

df = df.set_index('datetime')
df.index = pd.to_datetime(df.index)
df.resample('H').mean()

相关问题 更多 >