gpt4 book ai didi

python - 在索引处每行插入一个以上的值

转载 作者:行者123 更新时间:2023-12-04 01:30:37 25 4
gpt4 key购买 nike

我正在尝试向量化以下操作:

  • 将一个较小的数组放入一个较大的数组中,从而使每一行的索引随着另一个数组的变化而变化。

示例数据:

array_large = [[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0]] 
array_small = [[1,2],[3,4],[5,6]]

array_index = [[1],[0],[2]] #*random index

期望的输出:array_combined = [[0,1,2,0,0],[3,4,0,0,0],[0,0,5,6,0]]

到目前为止,我一直在让它与 apply_along_axis 一起工作 - 但我想知道是否有更有效的方法来解决这个问题。我似乎无法全神贯注于解决问题所需的索引。

最佳答案

我们可以使用advanced indexing这里:

array_large[np.arange(array_large.shape[0])[:,None], array_index+[0,1]] = array_small

或者更好的是,概括 array_small 可能具有的任何形状:

i = np.arange(array_large.shape[0])[:,None]
j = array_index+np.arange(array_small.shape[1])
array_large[i,j] = array_small

print(array_large)

array([[0, 1, 2, 0, 0],
[3, 4, 0, 0, 0],
[0, 0, 5, 6, 0]])

关于python - 在索引处每行插入一个以上的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61102939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com