第一篇:陣列建立
第二篇:陣列操作篇
#陣列訪問、排序、比較
arr = np.array([2.,6.,5.,5.])
print(arr[:3]) #前三個元素
print(arr[2]) #下標為2的元素
arr[0] = 7 #下標為0的元素賦值為5
print(arr) #輸出整個陣列
np.unique(arr) #返回消除重複的元素
np.sort(arr) #返回排序後的元素(從小到大)
np.argsort(arr) #返回排序後的元素下標(從小到大)
np.random.shuffle(arr) #調整陣列元素使隨機排列,注意是直接改變了陣列,而不是返回副本
np.array_equal(arr,np.array([1,3,2])) #相等,形狀和元素是否均相等,列表則使用cmp函式
matrix = np.array([[4.,5,6.],[2,3,6]], float)
matrix[0,2] #訪問二維陣列維度分割用逗號,而列表用multilist[0][2]
#對陣列各維度進行切片操作
matrix[0:1,1:2] #
matrix[1,:] #只有:表本維度所有
matrix[:,2]
matrix[-1:, -2:] #-2表從本維度倒數第二個元素開始往後數
#flatten函式可將多維陣列變為一維
matrix.flatten() #按行拼接成一維
matrix.shape #返回陣列形狀
matrix.dtype #返回陣列元素型別
#陣列元素資料型別轉換
int_matrix = matrix.astype(np.int32) #將陣列元素轉換為int32
#返回陣列第一維的長度:
len(matrix)
matrix.shape[0]
#關鍵字in,判斷陣列中是否包含某個元素
print(2 in arr) #輸出true or false
#reshape函式可調整陣列維度
arr = np.array(range(8), float)
arr = arr.reshape((4,2)) #一維陣列變為4x2
#陣列轉置
arr.transpose()
arr.t #兩者效果一樣,都返回轉置後的副本
#增加維度,用newaxis
arr = np.random.rand(3)
arr[:,np.newaxis] #返回副本,維度3x1
arr[np.newaxis, :] #返回副本,維度1x3
#陣列連線操作
arr1= np.array([[11,12],[32,42]], float)
arr2= np.array([[54,26],[27,28]], float)
arr = np.concatenate((arr1, arr2)) #預設按第一維度連線
arr = np.concatenate((arr1, arr2), axis=0)
arr = np.concatenate((arr1, arr2), axis=1) #按第二維度進行連線
#陣列和字串轉換
arr = np.array([10,20,30], float)
str = arr.tostring()
#三、陣列運算
#四、線性代數運算
Numpy學習筆記
測試檔案裡的資料排列型別最好是有規律的,不可以隨便,否則將發生一些錯誤 genfromtxt函式 genfromtxt函式建立陣列 資料 genfromtxt主要執行兩個迴圈運算。第乙個迴圈將檔案的每一行轉換成字串序列。第二個迴圈將每個字串序列轉換為相應的資料型別。genfromtxt能夠考慮缺失的...
numpy學習筆記
1 array.ndim 用來輸出陣列的維度 2 array.shape 用來輸出陣列的形狀 3 arry.size 用來輸出陣列的大小見jupyter notebook的numpy function list 生成函式基本運算 直接用陣列的相加減乘除。也就是相對應的元素間的作用。關係運算 陣列元素...
NumPy學習筆記
example np.version np.array 1,2,3 4,5,6 np.zeros 3 3 np.ones 2 3,4 np.eye 3 np.range 5 0,1,2,3,4 np.random.rand 2,3 np.random.randint 5,size 2 3 value...