Python Numpy.sqrt() - 제곱근

Jinku Hu 2023년1월30일
  1. numpy.sqrt()구문
  2. 예제 코드: numpy.sqrt()
  3. 예: out 매개 변수가 있는 numpy.sqrt()
  4. 예제 코드: 음수가있는numpy.sqrt()
  5. 예제 코드: 복소수가있는numpy.sqrt()
Python Numpy.sqrt() - 제곱근

Numpy.sqrt() 함수는 제곱근 주어진 배열의 모든 요소.

Numpy.square() 메서드의 역 연산입니다.

numpy.sqrt()구문

numpy.sqrt(arr, out=None)

매개 변수

arr 입력 배열
out out이 주어지면 결과는out에 저장됩니다. outarr와 같은 모양이어야합니다.

반환

out이 주어 지더라도 입력 배열에있는 각 요소의 제곱근 배열을 반환합니다.

예제 코드: numpy.sqrt()

import numpy as np

arr = [1, 9, 25, 49]

arr_sqrt = np.sqrt(arr)

print(arr_sqrt)

출력:

[1. 3. 5. 7.]

예: out 매개 변수가 있는 numpy.sqrt()

import numpy as np

arr = [1, 9, 25, 49]
out_arr = np.zeros(4)

arr_sqrt = np.sqrt(arr, out_arr)

print(out_arr)
print(arr_sqrt)

출력:

[1. 3. 5. 7.]
[1. 3. 5. 7.]

out_arrarr와 같은 모양이며arr의 제곱근이 저장됩니다. 그리고numpy.sqrt()메서드는 위와 같이 제곱근 배열도 반환합니다.

outarr와 같은 모양이 아니면ValueError를 발생시킵니다.

import numpy as np

arr = [1, 9, 25, 49]
out_arr = np.zeros((2, 2))

arr_sqrt = np.sqrt(arr, out_arr)

print(out_arr)
print(arr_sqrt)

출력:

Traceback (most recent call last):
  File "C:\Test\test.py", line 6, in <module>
    arr_sqrt = np.sqrt(arr, out_arr)
ValueError: operands could not be broadcast together with shapes (4,) (2,2) 

예제 코드: 음수가있는numpy.sqrt()

import numpy as np

arr = [-1, -9, -25, -49]

arr_sqrt = np.sqrt(arr)

print(arr_sqrt)

출력:

Warning (from warnings module):
  File "..\test.py", line 5
    arr_sqrt = np.sqrt(arr)
RuntimeWarning: invalid value encountered in sqrt
[nan nan nan nan]

입력이 음수이면RuntimeWarning을 발생시키고 그 결과nan을 반환합니다.

예제 코드: 복소수가있는numpy.sqrt()

import numpy as np

arr = [3 + 4j, -5 + 12j, 8 - 6j, -15 - 8j]

arr_sqrt = np.sqrt(arr)

print(arr_sqrt)

출력:

[2.+1.j 2.+3.j 3.-1.j 1.-4.j]

복소수에는 두 개의 제곱근이 있습니다. 예를 들면

numpy sqrt 예

numpy.sqrt()메서드는 양의 실수를 갖는 하나의 제곱근 만 반환합니다.

작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook