我先宣告我學numpy的目的:在python中使用矩陣(我需要在機器學習中使用矩陣),所以我的目的很明確,矩陣;
矩陣在numpy中叫ndarray(the n-dimensional array),我就是很喜歡問這個ndarray為啥叫ndarray,可是大多教程(特別是中文教程)都不說,這就不利於我們給ndarray乙個形象的記憶。
ndarray就是多維陣列,叫這個是為了與python裡的陣列區分開來。
之後我們把目的細分,具體到這個庫對應的函式(以下**都省略了 import numpy as np 哦):
向量:生成向量用linspace (線性空間)
a = np.linspace( 1, 10 , 5 , endpoint =true)/*引數說明 第乙個1 是起始數,10是末尾數,5是生成向量(陣列)的長度,最後乙個是生成陣列是否包含末尾數的選擇,預設為true(即包含10)
*/b = np.arange(n)
//生成從0 到n-1的陣列
c = np.concatenate( a,b)
//把兩個陣列連起來 concatenate就是乙個單詞,表示鏈結起來
普通矩陣
a = np.array(list/tuple , dtype =np.float32)//用array函式最直接,第乙個引數為矩陣內容,如
a = np.array([ [1,2] , [3,4] ] )
//矩陣內容為包含行列表的列表,行之間用 逗號 分隔, btw, 用()代替也是可以的
//列印a
( a )
// [[1 2]
// [3 4]]
特殊矩陣
//一下shape 都是元祖哦, 直白說, 就是類似 ( (行數 , 列數) )的寫法np.ones(shape)
np.zeros(shape)
//元素全為一或全為零的矩陣
np.full(shape,val)
//生成乙個每個元素都是val的矩陣 full有全部的意思,所以就是 全部都為val
np.eye(n)
//生成乙個對角線為1,其餘為零的方陣 (n維單位矩陣)eye,網上說是因為其與數學上單位矩陣的字母i讀音一樣。
like 一族
a =np.ones_like(b)//生成shape和b一樣的全為 1的矩陣
b =np.zeros_like(a)
//這個你猜一下把。
修改矩陣
.reshape(tuple)//改變原來的矩陣的shape,但是要使生成矩陣與原元素相同
// a = np.arrange(30).reshape( ( 2,3,5) ) 比如這樣用
// 這兒有個注意的地方,如果引數的元組元素裡面有-1,說明其大小可以由其他元祖元素推出來,不用程式設計師給出。
// 例如乙個 長100 的向量 a ,想把它改成 20*5則
a.reshape((20,-1))
.resize( tuple )
//這個和reshape一樣用,不過會改變原陣列哦,也就是reshape用完,原陣列還是原來的配方,但是用過resize之後,某老吉就變成某多寶了~.swapaxes( ax1 , ax2)
//學過線代的都覺得這個熟悉吧, ,沒錯這就是轉置,transpose
//以下函式都是 ndaray物件的成員 直白就是 宣告了乙個矩陣a, 要使用就得 a.value()a.ndim
//就是矩陣的維度,一般是2嘛
a.shape
//n 行 m 列
a.size
// 矩陣中有幾個元素,相當於 n*m
a.dtype
//矩陣中元素的型別
numpy有乙個奇怪的運算叫元素運算,就是a*b代表矩陣a和矩陣b每個元素相乘,,那麼我的運算在**呢?
矩陣與矩陣運算
np.dot( a , b)//矩陣乘法
a**-1
//矩陣的逆
NumPy入門筆記(一)
numpy是python的乙個科學計算庫,提供了矩陣計算的功能。pandas對numpy庫進行了二次封裝,提供了更強大的功能。numpy可用來儲存和處理大型矩陣,比python自身的資料結構 字串,佇列,元組,字典 更高階。numpy的主要物件是乙個多維度的,均勻的多維陣列,可以進行矩陣運算。1.建...
NumPy快速入門學習筆記
可以說是剛剛入門了python,最近需要做深度學習的任務,但是發現numpy的知識一無所知,所以應該靜下來學一學。寫這些東西,最重要的就是想要自己去用它,在這裡也跟自己提個醒,避免頻繁的陷入一些不必要的學習之中。要明白自己學習的目的,是為了用而學習,而不是為了學習而去學習 就目前階段,許多事物擺在眼...
numpy的矩陣計算
給乙個向量a 0,1,2 每個元素乘以2 a for e in a 或者a 2 e for e in a 或者a np.array 2 e for e in a 這個比較快 如果是numpy的array 直接2 a就可以了這個最快 universal functions 1,1都可以 np.abs ...