Питхон матрица: примери транспозиције, множења, нумеричких низова

Преглед садржаја:

Anonim

Шта је Питхон Матрик?

Питхон матрица је специјализовани дводимензионални правоугаони низ података који се чувају у редовима и колонама. Подаци у матрици могу бити бројеви, низови, изрази, симболи итд. Матрица је једна од важних структура података која се може користити у математичким и научним прорачунима.

У овом упутству за Питхон научићете:

  • Шта је Питхон Матрик?
  • Како функционишу Питхон матрице?
  • Направите Питхон Матрик користећи угнежђени тип података листе
  • Да бисте читали податке у Питхон Матрику користећи листу.
  • Пример 2: За читање последњег елемента из сваког реда.
  • Пример 3: Штампање редова у Матрици
  • Додавање матрица помоћу угнежђене листе
  • Множење матрица помоћу угнежђене листе
  • Направите Питхон матрицу помоћу низова из пакета Питхон Нумпи
  • Матрична операција помоћу Нумпи.Арраи ()
  • Приступ НумПи матрици

Како функционишу Питхон матрице?

Подаци унутар дводимензионалног низа у матричном формату изгледају на следећи начин:

Корак 1)

Приказује матрицу 2к2. Има два реда и 2 колоне. Подаци унутар матрице су бројеви. Ред1 има вредности 2,3, а ред 2 има вредности 4,5. Ступци, тј. Цол1, имају вредности 2,4, а цол2 има вредности 3,5.

Корак 2)

Приказује матрицу 2к3. Има два реда и три колоне. Подаци унутар првог реда, тј. Ред1, имају вредности 2,3,4, а ред 2 има вредности 5,6,7. Ступци цол1 имају вредности 2,5, цол2 има вредности 3,6, а цол3 има вредности 4,7.

Тако слично, можете да имате своје податке ускладиштене унутар матрице нкн у Питхону. Много операција може да се уради на матричном сабирању, одузимању, множењу итд.

Питхон нема једноставан начин за примену матричног типа података.

Питхон матрица користи низове и исто се може применити.

  • Направите Питхон матрицу користећи тип података угнежђене листе
  • Направите Питхон матрицу помоћу низова из пакета Питхон Нумпи

Направите Питхон Матрик користећи угнежђени тип података листе

У Питхону, низови су представљени помоћу типа података листе. Дакле, сада ћемо користити листу за стварање питхон матрице.

Направићемо матрицу 3к3, као што је приказано доле:

  • Матрица има 3 реда и 3 колоне.
  • Први ред у формату листе биће следећи: [8,14, -6]
  • Други ред на листи биће: [12,7,4]
  • Трећи ред на листи биће: [-11,3,21]

Матрица унутар листе са свим редовима и колонама приказана је доле:

List = [[Row1],[Row2],[Row3]… [RowN]]

Према матрици наведеној горе, тип листе са подацима матрице је следећи:

M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]

Да бисте читали податке у Питхон Матрику користећи листу.

Користићемо горе дефинисану матрицу. Пример ће прочитати податке, исписати матрицу, приказати последњи елемент из сваког реда.

Пример: За штампање матрице

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]#To print the matrixprint(M1)

Излаз:

The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]

Пример 2: За читање последњег елемента из сваког реда.

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]matrix_length = len(M1)#To read the last element from each row.for i in range(matrix_length):print(M1[i][-1])

Излаз:

-6421

Пример 3: Штампање редова у Матрици

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]matrix_length = len(M1)#To print the rows in the Matrixfor i in range(matrix_length):print(M1[i])

Излаз:

[8, 14, -6][12, 7, 4][-11, 3, 21]

Додавање матрица помоћу угнежђене листе

Лако можемо додати две дате матрице. Матрице ће бити у облику листе. Порадимо на примеру који ће се побринути за сабирање задатих матрица.

Матрица 1:

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]

Матрица 2:

M2 = [[3, 16, -6],[9,7,-4],[-1,3,13]]

Последњи ће иницијализовати матрицу која ће сачувати резултат М1 + М2.

Матрица 3:

M3 = [[0,0,0],[0,0,0],[0,0,0]]

Пример: Додавање матрица

