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

平均分组2D numpy数组

云昊阳
2023-03-14
问题内容

我试图通过取元素的平均值将numpy数组分组为较小的大小。例如,将100x100阵列中的平均5x5子阵列的foreach平均值创建20x20大小的阵列。由于需要处理大量数据,这是一种有效的方法吗?


问题答案:

我已经尝试过使用较小的阵列,因此请与您的阵列进行测试:

import numpy as np

nbig = 100
nsmall = 20
big = np.arange(nbig * nbig).reshape([nbig, nbig]) # 100x100

small = big.reshape([nsmall, nbig//nsmall, nsmall, nbig//nsmall]).mean(3).mean(1)

6x6-> 3x3的示例:

nbig = 6
nsmall = 3
big = np.arange(36).reshape([6,6])
array([[ 0,  1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10, 11],
       [12, 13, 14, 15, 16, 17],
       [18, 19, 20, 21, 22, 23],
       [24, 25, 26, 27, 28, 29],
       [30, 31, 32, 33, 34, 35]])

small = big.reshape([nsmall, nbig//nsmall, nsmall, nbig//nsmall]).mean(3).mean(1)

array([[  3.5,   5.5,   7.5],
       [ 15.5,  17.5,  19.5],
       [ 27.5,  29.5,  31.5]])


 类似资料:
  • 问题内容: 我有一个这样的数据框: 我想计算每个集群每个组织的平均时间。 预期结果: 我不知道如何在熊猫中做到这一点,有人可以帮忙吗? 问题答案: 如果你想先对组合取平均值,然后再对cluster组取平均值 如果你不仅仅希望价值观,那么你可以 你可以groupby上再取

  • 这是我的第一篇帖子。我正在编写一个程序,从四个输入框中获取输入,求出这四个输入框的总和,并求出平均值。当我这样做的时候,我得到了一个错误,有人能指出我哪里出了错。谢谢

  • 这是我被要求遵循的提示。 编写一个名为平均值的方法,该方法接收一个测试等级数组,并返回类平均值的字母等级。职等范围如下: > 80 70个 60 平均的 使用以下方法标题:public static char average(int[]grades) 这是我应该遵循的输出示例。 你想考几级?10 进入一年级:70进入二年级:87进入三年级:95进入四年级:80进入五年级:80进入六年级:78进入七

  • 我正在为课堂做一个程序。到目前为止,我已经完成了1-3个,但我不知道如何实现4和5个。我已经被困在这上面一段时间了。必须使用两个类。 null 其他类

  • 我正在尝试使用用户输入将数字放入一个数组,然后找到这些数字的平均值,也找到哪些数字大于平均值。这些数字进入一个数组,但当我试图求平均数时,我无法求出平均数,以及哪些数字大于平均数,因为对于试图求出大于平均数的数字的部分,并非所有变量都是可见的。但是,当我允许这个部分看到所有的变量(don't But{}围绕某些部分)时,它会找到每一个数的平均值。现在,它为每个数字打印平均值,而为大于平均值的数字打

  • 返回两个或两个以上数字的的平均值。 使用 Array.reduce() 将每个值累加到初始值 0 的累加器, 除以数组长度 length 。 const average = (...nums) => [...nums].reduce((acc, val) => acc + val, 0) / nums.length; average(...[1, 2, 3]); // 2 average(1,