Nauka o danych

Jak korzystać z funkcji Pythona — NumPy reshape()?

Jak korzystać z funkcji Pythona — NumPy reshape()?

Biblioteka NumPy posiada wiele funkcji do pracy z tablicą wielowymiarową. funkcja reshape() jest jedną z nich, która służy do zmiany kształtu dowolnej istniejącej tablicy bez zmiany danych. Kształt określa całkowitą liczbę elementów w każdym wymiarze.  Wymiar tablicy można dodawać lub usuwać, a liczbę elementów w każdym wymiarze można modyfikować za pomocą funkcji reshape(). Tablica jednowymiarowa może zostać przekonwertowana na tablicę wielowymiarową, ale tablica wielowymiarowa nie może zostać przekonwertowana na tablicę jednowymiarową za pomocą tej funkcji. Jak działa funkcja reshape() i jej zastosowania są wyjaśnione w tym samouczku.

Składnia

Składnia funkcji reshape() jest podana poniżej.

np_array numpy.przekształć(np_tablica, nowy_kształt, kolejność='C') 

Ta funkcja może przyjmować trzy argumenty. Argumenty pierwszy i drugi są obowiązkowe, a trzeci opcjonalny. Tablica NumPy jest wartością pierwszego argumentu (np_tablica) który zostanie przebudowany. Kształt tablicy jest ustawiony jako drugi argument (nowy kształt) wartość, która może być liczbą całkowitą lub krotką liczb całkowitych. Kolejność tablicy jest ustalana przez trzeci argument (zamówienie) wartość używana do określenia pozycji elementu w zmienionej tablicy. Wartość trzeciego argumentu może być 'do' lub 'fa' lub 'ZA.' Wartość zamówienia 'do' jest używany do porządkowania indeksów w stylu C, gdzie indeks ostatniej osi zmienia się szybciej, a indeks pierwszej osi zmienia się wolniej. Wartość zamówienia 'fa' jest używany do porządkowania indeksów w stylu Fortran, gdzie indeks pierwszej osi zmienia się szybciej, a indeks ostatniej osi zmienia się wolniej. Obie 'do' i 'fa' rozkazy nie używają pamięci. Wartość zamówienia, 'ZA' działa jak 'fa,"ale używa pamięci".

Użycie funkcji reshape():

Musisz zainstalować bibliotekę NumPy, zanim zaczniesz ćwiczyć przykłady z tego samouczka. W części tego samouczka pokazano różne zastosowania funkcji reshape().

Przykład-1: Konwersja tablicy jednowymiarowej do tablicy dwuwymiarowej

Poniższy przykład pokazuje funkcję reshape() do konwersji jednowymiarowej tablicy NumPy na dwuwymiarową tablicę NumPy. Funkcja arange() jest używana w skrypcie do utworzenia jednowymiarowej tablicy składającej się z 10 elementów. Pierwsza funkcja reshape() służy do przekształcenia tablicy jednowymiarowej w tablicę dwuwymiarową składającą się z 2 wierszy i 5 kolumn. Tutaj funkcja reshape() jest wywoływana przy użyciu nazwy modułu, np. Druga funkcja reshape() służy do konwersji tablicy jednowymiarowej na tablicę dwuwymiarową składającą się z 5 wierszy i 2 kolumn. Tutaj funkcja reshape() jest wywoływana przy użyciu tablicy NumPy o nazwie np_tablica.

# Importuj NumPy
importuj numer jako np
# Utwórz tablicę NumPy wartości zakresu
np_tablica = np.aranżacja(10)
#  Wydrukuj wartości tablicy NumPy
print("Wartości tablicy NumPy : \n", np_array)
# Zmień kształt tablicy za pomocą 2 wierszy i 5 kolumn
nowa_tablica = np.przekształć(np_tablica, (2, 5))
# Wydrukuj zmienione wartości
print("\nZmieniona tablica z 2 wierszami i 5 kolumnami : \n", nowa_tablica)
# Zmień kształt tablicy z 5 wierszami i 2 kolumnami
nowa_tablica = np_tablica.zmienić kształt(5, 2)
# Wydrukuj zmienione wartości
print("\nZmieniona tablica z 5 wierszami i 2 kolumnami : \n", nowa_tablica)

Wynik:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Pierwsze wyjście pokazuje główną tablicę. Drugie i trzecie wyjście pokazuje zmienioną tablicę.

Przykład 2: Konwersja tablicy jednowymiarowej do tablicy trójwymiarowej

