[numpy]matrix和array的乘和加

本文详细介绍了在NumPy中如何进行矩阵与数组的基本运算,包括乘法与加法的操作方式,并探讨了矩阵与数组之间的混合使用场景及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 对于数组array

  1. 就是对应位置的元素相乘:

    X1 = np.array([[1,2], [3, 4]])
    X2 = X1
    print X2*X1
    
    [[ 1  4]
     [ 9 16]]
    
  2. 就是对应位置的相加:

    X1 = np.array([[1,2], [3, 4]])
    X2 = X1
    print X2+X1
    
    [[2 4]
     [6 8]]
    

2. 对于矩阵matrix

  1. 就是矩阵的点乘:

    X1 = np.matrix([[1,2], [3, 4]])
    X2 = X1
    print X2*X1
    
    [[ 7 10]
     [15 22]]
    
  2. 有两种情况,第一种是X1与X2的大小一致,就是普通的矩阵相加,即对应位置相加:

    X1 = np.matrix([[1,2], [3, 4]])
    X2 = X1
    print X2+X1
    
    [[2 4]
     [6 8]]
    

    第二种情况是n*1的X1 + m*1的X2(或者反过来),就会得到n*m的矩阵:

    X1 = np.matrix([[1,2,3]])
    X2 = np.matrix([[1,2,3,4]]).T
    print X2+X1
    
    [[2 3 4]
     [3 4 5]
     [4 5 6]
     [5 6 7]]
    

3. 混用情况

在numpy中存在很多的matrix和array 运算符混用的情况,程序也能通过,但这样很不好,尽量按照以上原则使用。

如果2维的array想要进行矩阵的点乘运算,可以用np.dot(X1, X2)

如果matrix想要进行对应位置的乘,可以用np.multiply(X2,X1)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值