gpt4 book ai didi

python - 在 numpy 中缩放(或规范化)这样的数组?

转载 作者:太空宇宙 更新时间:2023-11-04 10:45:59 25 4
gpt4 key购买 nike

在 numpy 中,原始数组的形状是这样的 (2,2,2)

[[[0.2,0.3],[0.1,0.5]],[[0.1,0.3],[0.1,0.4]]]

我想缩放数组,使 a 维度的最大值为 1,如下所示:

由于max([0.2,0.1,0.1,0.1])是0.2,1/0.2是5,所以对于int元组的第一个元素,乘以5。

由于max([0.3,0.5,0.3,0.4])为0.5,1/0.5为2,所以对于int元组的第二个元素,乘以2

所以最后的数组是这样的:

[[[1,0.6],[0.5,1]],[[0.5,0.6],[0.5,0.8]]]

我知道如何在 numpy 中将一个数组与一个整数相乘,但我不确定如何将数组与不同的因子相乘。有人对此有想法吗?

最佳答案

如果您的数组 = a:

>>> import numpy as np
>>> a = np.array([[[0.2,0.3],[0.1,0.5]],[[0.1,0.3],[0.1,0.4]]])

你可以这样做:

>>> a/np.amax(a.reshape(4,2),axis=0)
array([[[ 1. , 0.6],
[ 0.5, 1. ]],

[[ 0.5, 0.6],
[ 0.5, 0.8]]])

关于python - 在 numpy 中缩放(或规范化)这样的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17292322/

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