zoukankan      html  css  js  c++  java
  • 06数组广播运算

    # -*- coding: utf-8 -*-
    import numpy as np
    
    #广播运算: 用于数组的形状(也就是行列数不同时需要进行的计算)
    # =============================================================================
    #广播规则:
    #1.各数组输入的维度可以不相等,但必须保证从左到右的维度值相等;
    #2.如果对应维度值不相等,必须保证其中一个为1;
    #3.各输入数组都向其shape(行列数)最长的数组看齐,shape中不足的部分都通过在前面加1.
    # =============================================================================
    
    
    
    #各输入数组的维度一致,对应维度值相等
    arr6 = np.arange(12).reshape(3,4)
    #print(arr6)
    arr7 = np.arange(101,113).reshape(3,4)
    #print(arr7)
    #print("3*4的二维数组的矩阵运算(对应值相加):
    ",arr6+arr7) #对应位置相运算
    
    #各输入数组维度不一致,对应维度值不相等
    arr8 = np.arange(60).reshape(5,4,3) #控制生成5个4行3列的数组
    #print(arr8)
    arr9 = np.arange(12).reshape(4,3)
    print(arr9)
    #print("维度不一致但是末尾的维度值一致(数组对应值相加): 
    ",arr8+arr9)
    
    arr10 = np.arange(60).reshape(5,4,3)
    #print(arr10)
    arr11 = np.arange(4).reshape(4,1)
    #print("4行1列的数组:
    ",arr11)   #ndim()方法查看数组的维度是多少,也就是几行几列
    #print('维数不一致,纬度值也不一致,但是纬度值至少有一个为1:
    ',arr10+arr11) 
    #在上例是对应列相加,也就是第一列上出现对应位置相加
    
    #加1补齐
    arr12 = np.array([5,15,25])
    print(arr12)
    print('arr12的维度自动补齐为(1,3): 
    ',arr12+arr9)  #arr12的一行三列数组会与arr9的每一行的对应列相加
  • 相关阅读:
    LeetCode 3 Longest Substring Without Repeating Characters
    //……关于前后端分离与不分离
    //……关于HTTP与HTTPS
    //……关于报文
    <node>……express的中间件……//
    <git>……git的基本使用……//
    <mongoose>……find与findOne的区别……//
    //……关于TCP三次握手与四次挥手
    C#文件操作
    梯度下降的简单例子
  • 原文地址:https://www.cnblogs.com/chenruhai/p/12464244.html
Copyright © 2011-2022 走看看