NumPy Array 기본 산술 연산
NumPy는 Python에서 수치 연산을 수행하는 데 필수적인 라이브러리로, 대규모 다차원 배열과 행렬 연산을 효율적으로 처리할 수 있습니다. 오늘은 NumPy Array의 기본 산술 연산에 대해 알아보겠습니다. 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 기본 연산을 다양한 예제와 함께 살펴보겠습니다.
1. NumPy 배열 생성하기
우선, 산술 연산을 수행할 배열을 생성해 보겠습니다. NumPy 배열은 numpy.array()
함수를 사용하여 생성할 수 있습니다.
import numpy as np
# 배열 생성
array1 = np.array([1, 2, 3, 4])
array2 = np.array([5, 6, 7, 8])
print("Array 1:", array1)
print("Array 2:", array2)
결과:
Array 1: [1 2 3 4]
Array 2: [5 6 7 8]
2. 배열 간 덧셈
NumPy 배열 간의 덧셈은 간단하게 +
연산자를 사용하면 됩니다. 두 배열의 같은 위치에 있는 요소끼리 더해집니다.
# 배열 덧셈
result_add = array1 + array2
print("덧셈 결과:", result_add)
결과:
덧셈 결과: [ 6 8 10 12]
3. 배열 간 뺄셈
배열 간 뺄셈도 -
연산자를 사용하여 같은 방식으로 수행됩니다.
# 배열 뺄셈
result_sub = array2 - array1
print("뺄셈 결과:", result_sub)
결과:
뺄셈 결과: [4 4 4 4]
4. 배열 간 곱셈
배열 간 곱셈은 *
연산자를 사용합니다. 이 경우에도 같은 위치의 요소끼리 곱해집니다.
# 배열 곱셈
result_mul = array1 * array2
print("곱셈 결과:", result_mul)
결과:
곱셈 결과: [ 5 12 21 32]
5. 배열 간 나눗셈
배열 간 나눗셈은 /
연산자를 사용하며, 각 요소가 나누어진 결과를 반환합니다.
# 배열 나눗셈
result_div = array2 / array1
print("나눗셈 결과:", result_div)
결과:
나눗셈 결과: [5. 3. 2.33333333 2.]
6. 스칼라와 배열 간 연산
NumPy는 스칼라 값과 배열 간의 연산도 지원합니다. 각 배열 요소에 스칼라 값을 적용하여 연산합니다.
스칼라 덧셈
# 스칼라 덧셈
result_scalar_add = array1 + 10
print("스칼라 덧셈 결과:", result_scalar_add)
결과:
스칼라 덧셈 결과: [11 12 13 14]
스칼라 곱셈
# 스칼라 곱셈
result_scalar_mul = array1 * 2
print("스칼라 곱셈 결과:", result_scalar_mul)
결과:
스칼라 곱셈 결과: [ 2 4 6 8]
7. 브로드캐스팅
NumPy에서 배열 간의 크기가 다를 때도 특정 조건을 만족하면 연산을 수행할 수 있습니다. 이를 브로드캐스팅(Broadcasting)이라고 합니다.
1차원 배열과 2차원 배열 간의 연산
# 1차원 배열과 2차원 배열 생성
array3 = np.array([[1, 2, 3], [4, 5, 6]])
array4 = np.array([10, 20, 30])
# 브로드캐스팅 연산
result_broadcast = array3 + array4
print("브로드캐스팅 결과:")
print(result_broadcast)
결과:
브로드캐스팅 결과:
[[11 22 33]
[14 25 36]]
8. 요소별 제곱 및 제곱근
NumPy는 배열의 각 요소에 대해 제곱 및 제곱근 계산도 간단히 수행할 수 있습니다.
제곱 계산
# 요소별 제곱
result_square = array1 ** 2
print("제곱 결과:", result_square)
결과:
제곱 결과: [ 1 4 9 16]
제곱근 계산
# 요소별 제곱근
result_sqrt = np.sqrt(array1)
print("제곱근 결과:", result_sqrt)
결과:
제곱근 결과: [1. 1.41421356 1.73205081 2. ]
9. 마무리
이처럼 NumPy를 사용하면 배열 간의 산술 연산을 간단하고 효율적으로 수행할 수 있습니다. 오늘 다룬 내용은 다음과 같습니다:
- 배열 간 덧셈, 뺄셈, 곱셈, 나눗셈
- 스칼라와 배열 간 연산
- 브로드캐스팅
- 요소별 제곱 및 제곱근 계산
이제 여러분도 직접 NumPy를 사용하여 다양한 산술 연산을 실습해 보세요! NumPy를 활용하면 데이터 분석과 과학 계산이 훨씬 쉬워질 것입니다.
'Python NumPy' 카테고리의 다른 글
NumPy 유니버설 함수 (Universal Functions, ufunc) 알아보기 (0) | 2025.01.26 |
---|---|
NumPy 배열 브로드캐스팅 (Broadcasting) (0) | 2025.01.25 |
NumPy 슬라이싱 및 배열의 복사와 뷰 (0) | 2025.01.23 |
NumPy 배열의 인덱싱 이해하기 (0) | 2025.01.22 |
NumPy 배열의 데이터 타입 이해하기 (0) | 2025.01.21 |