我有一个二维的numpy数组。此数组中的一些值为NaN
。我想使用此数组执行某些操作。例如考虑数组:
[[ 0. 43. 67. 0. 38.]
[ 100. 86. 96. 100. 94.]
[ 76. 79. 83. 89. 56.]
[ 88. NaN 67. 89. 81.]
[ 94. 79. 67. 89. 69.]
[ 88. 79. 58. 72. 63.]
[ 76. 79. 71. 67. 56.]
[ 71. 71. NaN 56. 100.]]
我试图每次取一行,以相反的顺序对其进行排序,以从行中获取最多3个值并取其平均值。我试过的代码是:
# nparr is a 2D numpy array
for entry in nparr:
sortedentry = sorted(entry, reverse=True)
highest_3_values = sortedentry[:3]
avg_highest_3 = float(sum(highest_3_values)) / 3
这不适用于包含的行NaN
。我的问题是,是否有一种快速的方法可以将NaN
2D
numpy数组中的所有值都转换为零,以便我在排序和其他尝试做的事情上没有问题。
这应该工作:
from numpy import *
a = array([[1, 2, 3], [0, 3, NaN]])
where_are_NaNs = isnan(a)
a[where_are_NaNs] = 0
在上述情况下,where_are_NaNs为:
In [12]: where_are_NaNs
Out[12]:
array([[False, False, False],
[False, False, True]], dtype=bool)
我从. csv文件读取数据到熊猫数据框如下。对于其中一个列,即,我想将列类型指定为。问题是系列缺少/空值。 当我在读取.csv时尝试将列强制转换为整数时,我得到: 或者,在阅读以下内容后,我尝试转换列类型,但这次我得到: 我如何处理这个问题?
给定如下所示的数据帧 您可能会注意到,这里所有的列都已转换为类型。是否有办法将某些列转换为? 尝试了以下方法 这会引发错误 阅读有关可为空的整数数据类型的信息,然后重试 这会引发错误
问题内容: 我在互联网上找到了一种将RGB值转换为HSV值的方法。不幸的是,当值是R = G = B时,由于0/0操作,我得到的是NaN。 您是否知道Java中是否存在用于此转换的实现方法,或者当我获得0/0除法以获取正确的HSV值时该怎么办? 这是我的方法,它是根据Internet上的一些代码改编而成的: 问题答案: 我很确定您想要的是RGBtoHSB
问题内容: 我试图在我的数字列中附加一些alphabt来获取记录。但即时通讯收到错误,我尝试了强制转换和转换功能。 例如 这里StandardCost是一个数字字段,但是当我获取记录时遇到错误,请看看。 问题答案: 我认为应该 或者
问题内容: 我收到 ValueError:无法将float NaN转换为整数 ,原因如下: “ x”显然是csv文件中的一列,但我无法在文件中发现任何 浮点NaN ,也无法理解其含义。 当我将列读为String时,它的值就像-1,0,1,… 2000,对我来说,它们看起来都非常漂亮。 当我将列读为float时,可以加载它。然后它显示值为-1.0,0.0等,仍然没有任何NaN-s 我尝试使用 e
我想将时间间隔配置存储到数据库中,如下所示: 但是我不知道如何将例如值转换为LocalDateTime,因为我想使用此值来计算SQL查询的时间间隔。 将此值转换为LocaLDateTime的正确方法是什么?