python矩陣左除 矩陣和陣列的區別

2021-10-11 20:40:33 字數 1564 閱讀 9092

陣列中的元素可以是字元等

矩陣中的只能是數

這是二者最直觀的區別。

因為矩陣是乙個數學概念(線性代數裡的),陣列是個計算機上的概念。

你見過純粹數學中有陣列的概念嗎?沒有。

因為計算機上(準確的說是資訊科學中)常用到線性代數的知識,就引用了矩陣的概念。

《精通matlab6.5版》(張志湧編著,北京航空航天大學出版社)中說:

從外觀形狀和資料結構上看,二維陣列和數學中的矩陣沒有區別。但是矩陣作為一種變換或對映運算元的體現,矩陣運算有著明確而嚴格的數學規則。而陣列元算是matlab軟體所定義的規則,其目的是為了資料管理方便、操作簡單、指令形式自然和執行計算的有效。雖然陣列運算尚缺乏嚴謹的數學推理,雖然陣列運算仍在完善和成熟中,但是它的作用和影響正隨著matlab的發展而擴大。

陣列運算:

數與陣列加減:k+/-a        %k加或減a的每個元素

陣列乘陣列:  a.*b         %對應元素相乘

陣列乘方:  a.^k         %a的每個元素k次方;k.^a,分別以k為底a的各元素為指數求冪值

數除以陣列:  k./a和a./k   %k分別被a的元素除

陣列除法:    左除a.\b右除b./a,對應元素相除

矩陣運算:

數與矩陣加減:k+/-a             %等價於k*ones(size(a))+/-a

矩陣乘法:    a*b               %按數學定義的矩陣乘法規則

矩陣乘方:  a^k               %k個矩陣a相乘

矩陣除法:    左除a\b右除b/a    %分別為ax=b和xa=b的解

可見,陣列的運算很簡單。若不考慮數學意義時,矩陣是陣列的二維版本。

構造陣列:

1、直接構造:用空格或逗號間隔陣列元素

x=[1,2,3,4,5,6]

2、增量法構造:使用冒號操作符建立陣列

a=first:end         %遞增,且步長為1的陣列

a=first:step:end     %指定增量步長值建立任何等差序列

3、用linspace函式構造

x=linspace(first,last,num)  %需要指定首尾值和元素總個數,步長根據num平均分配

構造矩陣

1、簡單建立方法

用,逗號或空格格開各元素,分號隔開各行,注意各行具有相同的元素個數。

2、構造特殊矩陣

ones,zeros,eye,diag,magic,rand,randn,randpem

numpy矩陣與陣列的區別

矩陣matrix和陣列array是numpy裡的兩種資料型別,都可以用於處理行列表示的數字元素。

1.matrix只能是2維的,array可以是任意維數。

隨機初始化例項:

2.在這兩個資料型別上執行相同的數**算會得到不同的結果

對於a,b兩個matrices,a*b表示矩陣乘積

對於array來說,a*b表示逐個元素相乘

**運算子表示的含義也不同,對於maxtrix來說,a**2表示a*a

對於array來說,a**2表示陣列裡的數的平方

python矩陣左除 Matlab運算子

運算子是乙個符號,它告訴編譯器執行特定的數學或邏輯操作。matlab主要用於整個矩陣和陣列的操作。因此,matlab中的運算子既可用於標量資料也可用於非標量資料。matlab允許以下型別的基本操作 算術運算子 關係運算子 邏輯運算子 按位運算子 集合運算子 下面我們來乙個乙個地學習。算術運算子 ma...

矩陣和陣列

matlab 是 matrix laboratory 的縮寫形式。matlab 主要用於處理整個的矩陣和陣列,而其他程式語言大多逐個處理數值。所有 matlab 變數都是多維陣列,與資料型別無關。矩陣是指通常用來進行線性代數運算的二維陣列。要建立每行包含四個元素的陣列,請使用逗號 或空格分隔各元素。...

python中矩陣和陣列

我感覺張量是乙個統稱,陣列 矩陣這些都可被稱為張量。矩陣是陣列的特例。當陣列是二維的時候,就可以稱為矩陣。矩陣和二維陣列在某些場合可以通用。建立陣列 建立陣列時,錯誤的 將數值當作引數,array 裡面的引數應該是 9乙個列表或者乙個元組或者說在外觀上已經是乙個陣列了 numpy庫中的array將其...