• numpy多维数组维度及添加轴的理解


     1 y = np.zeros((3, 4, 5))
     2 
     3 #output:
     4 array([[[0., 0., 0., 0., 0.],
     5         [0., 0., 0., 0., 0.],
     6         [0., 0., 0., 0., 0.],
     7         [0., 0., 0., 0., 0.]],
     8 
     9        [[0., 0., 0., 0., 0.],
    10         [0., 0., 0., 0., 0.],
    11         [0., 0., 0., 0., 0.],
    12         [0., 0., 0., 0., 0.]],
    13 
    14        [[0., 0., 0., 0., 0.],
    15         [0., 0., 0., 0., 0.],
    16         [0., 0., 0., 0., 0.],
    17         [0., 0., 0., 0., 0.]]])

    size=(a,b,c)
    维度==size中参数的个数
    a指最外层1(只看最外层括号)看本层元素个数,本例中指有两层括号的元素个数
    b指只看次层2层括号内本层元素个数,本例中指有一层括号的元素个数
    c指只看3层最内层本层元素个数。,无括号的元素个数。
    **[ ]**代表维度,增加一层括号即增加一维。

    y[:,np.newaxis, : , :] #意思是在第二层添加新的维度,即加一层**[ ]**.对应的shape内多了*"1”*.
    由已知y.shape=(3,4,5),则y[:,np.newaxis, : , :].shape=(3,1,4,5)

    np.newaxis用途:当数组插入新的维度后,shape改变,在做运算时由于braodcasting作用,导致数组沿行复制列向量沿列复制行向量

    沿行复制列向量:[ : ,np.newaxis, : ] #np.newaxis在第1个维度
    沿列复制行向量:[np.newaxis : ,:] #np.newaxis在第0个维度


    axis=0 #第0维。# 一般用在聚合计算中。
    axis=1#第1维。等价于axis=-1.

  • 相关阅读:
    browser浏览器类型判断
    泛型函数Func<>
    前台JS端排除重复录入数据方法(取值对比)
    判断字符串是否为空字符串
    Linq语法及用法
    new Array( ) 使用
    性能测试
    [排序N大件之]快速排序
    [排序N大件之]归并排序
    [排序N大件之]谢尔排序
  • 原文地址:https://www.cnblogs.com/Henry-ZHAO/p/12725352.html
Copyright © 2020-2023  润新知