【发布时间】:2019-07-18 05:52:51
【问题描述】:
假设我们有一个变量(形状(1,N,a,b,c)),它存储形状为(a,b,c)的numpy数组。我首先想用零初始化这个变量
import numpy as np
N = 5
a = 20
b = 40
c = 4
storage = np.zeros(1, N, a, b, c)
# collect new arrays
while True:
values = np.random.random((a, b, c)) # np.array with shape (a, b, c)
save_values_to_storage(values)
函数 save_values_to_storage(values) 的目标是填充存储中的值。在第一个循环中,存储的 (1, N,...) 值将用values 填充。在下一个循环中,存储的 (1, N, ... ) 值将用values 填充,之前的值将被移动到 (1, N-1, ...)。等等。如果第一个存储的 values 到达第一个位置 (1, 1,...) 并且新的 values 被检索并存储第一个 values 将被丢弃,以便新的 values 存储在位置 (1 , N,...) 以及所有其他按其位置减少的值。
我不知道如何实现这种行为。有点像 numpy 数组的队列。所以我的问题是如何实现 函数
save_values_to_storage(values)?
编辑:看起来deque 很相似。但我不知道如何将它们用于 numpy 数组
【问题讨论】: