Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 NumPy 배열로 시리즈를 만들고 인덱스 값을 명시적으로 지정하는 방법

이 글에서는 NumPy 배열을 활용해 pandas의 Series(시리즈) 데이터 구조를 만드는 방법과, 인덱스(index) 값을 직접 지정하는 방법을 살펴보겠습니다.

시리즈를 생성할 때 인덱스 값을 별도로 지정하지 않으면 기본적으로 0부터 시작하는 정수가 순서대로 할당됩니다. 하지만 필요에 따라 사용자가 원하는 값을 인덱스로 직접 전달할 수 있습니다.

예제 코드

import pandas as pd
import numpy as np
my_data = np.array(['ab','bc','cd','de', 'ef', 'fg','gh', 'hi'])
my_index = [3, 5, 7, 9, 11, 23, 45, 67]
my_series = pd.Series(my_data, index = my_index)
print("This is series data structure created using Numpy array and specifying index values")
print(my_series)

실행 결과

This is series data structure created using Numpy array and specifying index values
3   ab
5   bc
7   cd
9   de
11  ef
23  fg
45  gh
67  hi
dtype: object

코드 설명

  • 먼저 필요한 라이브러리인 pandas와 numpy를 임포트하고, 편의를 위해 각각 pd와 np라는 별칭(alias)을 붙입니다.
  • 다음으로 np.array() 함수를 사용해 문자열 요소들을 담은 NumPy 배열을 생성합니다.
  • 그런 다음 시리즈의 인덱스로 명시적으로 지정하고 싶은 값들을 리스트 형태로 만듭니다.
  • pandas 라이브러리의 Series() 함수에 앞서 만든 데이터 배열과 인덱스 리스트를 매개변수로 전달하여 시리즈 객체를 생성합니다.
  • 마지막으로 print() 함수를 통해 결과를 콘솔에 출력합니다.

참고: 실행 결과에서 볼 수 있듯이, 시리즈 데이터 구조를 생성할 때 각 값에 대응되는 인덱스를 원하는 값으로 자유롭게 커스터마이징할 수 있습니다. 이처럼 명시적인 인덱스를 사용하면 숫자뿐만 아니라 문자열 등 다양한 유형의 라벨로 데이터에 접근할 수 있다는 장점이 있습니다.