『壹』 用python寫一個能計算矩陣的程序
用numpy庫(你得自己安裝這個庫,科學計算經常用得著)
矩陣運算大大簡化
fromnumpyimport*
a=array([(1,2),(3,4)])
b=array([(4,3),(2,1)])
a+b
『貳』 用python的numpy創建一個矩陣
使用numpy創建矩陣有2種方法,一種是使用numpy庫的matrix直接創建,另一種則是使用array來創建。首先載入numpy庫,然後分別用上面說的2種方法來分別構建一個4×3的矩陣,如圖
注意事項
[1]在高等數學或者線性代數等已經學過了當後面的矩陣的行數等於前面矩陣的列數時,2個矩陣才可以相乘
[2]Hadamard指的是2個m×n的矩陣相乘,結果仍然是m×n的矩陣,結果為對應元素的乘積
[3]單位矩陣是特殊的對角矩陣,零(1)矩陣是指元素全部是0(1)的矩陣
[4]矩陣的第一行是從0開始編號的,python中的各種編號基本上都是從0開始的
『叄』 python 怎麼實現矩陣運算
1.numpy的導入和使用
data1=mat(zeros((
)))
#創建一個3*3的零矩陣,矩陣這里zeros函數的參數是一個tuple類型(3,3)
data2=mat(ones((
)))
#創建一個2*4的1矩陣,默認是浮點型的數據,如果需要時int類型,可以使用dtype=int
data3=mat(random.rand(
))
#這里的random模塊使用的是numpy中的random模塊,random.rand(2,2)創建的是一個二維數組,需要將其轉換成#matrix
data4=mat(random.randint(
10
,size=(
)))
#生成一個3*3的0-10之間的隨機整數矩陣,如果需要指定下界則可以多加一個參數
data5=mat(random.randint(
,size=(
))
#產生一個2-8之間的隨機整數矩陣
data6=mat(eye(
,dtype=
int
))
#產生一個2*2的對角矩陣
a1=[
]; a2=mat(diag(a1))
#生成一個對角線為1、2、3的對角矩陣
『肆』 python的科學計算庫有哪些
1、Numpy庫簡介
在Python中很多高級庫都是基本Numpy科學庫去做的。之前如果用Python對數據進行操作,需要一行一行或者一個一個數據的去進行操作。而在Numpy中,則是封裝了一系列矩陣的操作:首先把數據轉換成一系列矩陣的格式,然後再對矩陣進行操作。這樣既高效,也省時。Numpy封裝了一系列的函數函數,方便我們去操作矩陣。Numpy中一行代碼就頂Python中十幾行的代碼。
2、Pandas庫簡介
在Pandas 是基於Numpy的一種工具,該工具是為了解決數據分析任務而創建的。Pandas
納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。Pandas提供了大量能使我們快速便捷地處理數據的函數和方法。你很快就會發現,它是使Python成為強大而高效的數據分析環境的重要因素之一。
3、Matplotlib庫簡介
Matplotlib 是一個 Python 的 2D繪圖庫,它以各種硬拷貝格式和跨平台的互動式環境生成出版質量級別的圖形,通過
Matplotlib,開發者可以僅需要幾行代碼,便可以生成繪圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等。
『伍』 python 矩陣操作
單單看這段似乎看不出什麼。不過我建議看看numpy,這個包裡面的mat是矩陣操作相關的類,可以看看相關的API,
『陸』 如何用python實現矩陣功能
numpy和sympy中的相關矩陣的操作函數
array和matrix等
『柒』 python 矩陣的問題
這個只是為了聲明數值的具體類型。
注意看,直接寫1,就是int數值型,寫1.那就是float型
『捌』 python怎麼寫矩陣
用二維list,比如a=[[1,2,3],[4,5,6],[7,8,9]]
『玖』 如何使用python表示矩陣
使用python表示矩陣的方法:
使用「import numpy」語句導入numpy包。用numpy包的array函數創建一個二維數組,這個二維數組就表示矩陣
示例代碼如下:
執行結果如下:
『拾』 關於Python進行矩陣操作的疑問
問題關鍵在test列表的構建方法,請比較下面的過程可以發現蹊蹺。
第二次過程, test內實際上是列表對象「[0, 1, 2, 3, 0, 1, 2, 3]」的三次重復, 循環內的三次操作都是對該列表對象的操作...
$ python
Python 2.7.2+ (default, Jul 20 2012, 22:12:53)
[GCC 4.6.1] on linux2
Type "help", "right", "credits" or "license" for more information.
>>> test = [[0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3]]
>>> test
[[0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3]]
>>> for i in range(0,3):
... test[i][2]+=9
...
>>> test
[[0, 1, 11, 3, 0, 1, 2, 3], [0, 1, 11, 3, 0, 1, 2, 3], [0, 1, 11, 3, 0, 1, 2, 3]]
>>> test = [[0, 1, 2, 3, 0, 1, 2, 3],]*3
>>> test
[[0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3], [0, 1, 2, 3, 0, 1, 2, 3]]
>>> for i in range(0,3):
... test[i][2]+=9
...
>>> test
[[0, 1, 29, 3, 0, 1, 2, 3], [0, 1, 29, 3, 0, 1, 2, 3], [0, 1, 29, 3, 0, 1, 2, 3]]
>>>