1. >> type(np.newaxis)
  2. NoneType
  3. >> np.newaxis == None
  4. True

np.newaxis 在使用和功能上等价于 None,其实就是 None 的一个别名。

1. np.newaxis 的实用

  1. >> x = np.arange(3)
  2. >> x
  3. array([0, 1, 2])
  4. >> x.shape
  5. (3,)
  6. >> x[:, np.newaxis]
  7. array([[0],
  8. [1],
  9. [2]])
  10. >> x[:, None]
  11. array([[0],
  12. [1],
  13. [2]])
  14. >> x[:, np.newaxis].shape
  15. (3, 1)

2. 索引多维数组的某一列时返回的是一个行向量

  1. >>> X = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
  2. >>> X[:, 1]
  3. array([2, 6, 10]) % 这里是一个行
  4. >>> X[:, 1].shape % X[:, 1] 的用法完全等同于一个行,而不是一个列,
  5. (3, )

如果我索引多维数组的某一列时,返回的仍然是列的结构,一种正确的索引方式是:

  1. >>>X[:, 1][:, np.newaxis]
  2. array([[2],
  3. [6],
  4. [10]])

如果想实现第二列和第四列的拼接(层叠):

  1. >>>X_sub = np.hstack([X[:, 1][:, np.newaxis], X[:, 3][:, np.newaxis]])
  2. % hstackhorizontal stack,水平方向上的层叠
  3. >>>X_sub
  4. array([[2, 4]
  5. [6, 8]
  6. [10, 12]])

当然更为简单的方式还是使用切片:

  1. >> X[:, [1, 3]]
  2. array([[ 2, 4],
  3. [ 6, 8],
  4. [10, 12]])

numpy np.newaxis 的实用的更多相关文章

  1. np.newaxis 为 numpy.ndarray(多维数组)增加一个轴

    >> type(np.newaxis) NoneType np.newaxis 在使用和功能上等价于 None,其实就是 None 的一个别名. 1. np.newaxis 的实用 > ...

  2. np.tile 和np.newaxis

    output   array([[ 0.24747071, -0.43886742],   [-0.03916734, -0.70580089],   [ 0.00462337, -0.5143158 ...

  3. python学习日记:np.newaxis

    import numpy as np label = np.array([[1,2,3,4],[5,6,7,8]])print (label.shape)label = label[np.newaxi ...

  4. np.newaxis学习【转载】

    转自:https://blog.csdn.net/lanchunhui/article/details/49725065 1.相当于None >> type(np.newaxis) Non ...

  5. Python np.newaxis

    np.newaxis的功能是插入新维度,看下面的例子: a=np.array([1,2,3,4,5])print a.shape print a 输出结果 (5,)[1 2 3 4 5] 可以看出a是 ...

  6. np.newaxis()用法

    这个是liaspace函数 这个是np.newaxis的用法,增加维度,写一个表示增加一维,两个表示增加2维2位置的:号是对a的取值范围,如果把np.newaxis作为第一个参数是对行增加维度,作为第 ...

  7. np.newaxis的使用及有趣的数组相乘

    a=np.array([1,2,3,4])a=a[np.newaxis,:] #固定行,相当于1行多列b=np.array([2,4,6]) b=b[:,np.newaxis] #固定列,相当与多行1 ...

  8. Numpy np.array 相关常用操作学习笔记

    1.np.array构造函数 用法:np.array([1,2,3,4,5]) 1.1 numpy array 和 python list 有什么区别? 标准Python的列表(list)中,元素本质 ...

  9. np.newaxis

    http://blog.csdn.net/mameng1/article/details/54599306

随机推荐

  1. FCN 32分析:

    FCN 32s

  2. float导致出现大面积空白

    float导致出现大面积空白,解决方法: *{ padding: 0; margin: 0; overflow:hidden; }

  3. JavaScript之Dom操作【删除当前节点】

    //最新更新:2017-11-25 //现在可以通过更强大而快捷的方式为所有的HTMLElement元素的Dom操作扩展新的方法[注意事项:处理HTMLElemnt元素时,此法对IE-8无效] //原 ...

  4. JavaScript之浏览器兼容问题与IE(神经病一样的浏览器)

    IE是最讨厌的浏览器,没有之一.----题记 废话不说,粘上大图~

  5. Mac下配置多个SSH KEY访问远程Git服务

    第一步 生成对应的ssh key 1 后面输入你的用户名 或者 邮箱 2 输入一个独立的ssh key名字 区别之前的名字 第二步  编辑 config文件 在.ssh/目录下面 在config文件配 ...

  6. Caffe源码阅读(1) 全连接层

    Caffe源码阅读(1) 全连接层 发表于 2014-09-15   |   今天看全连接层的实现.主要看的是https://github.com/BVLC/caffe/blob/master/src ...

  7. jquery 学习(五) - CSS 操作

    HTML + CSS 样式 /*CSS样式*/<style> body{ margin: 0; } div{ width: 100%; height: 2000px; background ...

  8. Qt 窗体使用 label 标签插入静态图片

    最近在做毕业设计,上位机软件用的Qt,界面当中需要加入学校校徽,结果百度了n多种方法,有用QPixmap的: QPixmap myPix("./school.jpg"); ui-& ...

  9. JNI打通java和c

    1.JNI简介 The Java Native Interface (JNI) is a programming framework that enables Java code running in ...

  10. C语言中malloc函数返回值是否需要类型强制转换问题

    1. 在C语言中, 如果调用的函数没有函数原型, 则其返回值将默认为 int 型. 考虑调用malloc函数时忘记了 #include <stdlib.h>的情况 此时malloc函数返回 ...