import numpy as np# 一维数组的创建
arr=np.arange(1,10) # array([1, 2, 3, 4, 5, 6, 7, 8, 9])arr[0] # 1arr[3:5] # array([4, 5])arr[::-1] # array([9, 8, 7, 6, 5, 4, 3, 2, 1])arr[-4:-2] # array([6,7])arr[5]=12
arr # array([ 1, 2, 3, 4, 5, 12, 7, 8, 9])arr_change=arr
arr_change[1:3]=[17,19]
arr_change # array([ 1, 17, 19, 4, 5, 12, 7, 8, 9])
arr # array([ 1, 17, 19, 4, 5, 12, 7, 8, 9]) # arr_change是传的视图(相当于引用),它改变的,源数据也会跟着改变arr_change=arr.copy()
arr_change[1:3]=[4,9] # array([ 1, 4, 9, 4, 5, 12, 7, 8, 9])
arr # array([ 1, 17, 19, 4, 5, 12, 7, 8, 9])# 二维数组的创建
data2=[[8.5,6,4.1,2,0.7],[1.5,3,5.4,7,3.9],[3.2,4.5,6,3,9]]
arr2=np.array(data2)
arr2[2] # [3.2, 4.5, 6, 3, 9]
arr2[2,1] # 4.5arr2[:,2:4]
# array([[4.1, 2. ],[5.4, 7. ],[6. , 3. ]])arr2[1:,2:]
# array([[5.4, 7. , 3.9],[6. , 3. , 9. ]])arr2[arr2>3.5] # array([8.5, 6. , 4.1, 5.4, 7. , 3.9, 4.5, 6. , 9. ])arr2[~(arr2>=3.5)] # array([2. , 0.7, 1.5, 3. , 3.2, 3. ])(arr2>3.5)&(arr2<10)
array([[ True, True, True, False, False],[False, False, True, True, True],[False, True, True, False, True]])arr2[(arr2>3.5)&(arr2<10)] # array([8.5, 6. , 4.1, 5.4, 7. , 3.9, 4.5, 6. , 9. ])