일상 속 공감을 공유하다.

공부/판다스

Do it! 데이터 분석을 위한 판다스 입문 - 02 판다스 시작하기

ohhw 2021. 7. 13. 16:11
728x90
반응형

02 판다스 시작하기.ipynb
0.04MB

 

사실상 첫 단추를 꿰는 단계이기 때문에

간단하게 구성 환경을 기술한다.

뭐든 잘 모르는 초보단계라면

그냥 아나콘다 패키지

설치해서 이용하길 바란다.

 

 

 

 

판다스 라이브러리 불러오고,

pd는 판다스의 대표 alias다.

업계 국룰이다.

 

데이터 프레임에 담는다.

df라는 변수에 csv를 불러와서 담는다.

 

뒤에 기술된 ( ) <- 소괄호에는

경로를 작성하는 파라미터 입력란인데

 

경로에 온점이 한 개라면

현재 경로를 의미하며,

'./경로' 

 

온점이 두 개라면

이전 경로를 의미한다. 

'../경로'

 

 

 

df.head()를 입력하면

데이터 프레임의 최상단 데이터를 출력해준다.

default는 5로 설정되어있다.

 

df의 타입을 확인하니 DataFrame으로 출력된다.

 

df.shape를 입력하니 데이터 프레임의 모양이 나온다.

(1704, 6)은 행(Row)이 1704개 그리고 열(Column)이 6개를 의미한다.

 

df.columns를 입력하여 6개 컬럼의 이름을 확인한다.

맨 뒤에 보면 dtype으로 object가 출력되는 것을 알 수 있다.

 

 

 

 

df.dtypes를 이용해 df의 데이터별로 타입을 확인 가능하다.

 

df.info()를 입력하면 자세하게 정보를 요약해준다.

 

 

 

 

예전에 맥북에서 실습할 때 못 느꼈는데

위 구문에서 3과 4행에 df.head()와 df.tail() 대신에

country_df.head()country_df.tail()가 들어가면 맞지 않았나 싶다.

(하긴 저 부분 읽을 때 저게 무슨 소린지조차 이해도 못하고 따라 쳤으니...)

어떻게 알았냐면... 바로... 다음 행을 보자

 

 

 

여기선 subset.head()랑 subset.tail()을 쓴 것을 보고 알아챘다.

뭐 물론 그때 당시엔 죽었다 깨어나도 몰랐겠지...

작성 당시 실습환경은 MacOS였고,

현재 이 글을 작성하는 OS는 Windows니

따로 구문을 수정하진 않겠다. 참고하길 바란다.

 

 

 

 

 

데이터를 정제해야 하는 상황이라면

이 슬라이싱을 정말 많이 사용할 것이다.

잊지 말자. 백날 메모해봤자 한번 써보는 게 낫다.

 

 

 

예시를 든다고 구문을 예쁘게 적어는 놨지만

업무 볼 때는 필요한 loc만 잘라서 툭툭 쓸 거다.

 

 

 

 

여기서 무지 중요한 이야기가 나온다.

파이썬에선 1부터 아니라 0부터 시작한다.

1, 2, 3, 4, 5,... 가 아니라

0, 1, 2, 3, 4,... 가 맞다.

 

 

 

 

df.tail(n=1)을 통해 꼬리 부분의 1개 컬럼을 출력한다.

 

loc 해서 0과 99 그리고 999번 데이터를 출력한다.

 

 

 

 

loc과 tail의 타입을 보니 하나는 Series, 하나는 DataFrame이다.

 

 

 

 

iloc 열 지정은 정수의 리스트로 전달해야 한다.

 

 

 

 

5개의 range를 리스트에 담아서 확인하니 0부터 4번 컬럼이 출력된다.

 

 

 

 

3, 4, 5번째 내용을 출력한다.

 

 

 

 

이번엔 small_range를 0, 6, 2번째 컬럼 순서로 출력한다.

 

range 메서드보다 iloc는 리스트로 변환하지 않아도 되기 때문에 더 자주 쓴다.

 

 

 

 

 

위와 동일한 내용이 이어진다.

 

 

 

 

다만, 구체적인 컬럼명을 활용하는 것이 더 정확한 사용이 가능하다.

 

 

 

 

 

 head의 매개변수를 10개로 데이터를 출력해본다.

 

 

 

 

 

year로 그루핑 해서 평균을 낸 결과다.

 

 

 

 

동일하다.

 

 

 

 

응용해서 한 번에 계산한 결과이다.

 

 

 

그룹화한 데이터 개수를 출력

 

 

 

 

 

그래프를 그리기 위한 라이브러리 임포트

 

 

 

 

출력하기 위한 데이터 명에 뒤에

.plot()

을 찍으면 line graph가 출력된다.

728x90