[파이썬][Numpy] 배열 복사와 뷰(view) 예제

Numpy 배열의 복사와 뷰(View)에 대한 예제를 제공하겠습니다. 배열을 복사하거나 뷰를 생성하는 방법에는 중요한 차이가 있으며, 이를 이해하는 것이 중요합니다.

배열 복사 예제:

import numpy as np

# 배열 생성 예제
original_arr = np.array([1, 2, 3, 4, 5])

# 배열 복사 (깊은 복사)
copied_arr = original_arr.copy()
print("깊은 복사 결과:")
print(copied_arr)

# 원본 배열 변경
original_arr[0] = 99
print("\n원본 배열 변경 후:")
print(original_arr)
print("복사된 배열:")
print(copied_arr)

배열 뷰(View) 예제:

# 배열 생성 예제
original_arr = np.array([1, 2, 3, 4, 5])

# 배열 뷰 생성
view_arr = original_arr.view()
print("배열 뷰:")
print(view_arr)

# 원본 배열 변경
original_arr[0] = 99
print("\n원본 배열 변경 후:")
print(original_arr)
print("배열 뷰:")
print(view_arr)

위의 코드에서는 배열 복사와 배열 뷰의 차이를 보여줍니다.

실행 결과는 다음과 같을 것입니다:

배열 복사 결과:

깊은 복사 결과:
[1 2 3 4 5]

원본 배열 변경 :
[99  2  3  4  5]
복사된 배열:
[1 2 3 4 5]

배열 뷰(View) 결과:

배열 :
[1 2 3 4 5]

원본 배열 변경 :
[99  2  3  4  5]
배열 :
[99  2  3  4  5]

배열을 복사할지 뷰를 생성할지는 작업의 성격과 요구사항에 따라 결정해야 합니다.