问题标签 [fillna]

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 投票
3 回答
674 浏览

python - 替换/填充某些特定行的 na 值

东风:

输出

address city BlockOf13thSt Treasure Isla Lincoln Presidio Duboce Park San Francisco Twin Peaks San Francisco Bernal Heights San Francisco Holly Courts San Francisco Ocean Beach San Francisco Maiden Ln New York Avenue N New York

Pandas 中是否有 SQL (IN) 之类的语法?地址 IN(Duboce Park、Twin Peaks、Bernal Heights、Holly Courts/Ocean Beach)并替换/填充“旧金山”和“纽约”

谢谢

0 投票
1 回答
127 浏览

python - fillna pandas 不会影响原始数据框

我正在尝试填充特定列的缺失值,但尽管我正在使用原始数据框并没有改变inplace=True 我试过这个:

和这个:

编辑:这行得通

0 投票
1 回答
1093 浏览

python-3.x - pandas.Dataframe() 混合数据类型和奇怪的 .fillna() 行为

我有一个数据框,它有两种 dtype:对象(期望字符串)和日期时间(期望日期时间)。我不明白这种行为以及它为什么会影响我的 fillna()。

在此处输入图像描述

使用 inplace=True 调用 .fillna() 会擦除表示为 int64 的数据,尽管使用 .astype(str) 进行了更改

在此处输入图像描述

调用 .fillna() 没有它什么都不做。

在此处输入图像描述

我知道 pandas / numpy dtypes 与 python 本机不同,但它是正确的行为还是我得到了一些非常错误的东西?

样本:

在此处输入图像描述

这里既没有出现“NULL”,也没有出现“nan”。添加了 .replace('nan','NULL'),但仍然没有。你能告诉我要找什么吗?非常感谢。

在此处输入图像描述

0 投票
4 回答
34419 浏览

python - Pandas fillna 抛出 ValueError:填充值必须在类别中

描述:这两个特征都属于分类数据类型。我在相同日期集的不同内核中使用此代码工作正常,唯一的区别是功能在 flote64 中。后来我将这些特征 dtypes 转换为分类,因为数据集中的所有特征都代表类别。

下面是代码:

0 投票
1 回答
507 浏览

python - 用列多索引(df.fillna)将数据框中仅一列的“NaN”值替换为最后一个有效值

我正在使用 Python 3.6.5。

这是一个小脚本,用于生成具有一些“NaN”值的多索引数据帧。

我得到这个数据框

我想用最后一个有效值替换“NaN”值,但仅限于一列。例如,我想得到这个(对于名为'X','b'的列)

我试过这个:

但我收到此错误“试图在数据帧的切片副本上设置一个值”

对于具有多列索引的数据框,我找不到任何解决方案。我发现这个链接让我没有希望。(https://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.MultiIndex.fillna.html

有人有想法可以帮助我吗?

0 投票
1 回答
62 浏览

python - 函数不能解释nan值

我试图摆脱数据框中的 NaN 值。我不想用平均值填充 NaN 或进行 ffill,而是想根据列内值的分布来填充缺失值。换句话说,如果一列有 120 行,20 行是 NaN,80 包含 1.0,20 包含 0,0,我想用 1 填充 80% 的 NaN 值。请注意,该列包含浮点数。

我做了一个函数来做到这一点:

但是,当我调用该函数时,它不会更改 NaN 值。

我用 pd.np.nan 填充 NaN 值,但它没有改变任何东西。

我编写的另一个函数几乎相同并且工作正常。在这种情况下,该列包含字符串。

0 投票
1 回答
261 浏览

pandas - 为什么 panda 的 fillna 方法不起作用?

我正在处理这个数据集,其中一列(LotFrontage)在 1460 个中有 259 个 Nan 值。所以当我使用 X.describe() 时,它显示 259 个空值。我试图用 0 填充这些空值。使用 isnull()。一旦我查看结果,所有 Nan 值都会正确填充零。但问题是,当我再次运行 X.describe() 时,它仍然显示 259 个 nan 值。我究竟做错了什么 ?请问有什么帮助吗?

0 投票
1 回答
5465 浏览

python - 填补火花中日期缺失值的优雅方法

让我把这个问题分解成一个更小的部分。我在 PySpark 中有一个 DataFrame,其中有一个格式arrival_date列-date

在对 DataFrame 进行了很多转换之后,我终于希望填写缺失的日期,标记null01-01-1900.

执行此操作的一种方法是将列转换arrival_dateString,然后以这种方式替换缺失值 -df.fillna('1900-01-01',subset=['arrival_date'])最后重新转换此列to_date。这是非常不雅的。

正如预期的那样,以下代码行不起作用,我收到一个错误-

文档说该值必须是以下类型:Int、Long、Float、Double、String、Boolean。

另一种方法是使用withColumn()when()-

有没有办法,我可以通过使用某些功能直接将我选择的日期分配给date格式化的列?

有人有更好的建议吗?

0 投票
1 回答
153 浏览

python - 如何在填充单元格之前和之后填充空白?

我正在尝试按部门属性对我的数据进行分组,然后将其分组后填写数据集中间填充的两个字段(评级和数字)上方和下方的空间。

我曾尝试让 groupby 工作,但无济于事。我的计划是让 groupby 工作,然后应用以下代码来查看是否可以让填充正常工作。

这就是我要开始的:

这就是我要的

有没有动态的方法来做到这一点?

0 投票
1 回答
61 浏览

python - Python Pandas:用算术进行正向填充

我有以下数据框:

应用前向填充后:

print(df.set_index('date').sort_index().fillna(method='ffill').fillna(value=0))

我得到:

我的问题有没有办法用简单的加法来填写?我正在寻找的结果: