gpt4 book ai didi

python - 对 NumPy 数组中的每 x 个数字进行平均

转载 作者:行者123 更新时间:2023-11-30 22:43:19 25 4
gpt4 key购买 nike

假设我有一个包含 100 个随机数的数组,名为 random_array。我需要创建一个数组,对 random_array 中的 x 个数字进行平均并存储它们。

因此,如果我有 x = 7,那么我的代码会找到前 7 个数字的平均值并将它们存储在我的新数组中,然后是下一个 7,然后是下一个 7...

我目前有这个,但我想知道如何向量化它或使用一些 python 方法:

random_array = np.random.randint(100, size=(100, 1))
count = 0
total = 0
new_array = []
for item in random_array:
if (count == 7):
new_array.append(total/7)
count = 0
total = 0
else:
count = count + 1
total = total + item
print new_array

最佳答案

这是标准技巧

def down_sample(x, f=7):
# pad to a multiple of f, so we can reshape
# use nan for padding, so we needn't worry about denominator in
# last chunk
xp = np.r_[x, nan + np.zeros((-len(x) % f,))]
# reshape, so each chunk gets its own row, and then take mean
return np.nanmean(xp.reshape(-1, f), axis=-1)

关于python - 对 NumPy 数组中的每 x 个数字进行平均,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41815361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com