>백엔드 개발 >파이썬 튜토리얼 >Pandas를 사용하여 DataFrame 행을 그룹화하고 값 목록을 만드는 방법은 무엇입니까?

Pandas를 사용하여 DataFrame 행을 그룹화하고 값 목록을 만드는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-17 20:54:10884검색

How to Group DataFrame Rows and Create Lists of Values Using Pandas?

Pandas Groupby를 사용하여 데이터 프레임 행을 그룹화된 목록으로 변환하는 방법

문제:

주어진 여러 열이 있는 DataFrame의 목표는 특정 열을 기준으로 행을 그룹화하는 것입니다. (예: 첫 번째 열) 다른 열(예: 두 번째 열)의 값을 각 그룹 내의 목록으로 수집합니다. 예:

원본 데이터 프레임:

a b
A 1
A 2
B 5
B 5
B 4
C 6

원하는 결과:

a new
A [1, 2]
B [5, 5, 4]
C [6]

해결책:

이를 달성하려면 결과적으로 Pandas의 groupby 기능을 apply() 메소드와 함께 활용하여 각 그룹을 변환할 수 있습니다.

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({'a': ['A', 'A', 'B', 'B', 'B', 'C'], 'b': [1, 2, 5, 5, 4, 6]})

# Group by the "a" column and create lists of "b" values
grouped_list = df.groupby('a')['b'].apply(list)

# Reset the index to obtain a DataFrame
df1 = grouped_list.reset_index(name='new')

설명:

  • groupby('a'): DataFrame을 "a"로 그룹화합니다. " 열.
  • 적용(목록): list() 함수를 각 그룹에 적용하여 "b" 값을 목록으로 변환합니다.
  • reset_index(name='new'): 인덱스를 재설정하고 새 열 이름 "을 할당합니다. new"를 그룹화된 목록에 추가합니다.

결과 DataFrame인 df1에는 원하는 그룹화된 목록이 포함됩니다. 목록:

   a        new
0  A     [1, 2]
1  B  [5, 5, 4]
2  C        [6]

위 내용은 Pandas를 사용하여 DataFrame 행을 그룹화하고 값 목록을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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