[번외] Pandas 함수의 axis 파라미터 정리
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