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

Python Pandas – 기존 인덱스 값으로 DataFrame을 생성하면서 새로운 인덱스 적용하기

개요

Pandas에서 기존 인덱스의 값은 그대로 활용하되, 새로운 인덱스가 적용된 DataFrame을 만들고 싶다면 index.to_frame() 메서드를 사용하면 됩니다. 이때 index 매개변수를 False로 설정하면, 원래 인덱스 값들은 DataFrame의 일반 열로 변환되고 대신 0부터 시작하는 정수형 기본 인덱스가 새롭게 부여됩니다.

라이브러리 임포트

먼저 필요한 라이브러리를 임포트합니다.

import pandas as pd

Pandas 인덱스 생성

상품 이름으로 구성된 Pandas 인덱스를 생성해 보겠습니다.

index = pd.Index(['Electronics','Accessories','Decor', 'Books', 'Toys'],name ='Products')

생성된 Pandas 인덱스를 출력합니다.

print("Pandas Index...\n",index)

새 인덱스를 적용하여 DataFrame으로 변환

index.to_frame(index=False)를 호출하면 새로운 인덱스가 강제로 적용되면서 해당 인덱스가 DataFrame으로 변환됩니다. 즉, 기존 인덱스('Products')는 별도의 인덱스 역할을 하지 않고 하나의 열로 들어가며, 정수형 인덱스가 새로 지정됩니다.

print("\nIndex to DataFrame...\n",index.to_frame(index=False))

전체 예제 코드

다음은 전체 코드입니다.

import pandas as pd

# Pandas 인덱스 생성
index = pd.Index(['Electronics','Accessories','Decor', 'Books', 'Toys'],name ='Products')

# Pandas 인덱스 출력
print("Pandas Index...\n",index)

# 인덱스에 포함된 요소 개수 확인
print("\nNumber of elements in the index...\n",index.size)

# 데이터의 dtype 확인
print("\nThe dtype object...\n",index.dtype)

# 새 인덱스를 적용하고 인덱스를 DataFrame으로 변환
# 기존 인덱스가 다른 인덱스로 대체됨
print("\nIndex to DataFrame...\n",index.to_frame(index=False))

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Pandas Index...
Index(['Electronics', 'Accessories', 'Decor', 'Books', 'Toys'], dtype='object', name='Products')

Number of elements in the index...
5

The dtype object...
object

Index to DataFrame...
      Products
0  Electronics
1  Accessories
2        Decor
3         Books
4         Toys