>백엔드 개발 >파이썬 튜토리얼 >Pandas에서 계층적 열 인덱스를 평면화하는 방법은 무엇입니까?

Pandas에서 계층적 열 인덱스를 평면화하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-07 17:44:13750검색

How to Flatten a Hierarchical Column Index in Pandas?

계층적 인덱스 열 병합

Pandas DataFrame 열의 계층적 인덱스를 병합하려면 다음 단계를 따르세요.

1. 열을 최상위 수준으로 설정:

df.columns = df.columns.get_level_values(0)

이렇게 하면 계층적 인덱스의 최상위 수준이 새 열 이름으로 설정됩니다.

2. MultiIndex를 단일 인덱스에 결합(선택 사항):

MultiIndex를 단일 인덱스로 추가로 결합하려면 다음을 수행할 수 있습니다.

df.columns = [' '.join(col).strip() for col in df.columns.values]

이렇게 하면 공백을 구분 기호로 사용하고 선행 또는 후행을 제거하는 열 이름 공백.

예:

열에 계층적 인덱스가 있는 다음 DataFrame을 고려하세요.

df = pd.DataFrame({'s_PC': [1, 0, 1], 's_CL': [0, 0, 10]},
                    index = pd.MultiIndex.from_tuples([
                        ('day', 1),('day', 2),('day', 3)
                    ]), columns = pd.MultiIndex.from_tuples([
                        ('USAF', ''),('WBAN', ''),('year', 1993)
                    ]))

평탄화 적용 작업:

# Set columns to top level
df.columns = df.columns.get_level_values(0)

# Join MultiIndex into single index
df.columns = [' '.join(col).strip() for col in df.columns.values]

출력:

   USAF  WBAN  year  day  s_PC  s_CL
0   702   265  1993   1     1     0
1   702   265  1993   2     0     0
2   702   265  1993   3     1    10

계층 인덱스가 단일 인덱스로 평면화되었습니다.

위 내용은 Pandas에서 계층적 열 인덱스를 평면화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.