我有一个形状为 (1, 100)
的数组,即:
[[1. 2. 3. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 55.]]
我想在末尾添加一些东西(例如 123
之类的数字)并删除第一个元素,这样我将拥有:
[[2. 3. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 55. 123.]]
其中保留了原来的形状(1, 100)
我正在尝试:
x_pred = np.append(x_pred, next_index, axis=1)
(x_pred
是一个(1, 100)
数组,next_index
是一个标量)
但是我得到一个错误:
ValueError: all the input arrays must have same number of dimensions
我做错了什么?
最佳答案
您可以使用 roll
执行此操作。
a = np.zeros((1,10))
#roll and replace
a[0] = np.roll(a[0],-1)
a[0][-1] = new_value
关于python - 如何添加到 numpy 数组的末尾并从头开始删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56257772/