当前位置: 首页 > 面试题库 >

numpy整数nan

胡鸿志
2023-03-14
问题内容

有没有一种方法可以将NaN存储在整数的Numpy数组中?我得到:

a=np.array([1],dtype=long)
a[0]=np.nan

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: cannot convert float NaN to integer

问题答案:

不,至少在当前版本的NumPy中不能。Anan仅对 float数组的特殊值。

有人在谈论引入一个特殊的位,该位将允许非浮点数组存储实际上与a相对应的内容nan,但到目前为止(2012/10),这仅仅是个话题。

同时,您可能需要考虑使用该numpy.ma程序包:您可以使用特殊numpy.ma.masked值表示无效值,而不是选择像-99999这样的无效整数。

a = np.ma.array([1,2,3,4,5], dtype=int)
a[1] = np.ma.masked
masked_array(data = [1 -- 3 4 5],
             mask = [False  True False False False],
       fill_value = 999999)


 类似资料:
  • 问题内容: 有了这段代码,我得到了这个答案。为什么我得到负值? 问题答案: 在您的平台上,np.arange返回dtype’int32’的数组: 数组的每个元素都是32位整数。平方导致结果不适合32位。结果被裁剪为32位,并且仍然解释为32位整数,这就是为什么看到负数的原因。 编辑: 在这种情况下,可以通过在平方之前构造dtype’int64’数组来避免整数溢出: 请注意,使用numpy时,发现的

  • 问题内容: 我有一个二进制数组,我想将其转换为整数列表,其中每个int是该数组的一行。 例如: 我想转换成。 问题答案: 我曾经在这里问过类似的问题。这是我的回答,适合您的问题:

  • 问题内容: 我正在使用Python工作,并且我有一个像这样的NumPy数组: 如何将其扩展为以下内容? 这些只是一些示例数组,实际上我将调整几种大小的数组,而不仅仅是这些。 我是新来的,我似乎无法全神贯注于需要做的事情。 问题答案: @KennyTM的答案非常巧妙,确实适用于您的情况,但作为替代方案,可以为扩展数组提供更多的灵活性try : 因此,这完成了沿一个轴的重复,以使其沿多个轴(如您所愿)

  • 问题内容: 问题: 给定一个字符串数据数组 我想要一个返回索引数据集的函数 和一个查询表 这样 是真的。请注意,和都可以进行排列,以使上述内容成立并且很好(即,的顺序不必等于中的首次出现的顺序)。 解决方法: 我目前有以下慢速解决方案 有更快的方法吗?我觉得我没有在这里充分利用numpy的潜力。 问题答案: 您可以使用以下参数: 如果愿意,可以从以下两个数组重建原始数组: 如果使用熊猫,将实现相同

  • 问题内容: 我在创建numpy数组的numpy数组时遇到问题。我将在一个循环中创建它: 所需结果: 实际结果: 可能吗?我不知道数组的最终尺寸,因此无法使用固定尺寸对其进行初始化。 问题答案: 永远不要在循环中追加数组:与基本的Python相比,这是NumPy非常不擅长的一项操作。这是因为您要对每个数据进行完整复制,这将花费您二次时间。 相反,只需将您的数组附加到Python列表中,并在最后进行转

  • 问题内容: 我正在尝试将分类变量的字符串数组转换为分类变量的整数数组。 例如 我意识到可以通过循环完成此操作,但我想有一种更简单的方法。谢谢。 问题答案: 好吧,这是一个hack …但是有帮助吗?