NumPy sqrt() – квадратний корінь елементів матриці
Вступ
NumPy є бібліотекою Python з відкритим вихідним кодом, що надає високорівневі операції з масивами і матрицями, а також розширені можливості лінійної алгебри. Одним з найважливіших методів NumPy є sqrt()
, який обчислює квадратний корінь з кожного елемента переданого масиву або матриці. У цій статті ми розглянемо синтаксис, параметри, повертані значення та інші аспекти методи sqrt()
, а також надамо практичні приклади її використання.
Синтаксис
Метод sqrt()
має наступний синтаксис:
python
numpy.sqrt(arr, /, out=None, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj])
Де:
* arr
: вхідний масив або матриця, для якої буде обчислено квадратний корінь.
* out
: необов’язковий вихідний масив, в який буде збережено результат.
* where
: необов’язкова маска з тими ж розмірами, що і arr
. Мають обчислюватися значення тільки для тих елементів, для яких where
– True
.
* casting
: варіація як перетворити вихідні масиви до бажаного типу. Потрібні типи для arr
і out
і визначає, яку версію їм присвоїти.
* order
: порядок, в якому масив буде перетворений для внутрішніх обчислень.
* dtype
: тип даних бажаного вихідного масиву.
* subok
: чи включати масиви підкласів.
* signature
, extobj
: наразі не використовуються.
Повернене значення
Метод sqrt()
повертає масив або матрицю такого ж розміру і типу, як вхідний масив arr
, де кожен елемент є квадратним коренем відповідного елемента з arr
.
Параметри
* Позитивність елементів: Метод sqrt()
може приймати тільки позитивні елементи. Якщо вхідний масив містить негативні елементи, то буде видано помилку ValueError
.
* Тип даних: Метод sqrt()
працює з масивами дійсних чисел. Якщо вхідний масив має інші типи даних (наприклад, цілі числа або рядки), то буде видано помилку TypeError
.
* Розміри виводу: Розміри вихідного масиву будуть такими ж, як і розміри вхідного масиву arr
.
* Тип даних виводу: Тип даних вихідного масиву, як правило, є таким самим, як і тип даних вхідного масиву. Однак ви можете вказати бажаний тип вихідних даних за допомогою параметра dtype
.
* Маска: Параметр where
дозволяє обчислювати квадратні корені лише для відібраних елементів вхідного масиву.
* Вихідний масив: Параметр out
дозволяє вказати необов’язковий вихідний масив, в який буде збережено результат. Це може бути корисно для оптимізації продуктивності, оскільки він усуває необхідність створення нового масиву для зберігання вихідних даних.
Приклади
Нижче наведено кілька прикладів використання методу sqrt()
на масивах різної форми і розміру:
python
import numpy as np
Обчислити квадратний корінь з масиву
arr = np.array([1, 4, 9, 16, 25])
sqrt_arr = np.sqrt(arr)
print(sqrt_arr)
Обчислити квадратний корінь з двовимірної матриці
matrix = np.array([[1, 4], [9, 16]])
sqrt_matrix = np.sqrt(matrix)
print(sqrt_matrix)
Обчислити квадратний корінь з масиву дійсних чисел
float_arr = np.array([1.2, 4.5, 9.8, 16.2, 25.1])
sqrt_float_arr = np.sqrt(float_arr)
print(sqrt_float_arr)
Результат:
[1. 2. 3. 4. 5.]
[[1. 2.]
[3. 4.]]
[1.10000002 2.12132034 3.13049996 4.02504776 5.01009554]
Висновок
Метод sqrt()
в NumPy – це потужний і універсальний інструмент для обчислення квадратних коренів з масивів або матриць. Завдяки інтуїтивно зрозумілому синтаксису і широкому набору параметрів, він може бути легко налаштований для роботи з різними типами масивів і повертати бажані типи даних виводу. Від обчислення квадратних коренів з простих масивів до складних багатовимірних матриць, sqrt()
забезпечує ефективну і точну роботу з операціями з квадратними коренями в NumPy.
Часті запитання
1. Чи можна використовувати метод sqrt()
для обчислення квадратних коренів з комплексних чисел?
Ні, метод sqrt()
може обчислювати квадратні корені тільки з дійсних чисел.
2. Що станеться, якщо я передам негативне число в метод sqrt()
?
Метод sqrt()
видасть помилку ValueError
для негативних значень.
3. Чи можна вказати бажаний тип даних для вихідного масиву?
Так, ви можете вказати бажаний тип даних вихідного масиву за допомогою параметра dtype
.
4. Для чого використовується параметр where
?
Параметр where
дозволяє обчислювати квадратні корені лише для відібраних елементів вхідного масиву.
5. Чи можу я використовувати метод sqrt()
для обчислення квадратних коренів по елементах?
Так, для обчислення квадратних коренів по елементах ви можете використовувати метод sqrt()
одночасно з методом apply_along_axis()
.
6. Як я можу оптимізувати продуктивність методу sqrt()
?
Для оптимізації продуктивності ви можете використовувати параметр out
, щоб указати необов’язковий вихідний масив, в який буде збережено результат.
7. Чи можна використовувати метод sqrt()
для обчислення квадратних коренів з великих масивів?
Так, метод sqrt()
можна ефективно використовувати для обчислення квадратних коренів з великих масивів.
8. Які переваги використання методу sqrt()
в NumPy над іншими бібліотеками?
NumPy оптимізовано для швидких і ефективних операцій з масивами, що забезпечує високу продуктивність при роботі з квадратними коренями.