如何解决重新采样时间序列-Python
我正在尝试重新采样时间序列。我似乎无法正常工作。根据其他示例,我不明白为什么它没有返回时间序列:
df1 = pd.DataFrame({'Time': ['2019-08-02 09:50:10.100','2019-08-02 09:50:10.200','2019-08-02 09:50:10.400''2019-08-02 09:50:10.100','2019-08-02 09:50:10.400'],'Object': ['A','A','B','B'],})
df1['Time'] = pd.to_datetime(df1['Time'])
df1 = df1.set_index(['Time']).resample('100ms')
print(df1)
出局:
DatetimeIndexResampler [freq=<100 * Millis>,axis=0,closed=left,label=left,convention=start,base=0]
预期输出:
Time Object
0 2019-08-02 09:50:10.100 A
1 2019-08-02 09:50:10.200 A
2 2019-08-02 09:50:10.300 Nan
3 2019-08-02 09:50:10.400 A
4 2019-08-02 09:50:10.100 B
5 2019-08-02 09:50:10.200 B
6 2019-08-02 09:50:10.300 Nan
7 2019-08-02 09:50:10.400 B
解决方法
我相信您想要做的是:
apiVersion: v1
kind: Service
metadata:
name: databaker-users-db
spec:
ports:
- ...
- ...
selector: <-- check here
输出为:
df1['Time'] = pd.to_datetime(df1['Time'])
df1.set_index(['Time'],inplace = True)
df1.groupby("Object").resample("100ms").asfreq()
您现在可以根据需要删除索引的第一级:
Object
Object Time
A 2019-08-02 09:50:10.100 A
2019-08-02 09:50:10.200 A
2019-08-02 09:50:10.300 NaN
2019-08-02 09:50:10.400 A
B 2019-08-02 09:50:10.100 B
2019-08-02 09:50:10.200 B
2019-08-02 09:50:10.300 NaN
2019-08-02 09:50:10.400 B
输出:
df1 = df1.groupby("Object").resample("100ms").asfreq()
df1.index = df1.index.droplevel(0)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。