python - 查找跳过的索引时间步骤并将值填充到 Pandas DataFrame 中

标签 python pandas indexing

我正在使用 pandas DataFrame,它的索引会跳过一个或多个时间步骤,在我的例子中是一个或多个小时。我想知道是否有办法找到这些时间步跳过并可能插入这些缺失的时间步。

我所拥有的示例:

[In]: df
[Out]:
                    point_value
Timestamp   
2016-01-01 00:00:00 2550.63
2016-01-01 01:00:00 2535.97
2016-01-01 02:00:00 2538.25
2016-01-01 04:00:00 2548.63
2016-01-01 05:00:00 2555.16

我正在寻找的示例:

[In]: df
[Out]:
                    point_value
Timestamp   
2016-01-01 02:00:00 2538.25
2016-01-01 04:00:00 2548.63

理想情况下,在找到这些时间步间隙后,我想用缺少的时间步来填充它们:

[In]: df
[Out]:
                    point_value
Timestamp   
2016-01-01 00:00:00 2550.63
2016-01-01 01:00:00 2535.97
2016-01-01 02:00:00 2538.25
2016-01-01 03:00:00 NaN
2016-01-01 04:00:00 2548.63
2016-01-01 05:00:00 2555.16

我已经搜索了堆栈溢出,但似乎找不到与索引本身相关的内容。如果这是一个重复的问题,那么我很乐意将其记下来并找到结果。感谢您提前提供的帮助。

最佳答案

DataFrame.reindex 应该可以实现您正在寻找的内容。只需定义一个新索引并将其应用到您的数据框:

new_index = pd.date_range(start='1/1/2016 0:0:0', end='1/1/2016 5:0:0', periods=6)
df.reindex(index=new_index)

关于python - 查找跳过的索引时间步骤并将值填充到 Pandas DataFrame 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57913103/

相关文章:

MYSQL:我应该在用作日志的大表上创建索引吗?

r - 从不同长度的逻辑向量和数值向量生成值向量

python - 如何对 CSV 文件中的数据进行聚类(或分组)?

pandas - 多索引 DataFrame 的多面图

python - pyparsing如何使用infixNotation来表示iif(cond, if true, if false)

python - 将不规则时间戳的 Dataframe 对象,将价格和数量信息转换为等距的、数量加权平均价格

python - 如何让 get_dummies 工作到位?

python - 在 Scipy 中切片稀疏矩阵——哪种类型效果最好?

python - Twisted 中不同的协议(protocol)如何相互交互

python - 使用自定义分隔符将字典列表写入 CSV