将大型GPS数据分组1分钟

时间:2016-04-29 16:48:51

标签: python csv datetime pandas time-series

date          object
lat          float64
lon          float64
speed        float64
direction    float64

在我的csv文件中,日期格式为2016-04-29 11:45:21 它将日期显示为对象类型。每分钟有超过10条记录。因此,我希望将每1分钟GPS数据组合在一起并应用速度均值。 我尝试使用数据文件为pandas dataframe的代码。

datafile.groupby(pd.TimeGrouper('1Min'))['speed'].mean()

出现以下错误:

  

TypeError:axis必须是DatetimeIndex,但得到的是' Int64Index'

的实例

在评论后编辑,然后datafile.head()显示table output taxi table output after datafile.head()

现在我有从06:35:20到06:59:59的1069条记录。我需要找到每1分钟数据的平均速度

1 个答案:

答案 0 :(得分:1)

您需要使用以下内容从DateTimeIndex列创建data

df.index = pd.to_datetime(df.loc[: 'date'], format='%Y-%m-%d %H:%M:%S')

但是,您可以利用内置.read_csv()功能,使用parse_dates=Trueindex_col=0date读为index,然后解析{{1} (假设日期是第一个index)。