본문 바로가기
파이썬

파이썬 Pandas 데이터 프레임 총 행

by º기록 2020. 12. 23.
반응형

다음과 같은 데이터 프레임이 있습니다.

     foo  bar  qux
0    a    1    3.14
1    b    3    2.72
2    c    2    1.62
3    d    9    1.41
4    e    3    0.58

데이터 프레임 끝에 '총계'행을 추가하고 싶습니다.

     foo  bar  qux
0    a    1    3.14
1    b    3    2.72
2    c    2    1.62
3    d    9    1.41
4    e    3    0.58
5    tot  15   9.47

sum 명령을 사용하려고했지만 데이터 프레임으로 다시 변환 할 수 있지만 데이터 유형을 유지하지 않는 Series로 끝납니다.

tot_row = pd.DataFrame(df.sum()).T
tot_row['foo'] = 'tot'
tot_row.dtypes:
     foo    object
     bar    object
     qux    object

총 행에 다른 작업을 적용해야하므로 원래 데이터 프레임의 데이터 유형을 유지하고 싶습니다.

baz = 2*tot_row['qux'] + 3*tot_row['bar']

 

해결 방법

 

합계 행 추가

df.append(df.sum(numeric_only=True), ignore_index=True)

변환은 문자열 또는 개체 열이있는 경우에만 필요합니다.

그것은 깨지기 쉬운 솔루션이므로 데이터 프레임에서 작업을 고수하는 것이 좋습니다. 예.

baz = 2*df['qux'].sum() + 3*df['bar'].sum()

 

참조 페이지 https://stackoverflow.com/questions/21752399

 

 

반응형

댓글