gpt4 book ai didi

python - 高效的二维数组处理

转载 作者:行者123 更新时间:2023-12-01 23:36:06 24 4
gpt4 key购买 nike

A 为大小为NxL 的二维矩阵。每一行 A[i] 都应该独立处理,这样每一行中长度为 C 的连续 block 中的所有条目都将替换为 block 中条目的平均值。具体来说,我正在寻找一种有效的方法来替换每个 i-th 行中的每个 k-th block A[i][kC:(k+1 )C] 通过 mean(A[i][kC:(k+1)C]) * ones(length=C)

示例

A=[[1,3,5,7], [7,5,3,1]] 应转换为 A=[[2,2,6, 6],[6,6,2,2]] 如果 C=2

最佳答案

您可以将数据重新整形为 block ,取平均值并使用广播将数据分配回数组

 B = A.reshape(-1, C)
B[...] = B.mean(-1)[:, None]

之后 A 包含所需的结果,因为 B 不是副本而是 View 。

关于python - 高效的二维数组处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59473397/

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