Poniższy przykład pokazuje funkcję reshape() do konwersji jednowymiarowej tablicy NumPy na trójwymiarową tablicę NumPy. Funkcja array() jest używana w skrypcie do utworzenia jednowymiarowej tablicy składającej się z 12 elementów. Funkcja reshape() służy do konwersji utworzonej tablicy jednowymiarowej na tablicę trójwymiarową. Tutaj funkcja reshape() jest wywoływana przy użyciu tablicy NumPy o nazwie np_tablica.

# Importuj NumPy
importuj numer jako np
# Utwórz tablicę NumPy za pomocą listy
np_tablica = np.tablica([7, 3, 9, 11, 4, 23, 71, 2, 32, 6, 16, 2])
#  Wydrukuj wartości tablicy NumPy
print("Wartości tablicy NumPy : \n", np_array)
# Utwórz tablicę trójwymiarową z tablicy jednowymiarowej
nowa_tablica = np_tablica.zmienić kształt(2, 2, 3)
# Wydrukuj zmienione wartości
print("\nZmienione wartości tablicy 3D to: \n", nowa_tablica)

Wynik:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Pierwsze wyjście pokazuje główną tablicę. Drugie wyjście pokazuje zmienioną tablicę.

Przykład-3: Zmień kształt tablicy NumPy na podstawie kolejności

Poniższy przykład pokazuje funkcję reshape() do konwersji jednowymiarowej tablicy NumPy na dwuwymiarową tablicę NumPy z różnymi typami zleceń. Funkcja arange() jest używana w skrypcie do utworzenia jednowymiarowej tablicy składającej się z 15 elementów. Pierwsza funkcja reshape() służy do tworzenia dwuwymiarowej tablicy składającej się z 3 wierszy i 5 kolumn z porządkowaniem w stylu C. Druga funkcja reshape() służy do tworzenia dwuwymiarowej tablicy składającej się z 3 wierszy i 5 kolumn z porządkowaniem w stylu Fortran.

# Importuj NumPy
importuj numer jako np
# Utwórz tablicę NumPy wartości zakresu
np_tablica = np.aranżacja(15)
#  Wydrukuj wartości tablicy NumPy
print("Wartości tablicy NumPy : \n", np_array)
# Zmień kształt tablicy na podstawie porządkowania w stylu C
nowa_tablica1 = np.przekształć(np_tablica, (3, 5), kolejność='C')
# Wydrukuj zmienione wartości
print("\nZmienione wartości tablicy 2D oparte na kolejności w stylu C to: \n", new_array1)
# Zmień kształt tablicy na podstawie porządkowania w stylu Fortran
nowa_tablica2 = np.przekształć(np_tablica, (3, 5), kolejność='F')
# Wydrukuj zmienione wartości
print("\nZmienione wartości tablicy 2D oparte na kolejności w stylu Fortran to: \n", new_array2)

Wynik:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Pierwsze wyjście pokazuje główną tablicę wartości. Drugie wyjście pokazuje wartości tablicy z porządkowaniem opartym na wierszach. Trzecie wyjście pokazuje wartości tablicy z porządkowaniem kolumnowym.

Wniosek

Sposoby konwersji tablicy z jednego kształtu na inny kształt za pomocą funkcji reshape() zostały opisane w tym samouczku. Cel używania funkcji reshape() zostanie wyczyszczony po przećwiczeniu przykładów z tego samouczka, a czytelnicy będą mogli używać tej funkcji w swoim skrypcie Pythona.

Gry Najlepsze gry wiersza poleceń dla systemu Linux
Najlepsze gry wiersza poleceń dla systemu Linux
Wiersz poleceń jest nie tylko twoim największym sprzymierzeńcem podczas korzystania z Linuksa - może być również źródłem rozrywki, ponieważ możesz go ...
Gry Najlepsze aplikacje do mapowania gamepada dla systemu Linux
Najlepsze aplikacje do mapowania gamepada dla systemu Linux
Jeśli lubisz grać w gry na Linuksie za pomocą gamepada zamiast typowego systemu wprowadzania klawiatury i myszy, jest kilka przydatnych aplikacji dla ...
Gry Przydatne narzędzia dla graczy Linuksa
Przydatne narzędzia dla graczy Linuksa
Jeśli lubisz grać w gry w systemie Linux, prawdopodobnie używałeś aplikacji i narzędzi, takich jak Wine, Lutris i OBS Studio, aby poprawić wrażenia z ...