问题标签 [ffill]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
251 浏览

python - Groupby 并使用 Python 中的前向填充以 1 分钟的频率重新采样

我想以按列分组的频率data使用前向填充对列进行重新采样:ffill1mindfid

df

预期输出:

类似这篇文章的东西,但我试过了:

并且data列仅返回NaN值:


编辑:

  1. 第二行df timestamp2017-01-02 12:04:43.240变为2017-01-02 16:04:43.240,即属于同一行的行id应该被排序。
  2. 我误认为预期输出中的第二个是最小的,但@jezrael 的答案是正确的。
0 投票
0 回答
32 浏览

python - 根据最后一个值填充缺失值

我想根据每个 Id 的最后一个值填充缺失值

例如,我想要这个数据场

成为

数据:

0 投票
1 回答
65 浏览

python - 在python中填充空单元格(从excel导入数据集)

我有一个数据集,我想在 python 中填充列和行,如下所示:

数据集:

预期结果:

我已经使用 fillna() 填充了 P 列,但不能对 Q 列执行相同的操作,因为需要为密钥对填充值。

有人可以帮忙吗?

0 投票
1 回答
87 浏览

python - 在 groupby 和 reindex 之后前向填充特定列

我想用该组中的“id”填充一个特定列,即“id”列,并在应用分组重新索引后用 0 向前填充其他列。

我当前使用 0 填充所有缺失值的版本如下所示:

但我无法在该组中用 id 填充“id”

0 投票
2 回答
53 浏览

python - Python df 按日期添加行,因此每个组在同一日期结束。填充剩余的行

要使用地理绘图动画帧,我希望我的所有组都在同一日期结束。这将避免最后一帧使某些国家变灰。目前,根据日期的最新数据点是'Timestamp('2021-05-13 00:00:00')'。

因此,在下一步中,我想根据所有国家/地区添加新行,以便它们在 df 中的最新日期之前拥有行。可以使用 ffill 填充列“people_vaccinated_per_hundred”和“people_fully_vaccinated_per_hundred”。

数据: 数据集

所以理想情况下,如果挪威比最新数据点“2021-05-13”少 1 天,那么它应该添加一个新行,如下所示。这应该对 df 中的所有其他国家/地区进行。

例子

0 投票
2 回答
29 浏览

python - 使用“填充”填充缺失的数据

我有以下数据

我希望它看起来像下面这样:

所以它使用下面的日期来填写缺失的数据。我尝试了以下代码:

但是,这会导致获取上述数据并获得以下结果:

这与我需要的输出不匹配。

0 投票
2 回答
412 浏览

python - 仅向前填充某个值

我有一个表示对象状态的数组,其中 0 - 对象关闭,1 - 对象打开。

我只需要转发其中的 0 值,如下所示。

在这里浏览了类似的问题后,我只是比较了ffill-ed 和bfill-ed 的值并用掩码赋值:

但是,如果任何 0 值后面不跟 1,这将无济于事。考虑到这种情况,还有什么更优雅的解决方案?

0 投票
1 回答
36 浏览

python - 参考 ID 列向前填充

假设我有一个如下数据框:

我想前向填充列Total MarksPrevious Marks以便对于特定Roll No的空值被它们之前出现的值替换。

例如,在Total Marks列中,Roll No 1001 的值是5952005 年、NaN2006 年、5972007 年和NaN2008 年的值。我希望将 2006 年 1001 的空值替换为其先前填充的分数(即 2005 年的分数),将 2007 年的空值替换为 2008 年的分数。如果没有找到之前的值,则将其设为NaN。列应用相同的逻辑Previous Marks

以上述格式前向填充后,我的最终数据帧应如下所示:

我在 StackOverflow、GeeksForGeeks 和 pandas 文档中也为 pandasffil()函数提到了几个解决方案,但没有太大帮助。有什么想法可以实现吗?

0 投票
0 回答
10 浏览

pandas-groupby - 防止 Pandas groupby.ffill 创建新列和展平 MultiIndex 列

对于 Pandas 0.24 或更高版本,我看到以下令人讨厌的非向后兼容行为groupby.ffill. 基本上,如果您将其应用于具有 MultiIndex 索引和 MultiIndex 列的 DataFrame,将会有

  1. 对应于groupby参数创建的新列(GROUP下面示例中的列),以及
  2. 列展平为元组。((NAME, Jane)在下面的例子中)

具有所需输出的 ​​Pandas 0.21 或更低版本都不会出现问题:

为了帮助重现该案例,您可以使用以下代码创建原始代码df

我试图设置as_index=Falsegroupby(). 它不会改变输出。

所以问题是如何使用 Pandas 0.24 或更高版本获得所需的输出?

0 投票
4 回答
171 浏览

python - 根据 Python 中特定列的值替换缺失值

我想根据已提交列的值替换缺失值。

在下面找到我所拥有的:

国家 已提交 年龄12 年龄14
2018 1 267
2019
2020 1 244 203
2018 ALB 1 163 165
2019 ALB 1
2020 ALB 1 161
2018 GER 1 451 381
2019 GER
2020 GER 1 361 321

这是我想要的:

国家 已提交 年龄12 年龄14
2018 1 267
2019 267
2020 1 244 203
2018 ALB 1 163 165
2019 ALB 1
2020 ALB 1 161
2018 GER 1 451 381
2019 GER 451 381
2020 GER 1 361 321

我尝试使用命令 df.fillna(axis=0, method='ffill') 但这将所有值 NaN 替换为之前的值,但这不是我想要的,因为如果“提交”列,某些值应保留为 NaN值为 1。

只有当相应的“提交”值为“NaN”时,我才想更改前一行的值。

谢谢