安裝與使用
大型矩陣運算主要用matlab或者sage等專業(yè)的數(shù)學(xué)工具,但我這里要講講python中numpy,用來做一些日常簡單的矩陣運算!這是 numpy官方文檔,英文不太熟悉的,還有 numpy中文文檔
numpy 同時支持 python3 和 python2,在 python3 下直接pip install安裝即可,python2 的話建議用 .whl 安裝,你可以在 這里查詢 和你 python2 版本對應(yīng)的 whl 文件。如果你使用 python2.7,我這里有打包好的 安裝文件
常用函數(shù)import numpy as np np.array([[1,2,3],[4,5,6]]) # 定義一個二維數(shù)組 np.mat([[1,2,3],[4,5,6]]) # 定義一個兩行三列矩陣 np.mat(list) # 列表或者數(shù)組轉(zhuǎn) matrix(矩陣) np.tolist(matrix) # 與上面相反 np.shape(array) # 求矩陣或者數(shù)組array的維度 array.reshape(m,n) # 數(shù)組或矩陣重塑為m行n列 np.eye(m,n) # 創(chuàng)建m行n列單位矩陣 np.zeros([m,n],dtype) # 創(chuàng)建初始化為0的矩陣 # .transpose()轉(zhuǎn)置矩陣 .inv()逆矩陣 # .T轉(zhuǎn)置矩陣,.I逆矩陣舉個栗子
# python3 import numpy as np # 先創(chuàng)建一個長度為12的列表,,再重塑為4行3列的矩陣 list1 = [0,1,2,3,4,5,6,7,8,9,0,1] list1_to_mat = np.mat(list1) # 列表先轉(zhuǎn)成矩陣 mat1 = list1_to_mat.reshape(4,3) # 重塑 print(mat1) # 求上面矩陣的轉(zhuǎn)置矩陣和逆矩陣 mat_transpose = mat1.T mat_inv = mat1.I # 再定義一個3行4列的數(shù)組轉(zhuǎn)成矩陣,和上面矩陣相乘 array1 = np.array([[1,2,3,4],[4,5,6,7],[3,2,1,0]]) mat2 = np.mat(array1) print(mat2) print(mat2*mat1) # 或者你可以用 np.dot()以及 np.multiply()
要注意:numpy 的數(shù)組和 python 的列表是有區(qū)別的,比如:列表 list 只有一維。然后 numpy 的數(shù)組和矩陣也有區(qū)別!比如:矩陣有逆矩陣,數(shù)組是沒有逆的?。?/p> END
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/44893.html
摘要:本章學(xué)習(xí)兩個科學(xué)運算當(dāng)中最為重要的兩個模塊,一個是一個是。這種工具可用來存儲和處理大型矩陣,比自身的嵌套列表結(jié)構(gòu)要高效的多該結(jié)構(gòu)也可以用來表示矩陣。專為進行嚴(yán)格的數(shù)字處理而產(chǎn)生??梢酝ㄟ^函數(shù)對相應(yīng)值進行打印檢驗。 本章學(xué)習(xí)兩個科學(xué)運算當(dāng)中最為重要的兩個模塊,一個是 numpy,一個是 pandas。任何關(guān)于數(shù)據(jù)分析的模塊都少不了它們兩個。 一、numpy & pandas特點 NumP...
摘要:提到線性代數(shù),又不得不吐槽國內(nèi)教材了,學(xué)起來真的是實力勸退。線性代數(shù)概念較多,計劃在另一篇總結(jié)基本概念,這里僅總結(jié)線性代數(shù)里一些重要概念的程序。 提到線性代數(shù),又不...
摘要:是什么今天開始會陸續(xù)為大家?guī)頂?shù)據(jù)科學(xué)常用包的基礎(chǔ)用法數(shù)據(jù)分析的工作涉及到大量的數(shù)值運算,一個高效方便的科學(xué)計算工具是必不可少的。 NumPy是什么? 今天開始會陸續(xù)為大家?guī)頂?shù)據(jù)科學(xué)常用包的基礎(chǔ)用法 數(shù)據(jù)分析的工作涉及到大量的數(shù)值運算,一個高效方便的科學(xué)計算工具是必不可少的。Python語言一開始并不是設(shè)計為科學(xué)計算使用的語言,隨著越來越多的人發(fā)現(xiàn)Python的易用性,逐漸出現(xiàn)了關(guān)于...
摘要:對于機器學(xué)習(xí)而言,稀疏矩陣應(yīng)用非常廣,比如在數(shù)據(jù)特征表示自然語言處理等領(lǐng)域。稀疏存在的問題稀疏矩陣會導(dǎo)致空間和時間復(fù)雜度方面的問題。通過調(diào)用函數(shù),可以使用表示將存儲在數(shù)組中的稠密矩陣轉(zhuǎn)換為稀疏矩陣。 對于一個矩陣而言,若數(shù)值為零的元素遠遠多于非零元素的個數(shù),且非零元素分布沒有規(guī)律時,這樣的矩陣被稱作稀疏矩陣;與之相反,若非零元素數(shù)目占據(jù)絕大多數(shù)時,這樣的矩陣被稱作稠密矩陣。 稀疏矩陣在...
閱讀 1904·2021-11-22 09:34
閱讀 3040·2021-09-28 09:35
閱讀 13499·2021-09-09 11:34
閱讀 3608·2019-08-29 16:25
閱讀 2840·2019-08-29 15:23
閱讀 2051·2019-08-28 17:55
閱讀 2439·2019-08-26 17:04
閱讀 3056·2019-08-26 12:21