Да додамо, матрице ће користити фор-лооп која ће се петљати кроз обе дате матрице.

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]M2 = [[3, 16, -6],[9,7,-4],[-1,3,13]]M3 = [[0,0,0],[0,0,0],[0,0,0]]matrix_length = len(M1)#To Add M1 and M2 matricesfor i in range(len(M1)):for k in range(len(M2)):M3[i][k] = M1[i][k] + M2[i][k]#To Print the matrixprint("The sum of Matrix M1 and M2 = ", M3)

Излаз:

The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]

Множење матрица помоћу угнежђене листе

Да помножимо матрице, можемо користити фор-лооп на обе матрице као што је приказано у доњем коду:

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]M2 = [[3, 16, -6],[9,7,-4],[-1,3,13]]M3 = [[0,0,0],[0,0,0],[0,0,0]]matrix_length = len(M1)#To Multiply M1 and M2 matricesfor i in range(len(M1)):for k in range(len(M2)):M3[i][k] = M1[i][k] * M2[i][k]#To Print the matrixprint("The multiplication of Matrix M1 and M2 = ", M3)

Излаз:

The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]

Направите Питхон матрицу помоћу низова из пакета Питхон Нумпи

Питхон библиотека Нумпи помаже у обрађивању низова. Нумпи обрађује низ мало брже у поређењу са листом.

Да бисте радили са Нумпи-ом, прво га морате инсталирати. Следите кораке дате у наставку да бисте инсталирали Нумпи.

Корак 1)

Наредба за инсталирање Нумпи-а је:

pip install NumPy

Корак 2)

Да бисте користили Нумпи у свом коду, морате да га увезете.

import NumPy

Корак 3)

Нумпи такође можете да увезете користећи псеудоним, као што је приказано доле:

import NumPy as np

Користићемо методу арраи () из Нумпи-а за стварање питхон матрице.

Пример: Низ у Нумпи-у за стварање Питхон матрице

import numpy as npM1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]])print(M1)

Излаз:

[[ 5 -10 15][ 3 -6 9][ -4 8 12]]

Матрична операција помоћу Нумпи.Арраи ()

Операција матрице која се може урадити је сабирање, одузимање, множење, транспоновање, читање редова, колона матрице, резање матрице итд. У свим примерима ћемо користити методу арраи ().

Додавање матрице

Да бисмо извршили сабирање на матрици, креираћемо две матрице помоћу нумпи.арраи () и додати их помоћу (+) оператора.

Пример:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]])M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]])M3 = M1 + M2print(M3)

Излаз:

[[ 12 -12 36][ 16 12 48][ 6 -12 60]]

Одузимање матрице

Да бисмо извршили одузимање на матрици, створићемо две матрице помоћу нумпи.арраи () и одузети их помоћу (-) оператора.

Пример:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]])M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]])M3 = M1 - M2print(M3)

Излаз:

[[ -6 24 -18][ -6 -32 -18][-20 40 -18]]

Множење матрице

Прво ће створити две матрице помоћу нумпи.арари (). Да бисте их множили, можете користити методу нумпи дот (). Нумпи.дот () је тачкасти производ матрице М1 и М2. Нумпи.дот () обрађује 2Д низове и изводи умножавање матрице.

Пример:

import numpy as npM1 = np.array([[3, 6], [5, -10]])M2 = np.array([[9, -18], [11, 22]])M3 = M1.dot(M2)print(M3)

Излаз:

[[ 93 78][ -65 -310]]

Матрик Транспосе

Транспозиција матрице израчунава се променом редова као колона и колона као редова. Функција транспосе () из Нумпи-а може се користити за израчунавање транспозиције матрице.

Пример:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]])M2 = M1.transpose()print(M2)

Излаз:

[[ 3 5 4][ 6 -10 8][ 9 15 12]]

Резање матрице

Резање ће вам вратити елементе из матрице на основу датог индекса почетка / краја.

  • Синтакса за резање је - [почетак: крај]
  • Ако почетни индекс није дат, сматра се 0. На пример [: 5], значи као [0: 5].
  • Ако крај није прослеђен, узеће се као дужина низа.
  • Ако почетак / крај имају негативне вредности, резање ће се извршити од краја низа.

Пре него што почнемо да радимо на резању на матрици, прво да схватимо како да применимо рез на једноставни низ.

import numpy as nparr = np.array([2,4,6,8,10,12,14,16])print(arr[3:6]) # will print the elements from 3 to 5print(arr[:5]) # will print the elements from 0 to 4print(arr[2:]) # will print the elements from 2 to length of the array.print(arr[-5:-1]) # will print from the end i.e. -5 to -2print(arr[:-1]) # will print from end i.e. 0 to -2

