그룹화된 Pandas DataFrame에서 문자열 결합을 효율적으로 추출하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-10-25 05:48:29
원래의
988명이 탐색했습니다.

How to Efficiently Extract the Union of Strings from Grouped Pandas DataFrames?

Pandas GroupBy의 문자열 통합

이 질문은 일반적인 문제를 다룹니다. 즉, 특정 항목으로 그룹화된 Pandas DataFrame에서 문자열 통합을 추출하는 것입니다. 열. 불행하게도 문자열이 포함된 열에 sum() 함수를 사용하면 문자열이 연결되지 않습니다. 대신 이 문서에서는 원하는 결과를 얻기 위한 대체 방법을 살펴봅니다.

사용자 정의 함수와 함께 GroupBy 사용

한 가지 해결책은 특정 작업을 적용하는 사용자 정의 함수를 정의하는 것입니다. 각 그룹에. 예를 들어, apply() 메서드를 사용하여 그룹을 반복하고 원하는 값을 반환할 수 있습니다. 방법은 다음과 같습니다.

<code class="python">def my_function(group):
    return "{%s}" % ', '.join(group['C'])</code>
로그인 후 복사

이 함수는 각 그룹의 'C' 열에 있는 문자열을 중괄호로 묶인 집합으로 결합합니다.

<code class="python">df.groupby('A')['C'].apply(my_function)</code>
로그인 후 복사

람다와 함께 GroupBy 사용 식

더 간단한 구문에는 람다 식을 사용하는 것이 포함됩니다.

<code class="python">df.groupby('A')['C'].apply(lambda x: "{%s}" % ', '.join(x))</code>
로그인 후 복사

이 람다 식은 사용자 지정 함수와 동일한 연결 작업을 수행합니다.

그룹 결합

때로는 여러 그룹의 정보를 단일 시리즈로 결합하는 것이 유용할 수 있습니다. 예는 다음과 같습니다.

<code class="python">def f(group):
    return Series(dict(A=group['A'].sum(),
                       B=group['B'].sum(),
                       C="{%s}" % ', '.join(group['C'])))</code>
로그인 후 복사

이 함수는 sum()을 사용하여 'A' 및 'B' 열을 집계하고 'C' 열을 집합으로 결합합니다.

<code class="python">df.groupby('A').apply(f)</code>
로그인 후 복사

이것은 접근 방식을 사용하면 각 그룹에 대해 집계된 값이 포함된 DataFrame이 생성됩니다.

이러한 방법을 사용하면 그룹화된 Pandas DataFrame에서 문자열 결합을 효과적으로 추출하여 의미 있는 방식으로 텍스트 기반 데이터를 분석하고 시각화하는 기능을 활용할 수 있습니다. .

위 내용은 그룹화된 Pandas DataFrame에서 문자열 결합을 효율적으로 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!