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')
설명:
결과 DataFrame인 df1에는 원하는 그룹화된 목록이 포함됩니다. 목록:
a new 0 A [1, 2] 1 B [5, 5, 4] 2 C [6]
위 내용은 Pandas를 사용하여 DataFrame 행을 그룹화하고 값 목록을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!