Излаз:

[ 8 10 12][ 2 4 6 8 10][ 6 8 10 12 14 16][ 8 10 12 14][ 2 4 6 8 10 12 14]

Сада ћемо применити резање на матрицу. За извођење резања на матрици

синтакса ће бити М1 [ров_старт: ров_енд, цол_старт: цол_енд]

  • Први почетак / крај биће за ред, односно за одабир редова матрице.
  • Други почетак / крај биће за колону, односно за одабир колона матрице.

Матрица М1 коју ћемо користити је следећа:

M1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])

Укупно има 4 реда. Индекс почиње од 0 до 3. 0- ти ред је [2,4,6,8,10], 1. ред је [3,6,9, -12, -15], а следе 2. и 3. ред .

Матрица М1 има 5 колона. Индексу почиње од 0 до 4.Тхе 0 тх колони има вредности [2,3,4,5], 1 СТ рубрике вредности [4,6,8, -10] затим 2 нд , 3 ИИИ , 4 -ог , и 5 -ог .

Ево примера који показује како добити податке о редовима и колонама из матрице помоћу сечења. У примеру, штампамо 1. и 2. ред, а за колоне желимо прву, другу и трећу колону. Да бисмо добили тај излаз користили смо: М1 [1: 3, 1: 4]

Пример:

import numpy as npM1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])print(M1[1:3, 1:4]) # For 1:3, it will give first and second row.#The columns will be taken from first to third.

Излаз:

[[ 6 9 -12][ 8 12 16]]

Пример: За испис свих редова и трећих колона

import numpy as npM1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])print(M1[:,3]) # This will print all rows and the third column data.

Излаз:

[ 8 -12 16 -20]

Пример: За испис првог реда и свих колона

import numpy as npM1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])print(M1[:1,]) # This will print first row and all columns

Излаз:

[[ 2 4 6 8 10]]

Пример: За испис прва три реда и прва 2 ступца

import numpy as npM1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])print(M1[:3,:2])

Излаз:

[[2 4][3 6][4 8]]

Приступ НумПи матрици

Видели смо како сечење делује. Узимајући то у обзир, поставићемо како да из матрице добијемо редове и колоне.

За испис редова матрице

У примеру ће се исписати редови матрице.

Пример:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]])print(M1[0]) #first rowprint(M1[1]) # the second rowprint(M1[-1]) # -1 will print the last row

Излаз:

[3 6 9][ 5 -10 15][ 4 8 12]

Да бисте добили последњи ред, можете користити индекс или -1. На пример, матрица има 3 реда,

па ће вам М1 [0] дати први ред,

М1 [1] ће вам дати други ред

М1 [2] или М1 [-1] ће вам дати трећи или последњи ред.

За штампање колона матрице

import numpy as npM1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])print(M1[:,0]) # Will print the first Columnprint(M1[:,3]) # Will print the third Columnprint(M1[:,-1]) # -1 will give you the last column

Излаз:

[2 3 4 5][ 8 -12 16 -20][ 10 -15 -20 25]

Резиме:

  • Питхон матрица је специјализовани дводимензионални правоугаони низ података који се чувају у редовима и колонама. Подаци у матрици могу бити бројеви, низови, изрази, симболи итд. Матрица је једна од важних структура података која се може користити у математичким и научним прорачунима.
  • Питхон нема једноставан начин за примену матричног типа података. Питхон матрица се може креирати помоћу угнежђеног типа података листе и помоћу нумпи библиотеке.
  • Питхон библиотека Нумпи помаже у обрађивању низова. Нумпи обрађује низ мало брже у поређењу са листом.
  • Операција матрице која се може извршити је сабирање, одузимање, множење, транспоновање, читање редова, колона матрице, резање матрице итд.
  • Да бисте додали две матрице, можете користити нумпи.арраи () и додати их помоћу (+) оператора.
  • Да бисте их множили, можете користити методу нумпи дот (). Нумпи.дот () је тачкасти производ матрице М1 и М2. Нумпи.дот () обрађује 2Д низове и изводи умножавање матрице.
  • Преношење матрице израчунава се променом редова као колона и колона као редова. Функција транспосе () из Нумпи-а може се користити за израчунавање транспозиције матрице.
  • Резање матрице вратиће вам елементе на основу датог индекса почетка / краја.