我有一个mm:ss.0格式的周期性时间序列,它看起来像
59:58.5
59:58.7
59:59.1
00:00.0
00:00.1
00:00.2
(这种情况重复了一段时间,没有时间标记,也就是说,持续大约5到6个小时)
我想要的是将整个系列分成30秒的间隔,最好使用asfreq
。这似乎是一个由两部分组成的问题:首先,我需要将时间段划分为30秒的间隔,这比看起来的要困难,因为我没有小时标签(有没有一种简单的方法可以在Excel中添加它?)。接下来,我需要实际使用asfreq
将数据分成30秒的频率。在
为了简单起见,我取了一个1小时的数据样本,并编写了一个测试程序,尝试将该子集分成30秒的间隔。在
我的数据有点像
^{pr2}$我的代码是
df = pd.read_csv('test_file.csv',index_col=0)
df.index = pd.to_datetime(df.index,format='%M:%S.%f')
df.index.get_duplicates()
df.Data = df.Data.asfreq(str(30)+'S',method='pad')
我一直得到的错误是 ValueError:无法使用方法或限制重新索引非唯一索引
有谁知道如何处理这一点和/或如何分割周期性数据?在
如果只想拆分它,请使用
groupby
。每个组将只保存该组的数据。在出现上述错误的原因是索引中存在非唯一值。Pandas如何计算出哪一个值指向您行中的哪个索引:
df.Data = df.Data.asfreq(str(30)+'S',method='pad')
?在相关问题 更多 >
编程相关推荐