真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python定義矩陣函數(shù),Python定義矩陣

Python表示矩陣的方法分析

Python表示矩陣的方法分析

成都創(chuàng)新互聯(lián)公司是專業(yè)的昭蘇網(wǎng)站建設公司,昭蘇接單;提供成都網(wǎng)站制作、做網(wǎng)站、外貿營銷網(wǎng)站建設,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行昭蘇網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

本文實例講述了Python表示矩陣的方法。分享給大家供大家參考,具體如下:

在c語言中,表示個“整型3行4列”的矩陣,可以這樣聲明:int a[3][4];在python中一不能聲明變量int,二不能列出維數(shù)??梢岳昧斜碇袏A帶列表形式表示。例如:

表示矩陣 ,可以這樣:

count = 1

a = []

for i in range(0, 3):

tmp = []

for j in range(0, 3):

tmp.append(count)

count += 1

a.append(tmp)

print a

結果:

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

但是注意一點:初始化(賦值全部為0時),下面是錯誤的!!

tmp = []

for j in range(0, 3):

tmp.append(0)

a = []

for i in range(0, 3):

a.append(tmp)

print a

結果:

[[0, 0, 0], [0, 0, 0], [0, 0, 0]]

原因:這樣的列表tmp為同一個,改變任意行,其他行都會給隨著改變,千萬注意??!,下面正確:

a = []

for i in range(0, 3):

tmp = []

for j in range(0, 3):

tmp.append(0)

a.append(tmp)

print a

用python的numpy創(chuàng)建一個矩陣

使用numpy創(chuàng)建矩陣有2種方法,一種是使用numpy庫的matrix直接創(chuàng)建,另一種則是使用array來創(chuàng)建。首先加載numpy庫,然后分別用上面說的2種方法來分別構建一個4×3的矩陣,如圖

請點擊輸入圖片描述

2

矩陣創(chuàng)建好了,大家看到了2個矩陣長得差不多,是否相等呢?我們用==(python中用==表示等于)來試試看看,如下圖

請點擊輸入圖片描述

3

我們下面看看2個矩陣相乘的結果,可以看到使用matrix創(chuàng)建的矩陣m1乘以自身,結果報錯了:因為矩陣相乘需要滿足一定的條件[1];而使用array創(chuàng)建的矩陣m2乘以自身,結果并沒有報錯,因為這里用的是Hadamard乘法[2];而m1×m2也報錯了,說明只要有一個是matrix,就不能用Hadamard乘法,如圖所示

請點擊輸入圖片描述

請點擊輸入圖片描述

請點擊輸入圖片描述

4

下面看幾個特殊矩陣[3]:使用np.zeros可以生成零矩陣,使用np.ones可以生成1矩陣,使用np.identity可以生成單位矩陣,使用np.diag可以生成對角矩陣,如圖所示

請點擊輸入圖片描述

請點擊輸入圖片描述

5

最后看看矩陣的行向量和列向量提取方法。例如m1[[0,3]]表示提取矩陣m1的第0行和第3行[4],當然也可以用m1[[True,False,False,True]]來達到同樣的效果,True就是表示對應的行要提??;而m1[:,[-2,-1]]則是提取矩陣的最后2列的列向量,m1[:,[False,True,True]]的一樣可以提取最后2列的列向量,如圖所示

請點擊輸入圖片描述

請點擊輸入圖片描述

END

注意事項

[1]在高等數(shù)學或者線性代數(shù)等已經(jīng)學過了當后面的矩陣的行數(shù)等于前面矩陣的列數(shù)時,2個矩陣才可以相乘

[2]Hadamard指的是2個m×n的矩陣相乘,結果仍然是m×n的矩陣,結果為對應元素的乘積

[3]單位矩陣是特殊的對角矩陣,零(1)矩陣是指元素全部是0(1)的矩陣

[4]矩陣的第一行是從0開始編號的,python中的各種編號基本上都是從0開始的

python怎樣生成一個隨機矩陣

import?random?#導入隨機數(shù)模塊

m=10

n=10

matrix?=?[[0?for?i?in?range(m)]?for?i?in?range(n)]?#定義數(shù)組

for?row?in?range(0,m):

for?col?in?range(0,n):

matrix[row].append(random.randint(0,101))?#賦值

for?row?in?range(0,m):

print??matrix[row]#打印

結果


標題名稱:python定義矩陣函數(shù),Python定義矩陣
標題鏈接:http://weahome.cn/article/hojcdp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部