回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一些加速度计读数的csv数据,格式如下(不完全是这样,实际数据的采样率更高):</p>
<pre>
2013-09-28 17:36:50.322120, 0.152695, -0.545074, -0.852997
2013-09-28 17:36:50.622988, 0.141800, -0.554947, -0.867935
2013-09-28 17:36:51.923802, 0.132431, -0.547089, -0.879333
2013-09-28 17:36:52.124641, 0.124329, -0.530243, -0.887741
2013-09-28 17:36:52.425341, 0.122269, -0.519669, -0.900269
2013-09-28 17:36:52.926202, 0.122879, -0.502151, -0.902023
....
....
....
....
2013-09-28 17:49:14.440343, 0.005447, -0.623016, -0.773529
2013-09-28 17:49:14.557806, 0.009048, -0.623093, -0.790909
2013-09-28 17:49:14.758442, 0.007217, -0.617386, -0.815796
</pre>
<p>我用熊猫装的</p>
^{pr2}$
<p>加速计数据不是均匀采样的,我想每隔10秒、20秒或30秒对数据进行分组,并对数据组应用自定义函数。在</p>
<p>如果数据是均匀采样的,应用滚动函数就很容易了。
但是,由于不是这样,我想使用时间戳间隔应用groupby。
以一秒钟的间隔执行此操作很容易:</p>
<pre><code>accDF_win=accDF.groupby(accDF.index.second).apply... etc
</code></pre>
<p>但是,我不知道如何按任意秒数分组,然后对其应用函数。</p>
<p>使用TimeGrouper,我可以执行以下操作:</p>
<pre><code>accDF_win=accDF.groupby(pd.TimeGrouper(freq='3Min'))
</code></pre>
<p>对于任意的分钟数,但似乎TimeGrouper没有“秒”分辨率。在</p>
<p>提前谢谢你的帮助</p>