>백엔드 개발 >파이썬 튜토리얼 >Pandas DataFrame을 방향이 다른 사전으로 변환하는 방법은 무엇입니까?

Pandas DataFrame을 방향이 다른 사전으로 변환하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-06 03:57:121072검색

How to Convert a Pandas DataFrame to a Dictionary with Different Orientations?

Pandas DataFrame을 사전으로 변환

Pandas DataFrame을 사전으로 변환하려면 to_dict() 메서드를 사용하세요. 기본적으로 이 방법은 DataFrame의 열 이름을 사전 키로 사용하고 각 열에 대한 인덱스:데이터 쌍의 사전을 생성합니다.

df.to_dict()

사전 출력 사용자 정의

인덱스:데이터 쌍의 사전 대신 각 열의 값을 사용하려면 orient 인수를 사용하세요. 사용 가능한 방향은 다음과 같습니다.

  • dict: 기본 방향(열 이름을 키로, 인덱스:데이터 쌍을 값으로)
  • 목록: 키는 열 이름, 값은 열 목록 data
  • series: 키는 열 이름이고, 값은 데이터를 포함하는 Series 객체입니다.
  • split: 열/데이터/인덱스를 별도의 키로 분할합니다.
  • 레코드: 각 행은 열 이름을 키와 데이터 값으로 포함하는 사전이 됩니다. 값으로
  • 색인: 'records'와 유사하지만 키는 목록이 아닌 색인 레이블입니다.

다음을 고려하세요. DataFrame:

df = pd.DataFrame({'ID': ['p', 'q', 'r'], 'A': [1, 4, 4], 'B': [3, 3, 0], 'C': [2, 2, 9]})

이 DataFrame을 'ID'를 키로 사용하는 사전으로 변환하려면 다른 열의 값을 목록으로 사용하려면 다음 코드를 사용하세요.

df.set_index('ID').T.to_dict('list')

이렇게 하면 다음 사전이 반환됩니다.

{'p': [1, 3, 2], 'q': [4, 3, 2], 'r': [4, 0, 9]}

다른 방향

다음은 예입니다. 다른 것의 방향:

dict:

df.to_dict('dict')

출력:

{'ID': {'p': 'p', 'q': 'q', 'r': 'r'},
 'A': {0: 1, 1: 4, 2: 4},
 'B': {0: 3, 1: 3, 2: 0},
 'C': {0: 2, 1: 2, 2: 9}}

l ist:

df.to_dict('list')

출력:

{'ID': ['p', 'q', 'r'], 'A': [1, 4, 4], 'B': [3, 3, 0], 'C': [2, 2, 9]}

시리즈:

df.to_dict('series')

출력 :

{'ID': 0    p
 1    q
 2    r
 Name: ID, dtype: object,
 'A': 0    1
 1    4
 2    4
 Name: A, dtype: int64,
 'B': 0    3
 1    3
 2    0
 Name: B, dtype: int64,
 'C': 0    2
 1    2
 2    9
 Name: C, dtype: int64}

분할:

df.to_dict('split')

출력:

{'columns': ['ID', 'A', 'B', 'C'], 'data': [['p', 1, 3, 2], ['q', 4, 3, 2], ['r', 4, 0, 9]], 'index': [0, 1, 2]}

기록 :

df.to_dict('records')

출력:

[{'ID': 'p', 'A': 1, 'B': 3, 'C': 2}, {'ID': 'q', 'A': 4, 'B': 3, 'C': 2}, {'ID': 'r', 'A': 4, 'B': 0, 'C': 9}]

색인:

df.to_dict('index')

출력:

{0: {'ID': 'p', 'A': 1, 'B': 3, 'C': 2},
 1: {'ID': 'q', 'A': 4, 'B': 3, 'C': 2},
 2: {'ID': 'r', 'A': 4, 'B': 0, 'C': 9}}

위 내용은 Pandas DataFrame을 방향이 다른 사전으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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