본문 바로가기
Python/Python Examples

[Python Examples] 넘파이 배열(Numpy Array) 예제

by Henry Cho 2022. 12. 24.
728x90

넘파이 배열(Numpy Array) 예제

포스트 난이도: HOO_Junior


# Example 1: numpy array

 

import numpy as np

#01
my_arr = np.array([9,8,7,6,5,4,3,2,1])
print(my_arr)

[9 8 7 6 5 4 3 2 1]

넘파이 배열(numpy array)을 사용하기 위해서는 배열에 numpy 라이브러리를 사용할 것이라는 점을 작성해주어야 한다. 이후에 ([]) 안에 원소 값을 입력하여 넘파이 배열을 생성해줄 수 있다.


# Example 2: numpy array

 

import numpy as np

#02
my_mat  = np.array([[my_arr],[my_arr]])
print(my_mat.shape)

(2, 1, 9)

위의 예제 코드에서는 shape()을 통해서 배열의 형태를 살펴볼 수 있다. shape() 통해서 살펴본 my_mat은 my_arr 2개로 합쳐진 형태이다. 따라서 my.mat.shape을 통해서 배열 형태를 살펴보면 2,1,9라는 출력값을 얻어낼 수 있다.

 

여기서  (2,1,9)가 나타내는 의미는 3 dimension이면서 2 rows와 1 column으로 구성된 9개의 elements가 있다는 것이다.


# Example 3: numpy array

 

import numpy as np

#03
my_prod = np.empty(len(my_arr))
for i in range(len(my_arr)):
  my_prod[i] = my_arr[i]*my_arr[i]
print(my_prod)

[81. 64. 49. 36. 25. 16.  9.  4.  1.]

위의 예제 코드에서는 배열을 사용하여 배열의 원소 * 배열의 원소에 대한 값이 출력된 것을 확인할 수 있다. 예를 들어서 my_arr은 9부터 1까지 원소가 있으며 my_arr * my_arr로 산출되었다. 여기서 중요한 점은 np.empty의 역할과 for문을 통해서 각각의 원소끼리 곱이 이루어졌다는 점이다.

 

우선 empty() function을 통해서 빈 배열로 만들어주어 마치 initialized를 해주는 거와 같다. 이를 통해서 for문에서 반복되어 이루어지는 과정에 문제가 발생하지 않도록 도와주는 역할을 담당한다.

 

최종적으로 각각의 원소끼리 곱한 값이 산출되도록 배열을 만들어줄 수가 있다.


# Example 4: numpy array

import numpy as np

#04
my_prod_sorted = np.sort(my_prod)
print(my_prod_sorted)

[ 1.  4.  9. 16. 25. 36. 49. 64. 81.]

Example 4는 Example 3의 연장선상에 있는 예제코드이다. 위의 원소끼리 곱한 결과가 산출되고 나서 배열의 원소 값들을 정렬해주는 부분이 바로 Example 4의 예제코드이다.

 

이 예제코드에서 중요한 부분은 np.sort()를 사용해서 배열 안의 원소값을 정렬해준다는 것이다. sort function을 통해서 배열 안의 원소를 정렬해줄 수 있다.


 

728x90

댓글