numpy(I)— Array 與 Matrix

時間過得好快,年假已經開始了!預祝大家,新年快樂!!!

今天,要跟大家介紹一個非常實用的模組—numpy。在numpy裡面,有非常多已經寫好的數學運算函數,讓我們可以自由自在地運用。

準備好了嗎?讓我們一起進入numpy的世界吧!

(一)引入numpy模組

在Python的架構中,當我們要使用個別模組時,都必須先將其引入。怎麼引入呢?很簡單,輸入”import numpy as np”就可以了!這是什麼意思呢?就是引入numpy模組,並取名為np,以方便我們後面函數的呼叫。(就不用每次都打numpy了,以後可以直接用np取代numpy)

(二)Array

在numpy模組中,提供一種陣列(Array)資料結構。如同之前我們介紹過的list,array裡所蒐集的資料,是可以被更改的;不同的是,array的資料長度是固定的,而且其所蒐集的資料須為同一型態。

接下來,讓我們看看要如何建立一array吧!

另外,如果要跟之前一樣,建立有順序的資料,我們也可以使用np.arange(起始值(包含),終值(不包含),間格),就可以直接自動生成囉!

(三) Array 的 index

像list一樣,array裡面的資料也是有順序的,所以每筆資料都會對應到一個index,從0開始。而呼叫index所對應資料的方式,亦跟list相同,在array變數名稱後面加上一個中括號,並輸入所要尋找的index值,就可以了。

(四) Array上的運算

如同之前所分享的list,在array的資料結構中,我們一樣可以直接對裡面的元素做運算。

(五)多重array

如同list裡面可以放入list,array裡面也可以放入array唷! 怎麼放呢? 很簡單,只要多加入中括號就可以囉! 愈多中括號代表愈多層! 現在,讓我們一起來看看雙重array的建構,以及索引值(index)的呼叫方法唷!

仔細看看這個雙重array,長的是不是很像矩陣(matrix)呢?沒錯! 接下來,讓我們看看要怎麼用numpy建立matrix吧!

(六) Matrix

首先,我們已經會生成雙重array了,讓我們來看看,怎麼重雙重array生成Matrix呢? 很簡單,直接把這個array用np.matrix(array變數名稱)指定成matrix就可以了!

那麼,我們一定要先製造array,才能製造matrix嗎?不用的!我們也可以直接透過np.matrix()來生成matrix唷!

(七) Matrix 的運算

如果要計算矩陣的加減乘除,都跟我們一般的四則運算一樣,用(‘+’, ‘-‘, ‘*’, ‘/’)就可以了。

現在,我們要跟大家分享的是,如何有效率的生成轉置矩陣跟反矩陣。

想要找到轉置矩陣,在python中相當容易,使用’.T’就可以了!那反矩陣呢? 用’.I’直接達成!

(八) Matrix的維度(Dimensions)

在list中,我們可以直接用len(list變數名稱)找出list的長度。而在matrix中,我們可以用’.size’找出matrix裡面的元數個數;我們也可以用’.shape’找出matrix的列數(rows)與行數(columns);另外,我們也可以用lem(matrix變數名稱.shape)找出matrix的維度。

今天,我們介紹了numpy模組的一小部分。我們學會怎麼引入模組,學會了numpy裡面的兩種資料結構,array與matrix.

明天,我們將帶大家看更多numpy裡面提供的實用計算方法,以及更多matrix的相關計算唷!敬請期待!

Share

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *