[파이썬][numpy] numpy에서 배열 조작하기

numpy는 파이썬의 과학 계산을 위한 핵심 라이브러리입니다. 배열 계산을 비롯한 다양한 수학적 연산을 지원하며, 효율적인 데이터 구조를 제공하여 데이터 조작에 매우 유용합니다. 이번 포스트에서는 numpy의 배열 조작에 대해서 알아보겠습니다.

배열 생성하기

numpy에서 배열은 ndarray 클래스를 통해 생성됩니다. numpy.array() 함수를 사용하여 파이썬 리스트를 배열로 변환할 수 있습니다. 다음은 예시입니다:

import numpy as np

# 파이썬 리스트를 배열로 변환
my_list = [1, 2, 3, 4, 5]
my_array = np.array(my_list)
print(my_array)

위 코드를 실행하면, [1 2 3 4 5]라는 결과가 출력됩니다.

배열 요소 접근하기

numpy 배열의 요소에 접근하기 위해서는 인덱싱을 사용합니다. 다음은 예시입니다:

import numpy as np

my_array = np.array([1, 2, 3, 4, 5])

# 인덱스 2의 요소에 접근
print(my_array[2])

# 슬라이싱을 통해 범위 내의 요소에 접근
print(my_array[1:4])

위 코드를 실행하면, 3[2 3 4]라는 결과가 출력됩니다.

배열 조작하기

배열 모양 변경하기

numpy에서 배열의 모양(shape)을 변경하는 방법은 다양합니다. reshape() 함수를 사용하여 배열의 모양을 변경할 수 있습니다. 다음은 예시입니다:

import numpy as np

my_array = np.array([[1, 2, 3], [4, 5, 6]])

# 배열 모양 변경
reshaped_array = np.reshape(my_array, (3, 2))
print(reshaped_array)

위 코드를 실행하면, [[1 2] [3 4] [5 6]]라는 결과가 출력됩니다.

배열 연결하기

두 개 이상의 배열을 연결하여 새로운 배열을 생성할 수 있습니다. numpy.concatenate() 함수를 사용하여 배열을 연결할 수 있습니다. 다음은 예시입니다:

import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

# 배열 연결
concatenated_array = np.concatenate((array1, array2))
print(concatenated_array)

위 코드를 실행하면, [1 2 3 4 5 6]라는 결과가 출력됩니다.

배열 변형하기

numpy에서는 배열 요소의 값을 변형하는 다양한 함수를 제공합니다. 이를 사용하여 배열의 값들을 쉽게 수정할 수 있습니다. 다음은 예시입니다:

import numpy as np

my_array = np.array([1, 2, 3, 4, 5])

# 배열 요소에 스칼라 연산 적용하기
modified_array = my_array * 2
print(modified_array)

# 배열 요소에 함수 적용하기
modified_array = np.sqrt(my_array)
print(modified_array)

위 코드를 실행하면, [ 1. 1.41421356 1.73205081 2. 2.23606798]라는 결과가 출력됩니다.

결론

numpy에서 배열 조작은 데이터 분석 및 과학 계산에 매우 유용한 기능입니다. 이번 포스트에서는 배열 생성, 배열 요소 접근, 배열 모양 변경, 배열 연결, 배열 변형 등의 기능을 소개했습니다. numpy의 다양한 배열 조작 기능을 활용하여 데이터 처리를 더욱 효율적으로 수행할 수 있습니다.