zoukankan      html  css  js  c++  java
  • 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.

  • 相关阅读:
    我爱淘冲刺阶段站立会议每天任务2
    我爱淘冲刺阶段站立会议每天任务1
    大道至简-灵活的软件工程
    大道至简-实现,才是目的
    冲刺第二阶段工作总结06
    课堂练习-最低价购书方案
    构建之法阅读笔记04
    冲刺第二阶段工作总结05
    冲刺第二阶段工作总结04
    冲刺第二阶段工作总结03
  • 原文地址:https://www.cnblogs.com/Henry-ZHAO/p/12725352.html
Copyright © 2011-2022 走看看