相关疑难解决方法(0)

如何在Pandas数据帧的列中用Zero替换所有NaN值

我有一个数据框如下

      itm Date                  Amount 
67    420 2012-09-30 00:00:00   65211
68    421 2012-09-09 00:00:00   29424
69    421 2012-09-16 00:00:00   29877
70    421 2012-09-23 00:00:00   30990
71    421 2012-09-30 00:00:00   61303
72    485 2012-09-09 00:00:00   71781
73    485 2012-09-16 00:00:00     NaN
74    485 2012-09-23 00:00:00   11072
75    485 2012-09-30 00:00:00  113702
76    489 2012-09-09 00:00:00   64731
77    489 2012-09-16 00:00:00     NaN
Run Code Online (Sandbox Code Playgroud)

当我尝试将一个函数应用于Amount列时,我得到以下错误.

ValueError: cannot convert float NaN to integer
Run Code Online (Sandbox Code Playgroud)

我尝试使用数学模块中的.isnan应用函数我已经尝试过pandas .replace属性我尝试了pandas 0.9中的.sparse数据属性我也尝试过函数中的NaN == NaN语句.我也看过这篇文章如何在R数据帧中用零替换NA值?同时看一些其他文章.我尝试的所有方法都没有工作或者没有认识到NaN.任何提示或解决方案将不胜感激.

python dataframe pandas

393
推荐指数
11
解决办法
69万
查看次数

Pandas 用 1 替换数据帧的所有非 NaN 条目,单独保留 NaN

如何将 Pandas 数据框中的所有非 NaN 值替换为 1 但单独保留 NaN 值?几乎就是我正在寻找的。问题是它也使 NaN 值为 0。然后我必须将它们重置为 NaN 之后。

我想要这个

    a    b
0  NaN  QQQ
1  AAA  NaN
2  NaN  BBB
Run Code Online (Sandbox Code Playgroud)

成为这个

    a    b
0  NaN   1
1   1   NaN
2  NaN   1
Run Code Online (Sandbox Code Playgroud)

这段代码几乎就是我想要的

newdf = df.notnull().astype('int')
Run Code Online (Sandbox Code Playgroud)

上面的代码是这样做的

    a    b
0   0   1
1   1   0
2   0   1
Run Code Online (Sandbox Code Playgroud)

python nan dataframe pandas

2
推荐指数
1
解决办法
563
查看次数

标签 统计

dataframe ×2

pandas ×2

python ×2

nan ×1