我想从另一个更大的零数组的开头放置任意大小的 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
关于python - 将 numpy 数据插入到更大的零数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37707992/