Matryca może pomieścić ciągi, liczby i inne rodzaje danych obiektów. W matrycy dane są ułożone w stosy zarówno w kolumnach, jak i rzędach. Kluczową strukturę danych obsługujących obliczenia w nauce i matematyce jest matryca. Ponieważ Python nie zapewnia wbudowanego typu dla obiektu matrycy, traktujemy albo listę między listami, a nawet zagnieżdżoną listą jako matrycę.
Jak działają macierze w Python
Dane są zapisywane w dwuwymiarowej tablicy w celu wygenerowania matrycy. Procedura jest następująca:
[[1 3 5 7 9]Ma macierz 3 na 5 jako swój wyświetlacz. Stąd jego rozmiar wynosi 3 na 5. Dane wewnątrz tej macierzy składają się z obiektów albo liczb całkowitych typu danych. Górny rząd, wiersz 1, ma wartości 1, 3, 5, 7 i 9, podczas gdy Row2, wraz z wiersz3, ma wartości (2, 4, 6, 8) i odpowiednio (0, 8, 7, 4). Kolumna 1 zawiera wartości (1, 2, 0), a także kolumna 2 ma wartości (3, 4, 8) i tak dalej.
Python umożliwia nam przechowywanie wszystkich danych w matrycy z dwoma wymiarami. Możemy dodawać macierze, mnożyć je, transponować i wykonywać inne operacje na matrycy. Korzystając z tablic, możemy zbudować macierz Python i użyć jej podobnie. Porozmawiajmy o różnych przykładach macierzy Pythona.
Dodatek macierzy Python
Weźmy dwie matryce i dodamy je do iteracji za pomocą zagnieżdżonej pętli.
macierz1 = [[2, 4, 1],Początkowo, zamiast korzystać z Numpy, zbudowaliśmy bezpośrednio trzy matryce z zamówieniem 3 na 3. Określiliśmy odpowiednio kolejność lub długość macierzy 1 jako funkcję len () i innych. Za pomocą zagnieżdżonych pętli najpierw dodano trzy matryce. W sumie z trzech macierzy określono następnie jako macierz 4 i użyliśmy funkcji print (), aby wyświetlić wyniki.
Przesyłać matrycę w Pythonie
Wymieniając elementy kolumn i wierszy macierzy, moglibyśmy je przetrwać. Korzystając z różnych przykładów, zademonstrujemy, jak uzyskać transpozycję macierzy za pomocą Pythona bez Numpy.
Transpozycja matrycy jest reprezentowana przez symbol. Załóżmy na przykład, że mamy matrycę „A” o kolejności:
3 na-2
Wówczas transpozycja A jest:
Matryca 2 na 3
Obliczanie transpozycji matrycy za pomocą zagnieżdżonej pętli
Pętla zagnieżdżona może być używana do wielokrotnego iterowania przez kolumny i rzędów nawet zagnieżdżonej listy. Włóż element w wierszu „ITH” i kolumnie „jth” macierzy f obok wiersza „jth” i kolumnie „iTh” macierzy „f^t”, aby uzyskać transpozycję macierzy. „F^t” będzie matrycą 2 na 3, zakładając, że „F” to matryca 3 na 2.
F = [[2, 3],Najpierw utworzono macierz transponowania oryginalnej macierzy i macierz „F” z zamówieniem 3 na 2. Poprzedni program używa zagnieżdżonych pętli „do”, nieustannie iterowany przez każdy wiersz, a następnie każdą kolumnę. Przy każdej iteracji dodajemy element z „f [q] [w]” do „ft [w] [q]”. Na koniec wykonujemy metodę PRINT (), aby przedstawić transponię.
Korzystanie ze zrozumienia zagnieżdżonej listy w celu znalezienia transpozycji macierzy
Lista zagnieżdżona jest tworzona, gdy rozumienie listy jest wykonywane w innym rozumieniu listy. Poniżej znajduje się składnia do zrozumienia zagnieżdżonych list:
new_list = [[expr. dla elementu listy] dla elementu listy]Podobnie, możemy uzyskać transpozycję matrycy za pomocą zagnieżdżonej listy zrozumienia w takim podejściu zagnieżdżonym pętlą.
J = [[1, 3],Zaczynamy od utworzenia matrycy „J”, mając zamówienie 3 na 2. Zagnieżdżone rozumienie listy w kodzie poprzedzającej pętle nad członkami matrycy raz na raz i wprowadza elementy „j [v]” gdzieś w miejscu „J_T [v]”. Kolumny matrycy są iterowane w pierwszej części tak zagnieżdżonej listy rozumienia, a jej wiersze są powtarzane w drugiej kolumnie.
Mnożenie dwóch macierzy w Pythonie
Binarny proces mnożenia macierzy tworzy matrycę za pomocą dwóch macierzy. Wykorzystując zagnieżdżone pętle i rozumienie listy, możemy pomnożyć matryce w Pythonie.
Kolumna pierwszej macierzy i liczba drugiego rzędu muszą być zgodne z mnożeniem macierzy. Matryca, którą otrzymaliśmy na końcu z powodu mnożenia macierzy, będzie składać się z tej samej kolejności co oryginalna macierz. Ilustracja mnożenia macierzy pokazano poniżej.
Korzystanie z listy zagnieżdżonych do znalezienia mnożenia macierzy
Matryca może zostać utworzona w Python jako coś więcej niż tylko zagnieżdżona lista, rodzaj listy wewnątrz listy. Rząd macierzy odpowiada każdej wartości zagnieżdżonej listy. Zobaczmy instancję zagnieżdżonej pętli wykorzystywanej do pomnożenia dwóch macierzy.
N = [[9, 1, 7],W tym przykładzie użyjemy zagnieżdżonych pętli do wykonania programu, który pomnoży dwie matryce, ale zanim to zrobimy, wygenerujemy dwie matryce, „N” i „M”, które są 3-na-3 i 3- BY-4 odpowiednio w kolejności, a także trzecią matrycę, która ma zamówienie 3 na 4. Następnie przechodzimy proces iteracji, w którym używamy elementów wierszy w „N”, kolumnach w „M” i rzędach w „M”. Zastosowaliśmy instrukcję drukowania, aby wyświetlić mnożenie zdefiniowanych macierzy.
Wykorzystanie zrozumienia zagnieżdżonej listy w celu znalezienia mnożenia macierzy
Zrozumienie zagnieżdżonej listy to proces wspólnego wykonywania rozumienia listy w ramach zrozumienia listy, co skutkuje pewną zagnieżdżoną listą
Składnia:
new_list = [[expr. dla elementu listy] dla elementu listy]Podobnie przy tym samym podejściu zagnieżdżonym pętli, możemy również wykonać mnożenie dwóch macierzy przy użyciu metody zrozumienia zagnieżdżonej listy.
E = [[8, 1, 3],Aby uzyskać sumę produktów każdego mnożenia wiersza po kolumnie, iterowujemy kolumny wewnątrz macierzy „R” i wierszy wewnątrz macierzy „E” w programie. Aby uzyskać kolumny macierzy „R”, wykorzystujemy metodę ZIP (). Wymagamy elementów wiersza w macierzy „E” jako drugiego elementu ze zagnieżdżonej listy zrozumienia, aby obliczyć sumę produktów dla każdego wiersza w tej zagnieżdżonej liście. Ostatecznie będzie zatrudniona instrukcja drukowania.
Wniosek
W tym przewodniku widzieliśmy kilka alternatywnych sposobów ręcznego obliczenia dodawania macierzy, mnożenia i transpozycji, a nie Numpy. Podejścia te obejmują zagnieżdżone listy, a także zrozumienie zagnieżdżonych list. Ponadto przedstawiono kilka programów, aby pokazać, w jaki sposób te podejścia można wykorzystać i działać inaczej z dodawaniem, mnożeniem i transpozycją matrycy.