Numpy数组索引为-1和None

numpy的数组操作方便,可以用:来切片,用布尔数组或者布尔表达式来查找符合条件的数据,也可以用数组作为另一个数组的索引来查找指定的数据。但有时也会见到数组索引为-1和None。两者的用法如下:

1.-1指定维度上的最后一个。例如shape为(3,3)的数组data,data[2,-1]等同于data[2,2];data[-1]相当于data[2];data[1,1:-1]等同于data[1,1:2]

2.None并不指代数组中的某一维,None用于改变数组的维度。例如data的shape为(3,3),则data[:,None]的shape是(3,1,3),data(:,:,None)的shape是(3,3,1)。容易看出None就是在指定位置添加一维,且这个维度的数目是1。这样数据总数并不会变化,只是数据维度发生变化。

时间: 2024-10-06 08:26:30

Numpy数组索引为-1和None的相关文章

NumPy数组基本的索引和切片

对一维数组来说,NumPy数组的索引切片与Python列表的功能差不多: >>> arr array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> arr[3] 3 >>> arr[2:6] array([2, 3, 4, 5]) >>> arr[3:] array([3, 4, 5, 6, 7, 8, 9]) 但是,特别注意的是,如果要将一个标量值赋值给一个切片,这个修改会直接反映到源数组上(即使你已经新建

Numpy数组对象的操作-索引机制、切片和迭代方法

前几篇博文我写了数组创建和数据运算,现在我们就来看一下数组对象的操作方法.使用索引和切片的方法选择元素,还有如何数组的迭代方法. 一.索引机制 1.一维数组 In [1]: a = np.arange(10,16) In [2]: a Out[2]: array([10, 11, 12, 13, 14, 15]) #使用正数作为索引 In [3]: a[3] Out[3]: 13 #还可以使用负数作为索引 In [4]: a[-4] Out[4]: 12 #方括号中传入多数索引值,可同时选择多个

numpy数组的索引和切片

numpy数组的索引和切片 基本切片操作 >>> import numpy as np >>> arr=np.arange(10) >>> arr array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> arr[5] 5 >>> arr[5:8] array([5, 6, 7]) 切片赋值操作 1.切片赋一个值对应原来数组中的值也会变 >>> arr[5:8]=12 &g

numpy数组、向量、矩阵运算

可以来我的Github看原文,欢迎交流. https://github.com/AsuraDong/Blog/blob/master/Articles/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/numpy%E6%95%B0%E7%BB%84%E3%80%81%E5%90%91%E9%87%8F%E3%80%81%E7%9F%A9%E9%98%B5%E8%BF%90%E7%AE%97.md import numpy as np import pandas as pd

python小白之数组索引

索引 numpy中的数组索引形式和Python是一致的.如: np.arange(10) print x[2]  #单个元素,从前往后正向索引.注意下标是从0开始的. print x[-2]  #从后往前索引.最后一个元素的下标是-1 print x[2:5]  #多个元素,左闭右开,默认步长值是1 print x[:-7]  #多个元素,从后向前,制定了结束的位置,使用默认步长值 print x[1:7:2]  #指定步长值 x.shape=(2,5)  #x的shape属性被重新赋值,要求就

numpy 数组创建例程

1 numpy.empty empty(shape[, dtype=float, order='C']) 创建指定 shape 和dtype 的未初始化数组 返回:ndarray. 说明:order = 'C' 或 'F' 'C'是按行的C风格的数组,'F'为按列的Fortran 风格数组. import numpy as np a = np.empty((3,3),dtype = int) print(a) 运行 [[ 6553665 7471204 7536741] [ 4587635 71

NumPy学习(索引和切片,合并,分割,copy与deep copy)

NumPy学习(索引和切片,合并,分割,copy与deep copy) 目录 索引和切片 合并 分割 copy与deep copy 索引和切片 通过索引和切片可以访问以及修改数组元素的值 一维数组 程序示例 import numpy as np #索引与切片 array=np.arange(3,15) print(array) print(array[3])#数组下标为3的元素 print('\n') print(array[1:3])#取从下标1到下标3,不包括下标3 print(array[

numpy数组的排序,搜索,元素抽取

排序 numpy的排序函数 sort函数返回排序后的数组 lexsort函数根据键值的字典序进行排序 argsort函数返回数组排序后的下标 ndarray类的sort方法可以对数组进行原地排序 msort函数沿着第一个轴排序 sort_complex函数对复数按照先实部后虚部的顺序进行排序 Key_Function lexsort函数根据键值的字典序进行排序 将两个数组构成的元组, 分别取出对应下标的元素, 第一个数组的看做key, 第二个数组看做value 然后按照value进行排序, 返回

numpy数组属性

NumPy 数组的维数称为秩(rank),即数组的维度. NumPy中,每一个线性的数组称为是一个轴(axis),axis=0,表示沿着第 0 轴进行操作,即对每一列进行操作:axis=1,表示沿着第1轴进行操作,即对每一行进行操作. NumPy 的数组中比较重要 ndarray 对象属性有: 属性 说明 ndarray.ndim 秩,即轴的数量或维度的数量 ndarray.shape 数组的维度,对于矩阵,n 行 m 列 ndarray.size 数组元素的总个数,相当于 .shape 中 n