SQL에서 GROUP BY 연산은 지정된 열의 값을 기준으로 데이터를 하위 집합으로 나눕니다. HAVING 절은 이러한 하위 집합에 필터 제약 조건을 적용합니다. 이 기능을 사용하면 선택적 데이터 집계 및 필터링이 가능합니다.
Pandas에서 GROUP BY 기능은 GroupBy 개체를 반환하는 groupby()
메서드를 통해 사용할 수 있습니다. SQL HAVING 절에 해당하는 Pandas는 filter()
에 의해 생성된 하위 집합에 필터를 적용하는 groupby()
메서드입니다.
<code>df.groupby(by_column).filter(filter_function)</code>
그 중:
df
은 Pandas DataFrame입니다. by_column
은 그룹화에 사용되는 열입니다. filter_function
은 각 그룹에 대한 부울 값을 반환하는 함수입니다. Pandas에서 그룹화된 데이터세트에 필터를 적용하려면 다음 단계를 따르세요.
groupby()
을 호출하여 GroupBy 개체를 만듭니다. filter()
메소드를 이용하여 각 그룹에 filter_function
를 적용합니다. filter_function
은 각 그룹에 대해 부울 값을 반환해야 합니다. 다음과 같은 Pandas DataFrame이 있다고 가정해 보겠습니다.
<code>df = pd.DataFrame([[1, 2], [1, 3], [5, 6]], columns=['A', 'B'])</code>
B열의 합이 4보다 큰 그룹을 찾으려면 다음 코드를 사용할 수 있습니다.
<code>result = df.groupby('A').filter(lambda x: x['B'].sum() > 4)</code>
결과는 필터 기준을 충족하는 그룹의 행을 포함하는 새 DataFrame입니다.
<code>print(result)</code>
출력:
<code> A B 0 1 2 1 1 3</code>
filter_function
은 Pandas 그룹을 입력으로 받아들이고 부울 값을 반환하는 유효한 Python 함수일 수 있습니다. filter_function
에는 그룹화에 사용되는 열에 대한 액세스 권한이 없다는 점에 유의하는 것이 중요합니다. 이러한 열에 액세스해야 하는 경우 필터를 적용하기 전에 열별로 수동으로 그룹화할 수 있습니다. 위 내용은 Pandas에서 SQL의 GROUP BY HAVING 절을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!