머신러닝/혼공 머신러닝

[번외] Pandas 함수의 axis 파라미터 정리

좋아좋아브라이언 2024. 1. 31. 14:46

 

axis는 판다스의 apply(), drop(), concat()등의 많은 판다스 함수의 인자로 사용이 된다.  인자에 사용되는 0 이 행, 가로, 세로, 열에 적용되는지 헷갈린다. 한번 정리하는 시간을 갖자!!

 

 

1. 용어 정리 부터

사용되는 용어가 많이 나온다.. 근데.. 용어 정리가 안되면,  읽고 나면 또 헷갈린다. ㅋㅋ

 

0 = 행 = row=  가로      = 데이타

1 = 열 = column = 세로 = feature, 속성

 

(행렬... 수학시간에 배운 내용이 기억이 안나더라도.. 행렬은 단어는 익숙하다.

행렬에서 행이 먼저 나오므로 0, 렬=열이 나중에 나오므로 1로 기억하자..어쩔수 없다...)

 

 

2. 판다스 함수에서의 행과 열

axis=0 means along "indexes". It's a row-wise operation.

axis=0은 행, axis=1은 열이라고 무조건 외우고, 함수에 따라 2가지가 반영이 된다.

  • 적용 방향을 나타난다. (.drop(),concat()등)
  • 결과를 나타나는 방향이다.  (.apply(),sum() 함수등)

정도는 없는 것 같다.. axis 파라미터 사용 함수를 익힐때마다... 나름의 규칙을 생각하는 수 밖에..

2.1 적용 방향 (기본)

2.1.1 concat(axis=0)

두 테이블의 합치는 concat()는 axis=0, 1을 사용할 수 있다.

아래 예는 하나의 테이블을 기준 잡고, 다른 테이블의 행을 연결한다. 행을 적용 해야 하니... axis=0으로 설정한다.

 

2.2.2 drop(axis=0)

행을 삭제할때는 axis=0, 열을 삭제할때는 axis=1이다.

 

2.2 결과 방향

appy() 함수와 같이 axis=0을 설정하면 결과가 행으로 생성이 된다.  아래와 같이 행에 sum을 생성하기 위해서는 컬럼들의 sum을 구하게 된다.

 

axis=0, 결과는 행으로 생성 (행으로 생성하기 위해 컬럼들을 이용!!)

 

참고한 자료들

 

https://pandas.pydata.org/pandas-docs/stable/getting_started/intro_tutorials/index.html

 

Getting started tutorials — pandas 2.2.0 documentation

 

pandas.pydata.org

 

https://hogni.tistory.com/49

 

[파이썬 pandas] 판다스 매개변수 axis의 의미를 알아보자

판다스를 사용하다 보면 평균 계산, 데이터프레임 열이나 행 삭제 작업등을 할 때 axis(축)을 지정해야 합니다. 축을 넣어야 할 때면 0을 넣어야 하는지 1을 넣어야 하는지 헷갈릴 수 있습니다. 이

hogni.tistory.com