`
kavy
  • 浏览: 868368 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

np.newaxis

 
阅读更多

numpy np.newaxis 的实用

>> type(np.newaxis)
NoneType
>> np.newaxis == None
True

 

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

1. np.newaxis 的实用

>> x = np.arange(3)
>> x
array([0, 1, 2])
>> x.shape
(3,)

>> x[:, np.newaxis]
array([[0],
       [1],
       [2]])

>> x[:, None]
array([[0],
       [1],
       [2]])

>> x[:, np.newaxis].shape
 (3, 1)

 

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

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

 

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

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

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

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

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

>> X[:, [1, 3]]
array([[ 2,  4],
       [ 6,  8],
       [10, 12]])
分享到:
评论

相关推荐

    一文搞定 python 的广播机制与 np.newaxis

    先看看 np.newaxis 是啥, >>> print(np.newaxis) None 佛了。。。 有啥用呢? >>> data.shape (300, 2) >>> data[:,np.newaxis].shape (300, 1, 2) >>> data[np.newaxis,:].shape (1, 300, 2) 比较管用的是 data...

    numpy np.newaxis 的实用分享

    >> type(np.newaxis) NoneType >> np.newaxis == None True np.newaxis 在使用和功能上等价于 None,其实就是 None 的一个别名。 1. np.newaxis 的实用 >> x = np.arange(3) >> x array([0, 1, 2]) >> x.shape (3,)...

    numpy给array增加维度np.newaxis的实例

    如下所示: a[:, np.newaxis] # 给a... 您可能感兴趣的文章:numpy:np.newaxis 实现将行向量转换成列向量np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴numpy添加新的维度:newaxis的方法numpy np.newaxis 的实用

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

    np.newaxis 在使用和功能上等价于 None,查看源码发现:newaxis = None,其实就是 None 的一个别名。 1. np.newaxis 的实用 >> x = np.arange(3) >> x array([0, 1, 2]) >> x.shape (3,) >> x[:, np.newaxis] array...

    numpy:np.newaxis 实现将行向量转换成列向量

    np.newaxis 新增一个轴 如何将数组[0,1,2]转换成列向量 用ndarray[: , np.newaxis] 代码实质就是将原本的(0,1,2)移到行上,然后新增一列 其实可以更简单 ndarray.shape=(3,1) >> x = np.arange(3) >> x array([0,...

    PyPI 官网下载 | fem-0.0.44.tar.gz

    资源来自pypi官网。 资源全名:fem-0.0.44.tar.gz

    numpy添加新的维度:newaxis的方法

    np.newaxis放的位置不同,产生的新数组也不同 一维数组 x = np.random.randint(1, 8, size=5) x Out[48]: array([4, 6, 6, 6, 5]) x1 = x[np.newaxis, :] x1 Out[50]: array([[4, 6, 6, 6, 5]]) x2 = x[:, np....

    Numpy——数组合并

    文章目录1.np.vstack()2.np.hstack()3.np.newaxis()4.综合newaxis、vstack、hstack5.np.concatenate() 1.np.vstack() 对于一个array的合并,我们可以想到按行、按列等多种方式进行合并。 import numpy as np A = np....

    prism:Dan Foreman-Mackey的triangle.py的动画环绕

    棱镜 的的动画包装。 用法 prism很方便观看乐团的演奏。假装下面的samples是5个维度的样本,这些samples是由5000个步行者以100个步骤收集的。 import numpy as np ... newaxis , np . newaxis ] anim = prism . co

    numpy学习(三)

    numpy学习三 import numpy as np a=np.array([1,1,1]) b=np.array([2,2,2]) #vertical 合并 即上下合并 ...a[:,np.newaxis] array([[1], [1], [1]]) a[np.newaxis,:] array([[1, 1, 1]]) np

    tensorflow模型的save与restore,及checkpoint中读取变量方式

    x = np.linspace(-1, 1, 100)[:, np.newaxis] #shape(100,1) noise = np.random.normal(0, 0.1, size=x.shape) y = np.power(x, 2) + noise #shape(100,1) + noise tf_x = tf.placeholder(tf.float32, x.shape) #...

    使用TensorFlow实现简单线性回归模型

    X = np.linspace(-1, 1, n)[:,np.newaxis] # 等差数列构建X,[:,np.newaxis]这个是shape,这一行构建了一个n维列向量([1,n]的矩阵) noise = np.random.normal(0, 0.5, X.shape) # 噪声值,与X同型

    python 实现单通道转3通道

    # a=a[:,:,np.newaxis] # print(a.shape) # b= a.repeat([3],axis=2) # print(b.shape,b) image = np.expand_dims(a, axis=2) image = np.concatenate((image, image, image), axis=-1) print(image) axis=-1就是...

    python Tensor和Array对比分析

    如下所示: 区别 Array ...image[np.newaxis, :] tf.expand_dims(image,axis=0) 数组拼接 np.concatenate([image, image], axis=0) tf.concat([frame,frame],axis=0) 相互转换 image.eval

    Python opencv 找包含多个区域的最小外接矩形

    import cv2 import numpy as np import copy ''' 包含多个区域的最小外接矩形''' image = cv2.imread('./label.png') B, G, R = cv2.split(image) ...GGG = np.repeat(G[...,np.newaxis], 3, 2) print(GGG.sha

    TensorFlow1.x入门(5)——构建非线性回归模型

    系列文章 1. 计算图的创建与启动 2. 变量的定义及其操作 3. Feed与Fetch 4. 线性回归 构建非线性回归模型系列文章知识点示例注意 ...arr = arr[:, np.newaxis] np.random.normal(mean, stddev, shape)用于生成

Global site tag (gtag.js) - Google Analytics