【问题标题】:inserting numpy data into a bigger array of zeros将 numpy 数据插入到更大的零数组中
【发布时间】:2016-10-09 01:06:07
【问题描述】:

我想从另一个更大的零数组的开头放置任意大小的 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]

我也尝试过使用place函数

np.place(b,b>len(a),a)

但没有任何改变矩阵。

[0,0,0,0,0]

如果有人已经在这方面工作,那么他/她现在的帮助会非常好。

【问题讨论】:

  • 这个问题有点难理解,你期望的行为是什么,哪个命令没有做到这一点?

标签: python arrays numpy


【解决方案1】:

您错误地使用了np.put

np.put(b, a, a)
#      ^  ^  ^
#      |  |  |
# Target  |  |
#   Indices  |
#       Values

您告诉np.puta 的值放在a 定义的位置。

改为:

np.put(b, np.arange(len(a)), a)

或:

b[:len(a)] = a

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 1970-01-01
    • 2013-09-08
    • 1970-01-01
    • 2015-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多