标签: nan

快速检查NumPy中的NaN

我正在寻找检查np.nanNumPy数组中NaN()出现的最快方法X.np.isnan(X)是不可能的,因为它构建了一个布尔形状的数组X.shape,这可能是巨大的.

我试过了np.nan in X,但这似乎不起作用,因为np.nan != np.nan.有没有一种快速且节省内存的方法来完成这项工作?

(对于那些会问"多么巨大"的人:我说不出来.这是图书馆代码的输入验证.)

python numpy nan

107
推荐指数
6
解决办法
11万
查看次数

如何用pandas DataFrame中的先前值替换NaN?

假设我有一个带有NaNs 的DataFrame :

>>> import pandas as pd
>>> df = pd.DataFrame([[1, 2, 3], [4, None, None], [None, None, 9]])
>>> df
    0   1   2
0   1   2   3
1   4 NaN NaN
2 NaN NaN   9
Run Code Online (Sandbox Code Playgroud)

我需要做的是用它上面的同一列中NaN的第一个非NaN值替换每个值.假设第一行永远不会包含a NaN.因此,对于前面的示例,结果将是

   0  1  2
0  1  2  3
1  4  2  3
2  4  2  9
Run Code Online (Sandbox Code Playgroud)

我可以逐个循环遍历整个DataFrame,逐个元素并直接设置值,但是有一种简单(最佳无循环)的方法来实现这一目标吗?

python nan dataframe python-3.x pandas

103
推荐指数
8
解决办法
7万
查看次数

C/C++ NaN常数(字面值)?

这可以分配NaN给一个doublefloat在C/C++中吗?就像你在JavaScript中一样:a = NaN.所以稍后您可以检查变量是否为数字.

c++ nan

100
推荐指数
4
解决办法
8万
查看次数

在Java中,NaN是什么意思?

我有一个程序试图缩小double到所需的数字.我得到的输出是NaN.

NaNJava 中的含义是什么?

java nan

98
推荐指数
6
解决办法
26万
查看次数

在python中分配变量NaN而不是numpy

大多数语言都有一个NaN常量,您可以使用它来为变量赋值NaN.python可以不使用numpy吗?

python constants nan

97
推荐指数
5
解决办法
14万
查看次数

为什么(inf + 0j)* 1计算为inf + nanj?

>>> (float('inf')+0j)*1
(inf+nanj)
Run Code Online (Sandbox Code Playgroud)

为什么?这在我的代码中造成了一个讨厌的错误。

为什么1乘法身份不给(inf + 0j)

python nan ieee-754

93
推荐指数
3
解决办法
3381
查看次数

NaN和None之间有什么区别?

我正在使用pandas读取csv文件的两列,readcsv()然后将值分配给字典.列包含数字和字母的字符串.偶尔会出现一个单元格为空的情况.在我看来,读取到该字典条目的值应该是None,而是nan分配.当然,None它更具描述性,因为它具有空值,而nan只是说读取的值不是数字.

我的理解是否正确,None和之间的区别是nan什么?为什么nan分配而不是None

此外,我的字典检查任何空单元格一直在使用numpy.isnan():

for k, v in my_dict.iteritems():
    if np.isnan(v):
Run Code Online (Sandbox Code Playgroud)

但是这给了我一个错误,说我不能使用这个检查v.我想这是因为要使用整数或浮点变量,而不是字符串.如果是这样,我该如何检查v"空单元格"/ nan案例?

python numpy nan pandas

83
推荐指数
2
解决办法
6万
查看次数

安静的NaN和信号NaN有什么区别?

我读过关于浮点的内容,我知道NaN可能来自操作.但我无法完全理解这些概念是什么.有什么区别?

在C++编程期间可以生成哪一个?作为程序员,我可以编写一个程序来导致sNaN吗?

floating-point nan ieee-754

81
推荐指数
2
解决办法
2万
查看次数

如何在matplotlib中使用imshow将NaN值绘制为特殊颜色?

我试图在matplotlib中使用imshow将数据绘制为热图,但是一些值是NaN.我希望将NaN渲染为色彩映射中找不到的特殊颜色.

例:

import numpy as np
import matplotlib.pyplot as plt
f = plt.figure()
ax = f.add_subplot(111)
a = np.arange(25).reshape((5,5)).astype(float)
a[3,:] = np.nan
ax.imshow(a, interpolation='nearest')
f.canvas.draw()
Run Code Online (Sandbox Code Playgroud)

结果图像出乎意料地全是蓝色(喷射色图中的最低颜色).但是,如果我这样做的情节:

ax.imshow(a, interpolation='nearest', vmin=0, vmax=24)
Run Code Online (Sandbox Code Playgroud)

- 然后我得到了更好的东西,但是NaN值被绘制成与vmin相同的颜色......是否有一种优雅的方式可以设置NaN用特殊颜色绘制(例如:灰色或透明)?

python matplotlib nan

80
推荐指数
2
解决办法
4万
查看次数

如何在pandas数据帧中将单元格设置为NaN

我想用NaN替换数据帧列中的错误值.

mydata = {'x' : [10, 50, 18, 32, 47, 20], 'y' : ['12', '11', 'N/A', '13', '15', 'N/A']}
df = pd.DataFrame(mydata)

df[df.y == 'N/A']['y'] = np.nan
Run Code Online (Sandbox Code Playgroud)

虽然,最后一行失败并抛出警告,因为它正在处理df的副本.那么,处理这个问题的正确方法是什么?我已经看过许多使用iloc或ix的解决方案但是在这里,我需要使用布尔条件.

python nan pandas

76
推荐指数
5
解决办法
13万
查看次数