import numpy as np a=np.array([1,2,3,4,5,6]) print(a[1]) # 2 print(a[1:4]) # [2 3 4] print(a[0:5:2]) # [1 3 5] #数组翻转 print(a[::-1]) # [6 5 4 3 2 1] a[2:5]=88 print(a) # [ 1 2 88 88 88 6] b=a[2:5].copy() b[:]=99 print(a) # [ 1 2 88 88 88 6] print(b) # [99 99 99] #切片的修改作用在了原始数据上,数组切片是原始数组的视图。.copy()是对数据的复制,不会影响原始数据 a=np.array([[1,2,3],[4,5,6]]) print(a) # [[1 2 3] # [4 5 6]] print(a[1]) # [4 5 6] print(a[1,1]) # 5 print(a[1][1]) #a[1,1]与a[1][1]等价 # 5 #数组的形状(2,3) print(a.shape) #数组的维度2 print(a.ndim) #数组的求和1+2+3+4+5+6,a.sum(),np.sum(a)两者是有区别的,具体见后续 print(a.sum()) print(np.sum(a)) #求数组每一列的和axis=1水平方向,axis=0垂直方向 print(np.sum(a,axis=1)) # [ 6 15] print(np.sum(a,axis=0)) # [5 7 9] print(a[:2,1:]) #前两行的,列1到后面 # [[2 3] # [5 6]] print(a[1,:2]) #第2行(从0开始算第一行)的两列 # [4 5] print(a[:2,2]) #前两行的第3列 # [3 6] print(a[:,:1]) # [[1] # [4]]
a3d=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) print(a3d) # [[[ 1 2 3] # [ 4 5 6]] # # [[ 7 8 9] # [10 11 12]]] print(a3d.ndim,a3d.shape) # 3 (2, 2, 3) print(a3d[0]) # [[1 2 3] # [4 5 6]] print(a3d[0,0]) # [1 2 3] print(a3d[0,0,0]) # 1 a3d0_copy=a3d[0].copy() a3d[0]=88 print(a3d) # [[[88 88 88] # [88 88 88]] # # [[ 7 8 9] # [10 11 12]]] a3d[0]=a3d0_copy print(a3d) # [[[ 1 2 3] # [ 4 5 6]] # # [[ 7 8 9] # [10 11 12]]]
Numpy一维、二维、三维数组切片实例
njxiejing2025-11-08 19:23
相关推荐
Boilermaker19921 小时前
[Java 并发编程] Synchronized 锁升级沈浩(种子思维作者)1 小时前
真的能精准医疗吗?癌症能提前发现吗?MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作꧁Q༒ོγ꧂2 小时前
LaTeX 语法入门指南njsgcs2 小时前
ue python二次开发启动教程+ 导入fbx到指定文件夹alonewolf_992 小时前
JDK17新特性全面解析:从语法革新到模块化革命io_T_T2 小时前
迭代器 iteration、iter 与 多线程 concurrent 交叉实践(详细)古城小栈2 小时前
Rust 迭代器产出的引用层数——分水岭华研前沿标杆游学2 小时前
2026年走进洛阳格力工厂参观游学Carl_奕然2 小时前
【数据挖掘】数据挖掘必会技能之:A/B测试