python - pandas.interpolate (method = 'linear') 只复制第一个和最后一个点的值
问题描述
我对pandas.interpolate
.
我有一个从 2011 年到 2017 年的 pandas 数据框。我有时会缺少值,所以我使用 interpolate with method='linear'
andlimit_direction='both'
来填补空白。
下面的屏幕截图显示了原始数据帧(顶部)和插值结果(底部)。
当缺失值位于非缺失值之间时,一切正常:在下面的示例中,2016 年生成了一个全新的值。
但是当 NA 在系列的开头或结尾时,我对结果并不满意,因为事实证明它只是下一个非缺失值的副本:在下面的示例中,您可以看到2011 年和 2012 年的值与 2013 年相同。
然后,我尝试使用method='polynomial'
withorder=2
来获得“更平滑”的插值,但出现以下错误:
ValueError: number of derivatives at boundaries.
有人可以向我解释为什么我做错了,我可以使用哪种方法来获得一个很好的插值,包括第一个和最后一个值?
解决方案
推荐阅读
- asp.net-mvc - ASP.NET Core MVC ChallengeResult,在重定向的操作方法中未收到 AuthenticationProperties 参数
- r - 如何跨多个列应用复杂的条件更改?
- python - 如何使用 spaCy 编写代码来合并标点符号和短语
- django - 从报告组中选择branch_id by branch_id order by max(date) desc to Django Query
- swift - 如何更新 ARAnchor 的 SpriteKit 节点?
- r - 需要解决 R 中 seq 函数的问题
- mongodb - MongoDB - 添加/更新到文档上的对象列表
- python - 更改 Django 代码给出 NameError 名称(函数)未定义
- machine-learning - 如何使用注意掩码计算 HuggingFace Transformers BERT 令牌嵌入的均值/最大值?
- javascript - 模态打开html时自动播放视频