首页 > 解决方案 > 从数组中的每一列中减去不同的数字

问题描述

假设我在 Python 中有以下数组:

x = np.array(([1,2,3,4],[5,6,7,8],[9,10,11,12]))
x

看起来像:

array([[ 1,  2,  3,  4],
       [ 5,  6,  7,  8],
       [ 9, 10, 11, 12]])

我有一个数组mu,它是数组每一列的平均值x

mu = x.mean(axis =0)

看起来像:

array([5., 6., 7., 8.])

现在,我想要一个新数组x_demean,其中第一列减去它自己的平均值,第二列减去它自己的平均值,依此类推。结果应如下所示:

array([[ -4,  -4,  -4,  -4],
       [ 0,  0,  0,  0],
       [ 4,  4,  4,  4])

标签: python

解决方案


x-mu是您获得想要的一切所需的一切。

如果您希望输出严格为整数,请执行(x-mu).astype(int)

输出

array([[-4, -4, -4, -4],
       [ 0,  0,  0,  0],
       [ 4,  4,  4,  4]])

推荐阅读