Pandas의 그룹화된 DataFrame에 열 추가
Pandas에서 GroupBy 작업을 수행할 때 결과에 추가 정보를 추가하는 것이 도움이 될 수 있습니다. 데이터프레임. 이 문서에서는 그룹별 집계를 수행한 후 그룹화된 데이터 프레임에 열을 효율적으로 추가하는 방법에 관한 질문을 탐구합니다.
다음 데이터 프레임을 고려하세요.
df = pd.DataFrame({'c':[1,1,1,2,2,2,2],'type':['m','n','o','m','m','n','n']})
목표는 'c'의 각 값에 대해 'type' 열을 추가하고, 각 'c' 그룹의 '크기'를 나타내는 그룹화된 데이터 프레임에 새 열을 추가합니다. groupby 집계를 수행한 후:
g = df.groupby('c')['type'].value_counts().reset_index(name='t')
이제 데이터 프레임 'g'에는 각 'c'에 대한 'type' 개수가 포함됩니다.
c type t 0 1 m 1 1 1 n 1 2 1 o 1 3 2 m 2 4 2 n 2
'size' 열을 추가하려면 , 한 가지 옵션은 지도 함수를 사용하는 것입니다.
a.index = a['c'] g['size'] = g['c'].map(a['size'])
그러나 변환 함수를 사용하는 더 간단한 접근 방식이 있습니다.
g['size'] = df.groupby('c')['type'].transform('size')
변환을 사용하면 크기 열을 추가할 수 있습니다. 인덱스를 원래 데이터 프레임에 맞춰 'g' 데이터 프레임에 직접 연결합니다. 결과 데이터프레임:
c type t size 0 1 m 1 3 1 1 n 1 3 2 1 o 1 3 3 2 m 2 4 4 2 n 2 4
위 내용은 Pandas에서 Groupby 작업 후 그룹화된 DataFrame에 열을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!