ndarray数组操作

版权声明:本文为博主原创文章,欢迎指正或者转载。 https://blog.csdn.net/ThinkPet/article/details/83143497
# In[]  一位数组访问
import numpy as np
arr = np.arange(10) 
type(arr)

#用切片访问数组
b=arr[3:5]  #切片获取3到(5-1) 即3~4
c=arr[:5]   #切片获取0~4  (:代表0)
d= arr[1:-1:2]   #切片,从1开始,不包含最后一个元素,步长为2 (即1, 1+2, 1+2+2, 1+2+2+2)
e = arr[5:1:-2]   #步长为负数,从右往左切片,从5开始,步长 -2,不包含1 (即 5 ,5-2 )

#用下标访问数组
arr[5]  #用下标获取索引为5元素
arr[-1]     #用索引获取最后1个元素
arr[2:4] = 100,101  #用下标修改元素的值
arr

# In[]  多维数组访问
arr2 = np.array([[1,2,3,4,5],
                 [4,5,6,7,8],
                 [7,8,9,10,11]])
print(arr2)
arr2.shape   

arr2[0 , 3:5]   #切片第1行中  第3、4列的元素

arr2[1: , 2:]   #切片第2、3行中   第3、4、5列的元素

arr2[: , 2]   #切片  第3列的元素

arr2[ [ (0,1,2) , (1,2,3)]]   #获取 第1行2列  ,第2行3列 ,第3行4列 的元素

arr2[ 1: , (0,2,3)]  #获取 第2行1、3、4列  ,第3行1、3、4列  的元素
import numpy as np

arr = np.arange(10) 

type(arr)
Out[27]: numpy.ndarray

#用切片访问数组

b=arr[3:5]  #切片获取3到(5-1) 即3~4

c=arr[:5]   #切片获取0~4  (:代表0)

d= arr[1:-1:2]   #切片,从1开始,不包含最后一个元素,步长为2 (即1, 1+2, 1+2+2, 1+2+2+2)

e = arr[5:1:-2]   #步长为负数,从右往左切片,从5开始,步长 -2,不包含1 (即 5 ,5-2 )

#用下标访问数组

arr[5]  #用下标获取索引为5元素
Out[34]: 5

arr[-1]     #用索引获取最后1个元素
Out[35]: 9

arr
Out[36]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

arr2 = np.array([[1,2,3,4,5],
                 [4,5,6,7,8],
                 [7,8,9,10,11]])
print(arr2)
arr2.shape   

arr2[0 , 3:5]   #切片第1行中  第3、4列的元素

arr2[1: , 2:]   #切片第2、3行中   第3、4、5列的元素

arr2[: , 2]   #切片  第3列的元素

arr2[ [ (0,1,2) , (1,2,3)]]   #获取 第1行2列  ,第2行3列 ,第3行4列 的元素

arr2[ 1: , (0,2,3)]  #获取 第2行1、3、4列  ,第3行1、3、4列  的元素
[[ 1  2  3  4  5]
 [ 4  5  6  7  8]
 [ 7  8  9 10 11]]
Out[37]: 
array([[ 4,  6,  7],
       [ 7,  9, 10]])

猜你喜欢

转载自blog.csdn.net/ThinkPet/article/details/83143497