python - 使用来自不同时间序列的索引和值创建一个时间序列,具有不同的索引
问题描述
我想使用现有 TimeSerie 的索引和具有不同时间索引的另一个 TimeSerie 的值来创建 DataFrame 或 TimeSerie。TimeSeries 看起来像;
<class 'pandas.core.series.Series'>
DT
2018-01-02 172.3000
2018-01-03 174.5500
2018-01-04 173.4700
2018-01-05 175.3700
2018-01-08 175.6100
2018-01-09 175.0600
2018-01-10 174.3000
2018-01-11 175.4886
2018-01-12 177.3600
2018-01-17 179.2500
2018-01-18 180.1000
...
和
<class 'pandas.core.series.Series'>
DT
2018-01-02 NaN
2018-01-09 175.610
2018-01-16 177.360
2018-01-23 180.100
...
我想使用第一个 TS 中的索引并用第二个 TS 中的值填充它。如果在第一个 TS 中找不到索引,则应使用此 TS 中的下一个可用日期。喜欢;
<class 'pandas.core.series.Series'>
DT
2018-01-02 NaN
2018-01-03 NaN
2018-01-04 NaN
2018-01-05 NaN
2018-01-08 NaN
2018-01-09 175.610
2018-01-10 NaN
2018-01-11 NaN
2018-01-12 NaN
2018-01-17 177.360
2018-01-18 NaN
...
谢谢
解决方案
我的想法是使用reindex
两次:
second_ts.reindex(first_ts.index, method='ffill').drop_duplicates().reindex(first_ts.index)
推荐阅读
- javascript - 如何使用 NodeJS 删除 dynamoDb 中的嵌套项
- c - 在函数递归内传递双指针
- ios - 将 Sprite 添加到导致 EXC_BAD_ACCESS 的场景
- spring - application.properties spring boot 值注入
- python - 在尝试中返回相同的迭代,除了
- wordpress - 如何使我的下拉菜单链接可点击?
- python - 使用 Connexion 时访问 Flask 方法,如 before_request
- c++ - 如何为有符号和/或无符号参数专门化模板函数 (std::is_unsigned)
- visual-studio - 如果它在列表中,如何匹配一个术语
- c# - ASP.NET Core 中应用程序启动逻辑的放置位置