Numpy索引和切片
NumPy 提供了多种类型的索引方式,常用方式有两种:基本切片与高级索引。本节重点讲解基本切片。
基本切片
NumPy 内置函数 slice() 可以用来构造切片对象,该函数需要传递三个参数值分别是 start(起始索引)、stop(终止索引) 和 step(步长) ,通过它可以实现从原数组的上切割出一个新数组。示例如下:
输出结果:import numpy as np
a = np.arange(10)
#生成切片对象
s = slice(2,9,3)#从索引2开始到索引9停止,间隔时间为2
print(a[s])
[2 5 8]
您也可以通过冒号来分割切片参数,最终也能获得相同结果,示例如下:
输出结果:import numpy as np
a = np.arange(10)
b = a[2:9:2]
print(b)
[2 5 8]
下面对冒号切片做简单地说明:
- 如果仅输入一个参数,则将返回与索引相对应的元素。 对于上述示例来说
[3]就会返回 3。 - 如果在其前面插入“:”如
[:9],则会返回 0-8 的所有数字(不包含9)。 - 如是
[2:]则会返回 2-9 之间的数字。 - 如果在两个参数之间,如
[2:9],则对两个索引值之间的所有元素进行切片(不包括停止索引)。
下面对冒号类型的切片做了简单的实例演示:
示例 1:
输出结果:a = np.arange(10)
b = a[3]
print (b)
3
示例 2:
import numpy as np
a = np.arange(10)
print (a[2:])
输出结果:
[2 3 4 5 6 7 8 9]
示例 3:
输出结果如下:import numpy as np
a = np.arange(10)
print a[2:5]
[2 3 4]
多维数组切片
多维数组切片操作,实例如下:
import numpy as np
a = np.array([[1,2,3],[3,4,5],[4,5,6]])
print(a)
# 从[1:]索引处开始切割
print(a[1:])
输出结果:
注意:切片还可以使用省略号“…”,如果在行位置使用省略号,那么返回值将包含所有行元素,反之,则包含所有列元素。[[1 2 3]
[3 4 5]
[4 5 6]]
#切割后的新数组
[[3 4 5]
[4 5 6]]
实例演示如下:
输出结果:import numpy as np
#创建a数组
a = np.array([[1,2,3],[3,4,5],[4,5,6]])
#返回数组的第二列
print (a[...,1])
#返回数组的第二行
print (a[1,...])
#返回第二列后的所有项
print (a[...,1:])
#第二列数组
[2 4 5]
#第二行数组
[3 4 5]
#返回第二列及以后的所有元素
[[2 3]
[4 5]
[5 6]]
- 随机文章
- 核心危机(核心危机魔石合成攻略)
- 风儿(风儿轻轻的吹)
- 光遇花手先祖位置(安卓光遇手花先祖)
- 广州4a广告公司(广州4a广告公司创意总监年薪)
- xboxones(xboxone手柄怎么配对主机)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 海猫鸣泣之时游戏(海猫鸣泣之时游戏在哪玩)
- 儋州市第二中学(儋州市第二中学录取分数线)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- 和柳亚子(和柳亚子先生于田)
- yy魔兽(yy魔兽世界)
- 拆奶罩
- 郭妮小说(恶魔的法则郭妮小说)
- 蝙蝠给人类的一封信(蝙蝠给人类的一封信)
- 大松电饭煲(美的大松电饭煲)
- 疯狂填字(疯狂填字5)
- 观音普门品(观音普门品念诵全文)
- 哈利波特官网(哈利波特官网在哪里)
- 骇客神条(骇客神条怎么辨别真假)
- 杜星霖(杜星霖图片)
- 查传倜(查传倜个人生活)
- 广州晓港公园(广州晓港公园正门图片)
- 钢筋等级符号(钢筋等级符号电脑怎么输入)
- 常州天宁寺(常州天宁寺求什么灵验)
- 河源巴伐利亚(河源巴伐利亚庄园)
- 广州中山大学(广州中山大学录取分数线2023)
- 风云三国(风云三国2.8作弊指令Ctrl)
- 防水地板(防水复合地板)
