【问题标题】:Summing everything except nan总结除nan之外的所有内容
【发布时间】:2018-03-30 22:14:14
【问题描述】:

我目前有一个小程序,用 nan 替换我的 numpy 数组中的所有 0。我只是想知道如何对这个数组中除 nan 之外的所有内容求和。这是我所拥有的:

import numpy as np
x = np.array([[0,1,1,2], [0, 5, 0, 0], [2, 0,3,3]], dtype=np.float64)
x[x==0] = np.nan
x

【问题讨论】:

  • "在我的 numpy 数组中添加除零以外的所有内容" - 首先,不,您没有从总和中排除零。其次,y+2 没有对xy 做任何事情;你只是把结果扔掉。
  • 为什么你不想加 0...它不会以任何方式影响你的总和。
  • @user2357112 我实际上是这么想的,但我是编码新手,所以我认为它有一些功能,并得到了某人的推荐。我实际上只是想排除数组中的那些地方,不管它们是多少,所以我想我捏造了这个
  • @JACKZHANG 我实际上试图排除数组中的这些位置,而不管数量如何,它们恰好在其中为零 - 我想这会把所有东西都扔掉哈哈,哎呀。新来的
  • 嗨@user2357112 我已经编辑了这个以反映我的需要,如果你有任何解决方案,请告诉我!

标签: python python-3.x python-2.7 numpy


【解决方案1】:

要对数组中的所有元素求和,同时将所有 nans 视为零,请执行以下操作:

np.nansum(x)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-11
    • 2015-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多