我想把任何大小的numpy数组的数据从另一个更大的零数组的开头放进去。
查看 numpy 文档,我找到了函数 np.put,但它给了我这样的问题:
附
import numpy as np
b = np.zeros(5)
a = np.range(1,4)
np.put(b,a,a)
在 B 中产生类似的东西
[0,1,2,3,0]
我也尝试使用地方功能
np.place(b,b>len(a),a)
但没有什么能改变矩阵。
[0,0,0,0,0]
如果有人已经在这方面工作过,他/她的帮助现在会非常好。
您不正确地使用了np.put
。
np.put(b, a, a)
# ^ ^ ^
# | | |
# Target | |
# Indices |
# Values
您告诉np.put
将a
的值放置在a
定义的位置。
相反:
np.put(b, np.arange(len(a)), a)
或:
b[:len(a)] = a