一、取行

1、单行

数组[index, :]
# 取第index+1行

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取第2行数据
row1 = arr1[1, :]
print(row1)

2、连续的多行

数组[start:end , :]
# 顾头不顾尾,也可以使用步长,不过一般不用

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(6, 4)
# 取第2、3、4行数据
row1 = arr1[1:4, :]
print(row1)

3、不连续的多行

数组[[index1, index2] , :]
# 取index1+1 和index2+1 行

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(6, 4)
# 取第1、4、2行
row1 = arr1[[0, 3, 1], :]
print(row1)

二、取列

1、单列

数组[:, index]
# 取第index+1列

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取第3列
cols = arr1[:, 2]
print(cols)

2、连续的多列

数组[:, start:end]
# 顾头不顾尾,索引从0开始

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取列数大于等于3的所有列
cols = arr1[:, 2:]
print(cols)

3、不连续的多列

数组[:, [index1, index2]]
# 取第index1+1和index2+1列

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取列数大于等于3的所有列
cols = arr1[:, 2:]
print(cols)

三、取行和列

1、单个数据

数组[row,col]
# 取第row+1行和第col+1列,对应的数据

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取第3行第4列的值
data = arr1[2, 3]
print(data)

2、连续的行和列

数组[start:end, start:end]
# 行start+1到end,列start+1到end

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
# 取第2到3行和第3列之后的数据
data = arr1[1:3, 2:]
print(data)

3、不连续的多个数据

数组[[a, b] ,[c, d]]
# 取第a+1行和第c+1列相交的数据
# 取第b+1行和第d+1列相交的数据

例子

import numpy as np

arr1 = np.arange(0, 24).reshape(4, 6)
#
data = arr1[[0, 3], [3, 5]]
print(data)

numpy 索引和切片的更多相关文章

  1. Numpy 索引及切片

    1.一维数组的索引及切片 ar = np.arange(20) print(ar) print(ar[4]) print(ar[3:6]) print(ar[:4:2]) #索引到4 按2的步长 pr ...

  2. numpy之索引和切片

    索引和切片 一维数组 一维数组很简单,基本和列表一致. 它们的区别在于数组切片是原始数组视图(这就意味着,如果做任何修改,原始都会跟着更改). 这也意味着,如果不想更改原始数组,我们需要进行显式的复制 ...

  3. Numpy系列(四)- 索引和切片

    Python 中原生的数组就支持使用方括号([])进行索引和切片操作,Numpy 自然不会放过这个强大的特性.  单个元素索引 1-D数组的单元素索引是人们期望的.它的工作原理与其他标准Python序 ...

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

    NumPy学习(索引和切片,合并,分割,copy与deep copy) 目录 索引和切片 合并 分割 copy与deep copy 索引和切片 通过索引和切片可以访问以及修改数组元素的值 一维数组 程 ...

  5. Numpy:索引与切片

    numpy基本的索引和切片 import numpy as np arr = np.array([1,2,3,555,666,888,10]) arr array([ 1, 2, 3, 555, 66 ...

  6. NumPy 学习 第二篇:索引和切片

    数组索引是指使用中括号 [] 来定位数据元素,不仅可以定位到单个元素,也可以定位到多个元素.索引基于0,并接受从数组末尾开始索引的负索引. 举个例子,正向索引从0开始,从数组开始向末尾依次加1递增:负 ...

  7. numpy数组的索引和切片

    numpy数组的索引和切片 基本切片操作 >>> import numpy as np >>> arr=np.arange(10) >>> arr ...

  8. Numpy数组基本操作(数组索引,数组切片以及数组的形状,数组的拼接与分裂)

    一:数组的属性 每个数组都有它的属性,可分为:ndim(数组的维度),shape(数组每个维度的大小),size(数组的总大小),dtype(数组数据的类型) 二:数组索引 和python列表一样,N ...

  9. Numpy学习二:数组的索引与切片

    1.一维数组索引与切片#创建一维数组arr1d = np.arange(10)print(arr1d) 结果:[0 1 2 3 4 5 6 7 8 9] #数组的索引从0开始,通过索引获取第三个元素a ...

随机推荐

  1. P1077 旅行

    题目描述 你要进行一个行程为7000KM的旅行,现在沿途有些汽车旅馆,为了安全起见,每天晚上都不开车,住在汽车旅馆,你手里现在已经有一个旅馆列表,用离起点的距离来标识,如下: 0, 990, 1010 ...

  2. 51nod 1281山峰和旗子

    1281 山峰和旗子  题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 用一个长度为N的整数数组A,描述山峰和山谷的高度.山峰需要满足 ...

  3. gulp4.0基本配置,超简单!

    最近复习了一下gulp,目前是4.0版本. 下图是基本目录结构,文件里面的内容可以随意添加,超详细简洁啊! 直接上代码(依赖未完全使用): 项目的所有依赖都可以安装,每个都有详细的注释. const ...

  4. 连接远程mysql(Linux环境)

    保证三点: 1.打开/etc/my.cnf,找到[mysqld]项,在其后加入一句:skip-name-resolve,保存,重启mysql服务. service mysqld restart  或者 ...

  5. SmartAssembly 使用方法

    SmartAssembly加壳工具,我还真的是不太喜欢给自己的程序加壳,觉得开源才是王道,但是没办法工作需要,需要有个加壳后与加壳前的对比,好吧谁叫咱只是程序员呢. 开始埋头苦干,找了半天也没找到合适 ...

  6. 树莓派4安装ftp服务端

    vsftpd是开源的轻量级的常用ftp服务器.   1,安装vsftpd服务器 (约400KB) sudo apt-get install vsftpd     2,启动ftp服务 sudo serv ...

  7. Ubuntu常用命令大全 以及 PHP+MySQL代码部署在Linux(Ubuntu)上注意事项

    PHP+MySQL代码部署在Linux(Ubuntu)上注意事项 https://cloud.tencent.com/developer/article/1024187 Ubuntu常用命令大全 ht ...

  8. Batch Normalization批量归一化

    BN的深度理解:https://www.cnblogs.com/guoyaohua/p/8724433.html BN: BN的意义:在激活函数之前将输入归一化到高斯分布,控制到激活函数的敏感区域,避 ...

  9. java xml的读取与写入(dom)

    首先,先获取到文档对象 private static Document getDocument(String path) { //1.创建DocumentBuilderFactory对象 Docume ...

  10. Java图形打印 上下对称三角星

    记录记录 @Test public void name03() { int row = 9; for (int i=0,k=row,m=0;i< row;i++){ for(int l=m-i; ...