Python?numpy之線性代數與隨機漫步
線性代數
線性代數,矩陣計算,優(yōu)化與內存;比如矩陣乘法,分解,行列式等數學知識,是所有數組類庫的重要組成部分。和MATLAB等其他語言相比,numpy的線性代數中有所不同的是矩陣相乘不是點積運算而是逐個元素計算,因此在numpy里面都有一個特定的函數來計算,它就是dot,
語法如下:
numpy之線性代數函數
diag | 將一個方陣的對角(或非對角)元素作為一維數組返回,或者將一個一維數轉換為一個方陣,并且在非對角線上有零點 |
dot | 矩陣點乘 |
trace | 計算對角元素和 |
det | 計算矩陣行列式 |
eig | 計算方陣特征值和特征向量 |
inv | 計算方陣的逆矩陣 |
pinv | 計算矩陣的偽逆 |
qr | 計算QR分解 |
svd | 計算奇異值分解 |
solve | 求x的線性系統:Ax = b,其中A是方陣 |
lstsq | 計算Ax = b 的最小二乘解 |
偽隨機數生成
numpy.random模塊填補了Python內建的random模塊的不足,可以高效的生成多種概率分布下的完整樣本數組。比如我們使用normal來獲得一個8*8的正態(tài)分布樣本數組
隨機數種子:
什么是隨機數種子?舉一個簡單的例子,如果我的隨機種子是100,那么計算機就會在0-100中隨機產生,看下面
隨機種子是1111....
seed | 向隨機數生成器傳遞隨機狀態(tài)種子 |
permutation | 返回一個序列的隨機排列,或者返回一個亂序的整數范圍序列 |
shuffle | 隨機排列一個序列 |
rand | 從均勻分布中抽取樣本 |
randint | 根據給定的由低到高的范圍抽取隨機整數 |
randn | 從均值0方差1的正態(tài)分布中抽取樣本(MATLAB型接口) |
binomial | 從二項分布中抽取樣本 |
normal | 從高斯分布中抽取樣本 |
beta | 從beta中抽取樣本 |
chisquare | 從卡方分布中抽取樣本 |
gamma | 從伽馬分布中抽取樣本 |
uniform | 從均勻分布抽取樣本 |
上述的表格如果你看不懂,可以去看一看概率論與數理統計的知識,方便你深度理解每一個概念和用法
隨即漫步
示例
上面模擬的是一個簡單的隨機漫步,就比如說我們的擲硬幣,每次的結果1或者-1,然后計算積累值
到此這篇關于Python numpy之線性代數與隨機漫步的文章就介紹到這了,更多相關Python numpy線性代數內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
在pyqt5中QLineEdit里面的內容回車發(fā)送的實例
今天小編就為大家分享一篇在pyqt5中QLineEdit里面的內容回車發(fā)送的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06