【问题标题】:i'm looking for a spacific function in numpy- python我正在寻找 numpy-python 中的特定函数
【发布时间】:2021-04-10 00:28:54
【问题描述】:

首先,我创建了一个名为 temp_change 的二维数组,表示温度变化 在 2 周的每个小时内。数组的形状应该是 (14, 24), 其中每一行代表一天,列号代表小时 白天,我使用命令 np.random.normal 来填充它。

之后,我需要创建一个名为 temp_total 的新二维数组,其形状与 temp_change,包括每小时的总温度。 例如,
temp_total[0, 0] = initial_temp + temp_change[0,0]
temp_total[0, 1] = temp_total[0, 0] + temp_change[0,1]

有什么方法可以使用 numpy 函数而不使用两个循环? 谢谢!

【问题讨论】:

  • 首先修复您的基本格式和间距。然后尝试一下。如果失败,请返回 MCVE。 SO 不是免费的编码服务。

标签: python arrays numpy


【解决方案1】:

这就是所谓的“累计金额”。 np.cumsum 可以。注意它只做一个轴,所以我建议你先reshape到一个维度:

temp1 = initial_temp.reshape((336,1))
temp2 = np.cumsum(temp1)
temp_total = temp2.reshape((14,24))

您可以在一行中完成所有操作。我扩展了它以便于调试。 ;)

请注意,如果您每天都从头开始,那么增量不会结转,那么您就不需要重塑。

【讨论】:

    猜你喜欢
    • 2015-08-12
    • 2015-03-10
    • 2017-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多