Pandas DataFrame에서 특정 열의 행 합계를 어떻게 계산합니까?

Susan Sarandon
풀어 주다: 2024-11-10 12:51:02
원래의
546명이 탐색했습니다.

How do I calculate the row sum of specific columns in a Pandas DataFrame?

Pandas DataFrame에서 주어진 열의 행 합계

Python의 Pandas 라이브러리에서는 데이터 프레임의 특정 열의 합계를 계산해야 하는 경우가 종종 있습니다. 데이터프레임. 이를 효과적으로 달성하려면 적절한 매개변수와 작업을 고려해야 합니다.

다음 DataFrame을 고려해 보겠습니다.

df = pd.DataFrame({'a': [1, 2, 3],
                   'b': [2, 3, 4],
                   'c': ['dd', 'ee', 'ff'],
                   'd': [5, 9, 1]})
로그인 후 복사

우리의 목표는 다음의 합계를 나타내는 'e' 열을 추가하는 것입니다. 열 'a', 'b', 'd'입니다. 직관적으로는 다음과 같이 접근할 수 있습니다.

df['e'] = df[['a', 'b', 'd']].map(sum)
로그인 후 복사

이 방법은 원하는 출력을 생성하지 못합니다.

올바른 접근 방식은 다음 매개 변수와 함께 sum() 함수를 활용하는 것입니다.

  • axis=1: 합계가 행을 따라(가로) 수행되도록 지정합니다.
  • numeric_only=True: 작업에서 숫자 열만 고려하고 비 열은 제외합니다. -'c'와 같은 숫자 열.

이 접근 방식을 적용하면 다음과 같은 결과가 나옵니다.

df['e'] = df.sum(axis=1, numeric_only=True)
로그인 후 복사

출력:

   a  b   c  d   e
0  1  2  dd  5   8
1  2  3  ee  9  14
2  3  4  ff  1   8
로그인 후 복사

또는 원할 경우 특정 열의 합계만 계산하려면 해당 열의 목록을 생성하고 제거() 메서드를 사용하여 필요하지 않은 열을 제거하면 됩니다.

col_list = list(df)
col_list.remove('d')

df['e'] = df[col_list].sum(axis=1)
로그인 후 복사

출력:

   a  b   c  d  e
0  1  2  dd  5  3
1  2  3  ee  9  5
2  3  4  ff  1  7
로그인 후 복사

이러한 작업을 활용하면 Pandas DataFrame의 지정된 열에 대한 행을 효과적으로 합산하여 정확하고 효율적인 데이터 분석을 보장할 수 있습니다.

위 내용은 Pandas DataFrame에서 특정 열의 행 합계를 어떻게 계산합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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