파이썬 데이터 시각화 입문 3 - Pandas 연습문제

힘센캥거루
2025년 10월 8일(수정됨)
3
12

지난 글에서는 Pandas라는 라이브러리로 데이터를 다루는 방법에 대해 다루었다.

오늘은 pandas로 간단한 출력을 해보는 연습 문제를 풀어보려고 한다.

1. 데이터 출처

요즘은 공개된 빅데이터가 많다. 당장 구글에서 '빅데이터'를 검색만 해도 많은 사이트들이 든다.

그 중에서 공공데이터 포털, kaggle을 소개해보려고 한다. 

1) 공공 데이터 포털

공공데이터 포털은 국가가 보유하고 있는 다양한 데이터를 국민들이 이용할 수 있도록 제공하는 사이트이다.

해수의 온도, 기상, 지하철 이용, 인구밀도 등 다양한 정보를 제공한다.

이 사이트의 최대 장점은 대한민국 자료에 특화되어 있다는 것이다.

2) kaggle

kaggle은 데이터 분석과학 커뮤니티로 많은 빅데이터를 구할 수 있다.

이곳에서 구할 수 있는 가장 유명한 데이터로는 타이타닉 데이터가 있다.

타이타닉에 탑승한 고객의 이름, 주소, 성별, 객실 클래스 등 다양한 자료가 담겨있다. 처음 데이터 시각화를 배울 경우 이 자료를 자주 이용한다.

3) 오늘 우리가 쓸 자료는...

오늘 우리가 이용해 볼 데이터는 공공데이터 포털에 공개된 우리나라 시도별 폭염일수이다.

공공데이터 포털에서 검색해서 다운받아도 좋다.

원자료는 csv로 되어 있어서 xlsx 파일로 변경해 놓았다.

Pandas도 csv 파일을 처리할 수 있지만, 한글로 된 데이터가 있을 경우에는 오류가 난다.

그래서 파일을 읽기 위한 몇 줄의 코드가 더 필요하다.

우리는 아직 초보이기 때문에 가능하면 xlsx 형태로 된 데이터를 취급하도록 하자. 

2. 문제

이제 문제를 풀어볼 시간이다. 아래의 1~4번 지문에 따라 데이터를 출력해보고 해답을 보자.

  1. hot_wave.xlsx 파일을 호출해서 hot이라는 변수에 담고, 제일 위쪽 3줄만 출력하기

  2. hot_wave.xlsx 데이터 중 서울, 강릉의 폭염 일수만 출력하기

  3. hot_wave.xlsx 데이터를 대전의 폭염일수를 기준으로 내림차순 정렬 후 기존의 인덱스를 버리고 인덱스 재지정하기

  4. hot_wave.xlsx 데이터 중 폭염 측정년도가 2015년 이후인 데이터만 출력하기

파이썬 데이터 시각화 입문 3 - Pandas 연습문제-1

3. 해답

난이도가 낮기 때문에 해답에 대한 설명은 따로 하지 않겠다.

모르겠다면 이전 글을 참고하자. 실수로 광고도 슬쩍 눌러준다면 더 좋다.

1) 1번 문제 해답

import pandas as pd
hot = pd.read_excel("./hot_wave.xlsx")
hot.head(3)

2) 2번 문제 해답

# 1. loc을 이용
hot.loc[:,["서울(일)", "강릉(일)"]]
# 2. iloc 이용
hot.iloc[:,1:3]

# 딕셔너리 형으로 조회
hot[["서울(일)", "강릉(일)"]]

# columns도 함께 이용
hot[hot.columns[1:3]]
파이썬 데이터 시각화 입문 3 - Pandas 연습문제-2

3) 3번 문제 해답

# 매번 변수를 새롭게 지정할 경우
sortedHot = hot.sort_values("대전(일)", ascending=False)
reIndexHot = sortedHot.reset_index(drop=True)
reIndexHot

# inplace로 기존 변수 덮어쓰기
hot.sort_values("대전(일)", ascending=False, inplace=True)
hot.reset_index(drop=True, inplace=True)
hot
파이썬 데이터 시각화 입문 3 - Pandas 연습문제-3

4) 4번 문제 해답

hot.loc[hot["연도별"] > 2015]

hot[hot["연도별"] > 2015]

hot[hot.연도별 > 2015]
파이썬 데이터 시각화 입문 3 - Pandas 연습문제-4

4. 글을 마치며

다음 글에서는 Matplotlib의 기본적인 사용법에 대해 알아보려고 한다.

어느정도 matplotlib의 기능을 익힌 다음, pandas로 불러온 데이터를 Matplotlib으로 시각화시키는 순으로 익혀보자.

관련 글

학교 업무 자동화 - AI를 이용한 생활기록부 점검 과목별 세부능력 특기사항편
학교 업무 자동화 - AI를 이용한 생활기록부 점검 과목별 세부능력 특기사항편
학교에서 가장 의미없고 힘들며 지루한 업무를 하나 뽑으라고 하면 나는 생기부 점검을 뽑을 것이다.중학교에서는 생활기록부가 그리 중요치 않지만 고등학교에서는 입시와 관련되어 있기 때문에 무척 중요하다.문제는 이런 생기부 점검에서 찾는 것이 고작 단순 오탈자, 기재 금지용...
밑바닥부터 만들면서 배우는 LLM 7장 독서 후기 및 챌린지 후기
밑바닥부터 만들면서 배우는 LLM 7장 독서 후기 및 챌린지 후기
7장 내용은 지시를 따르도록 미세 튜닝하는 과정이다.어떤 질문에 대해 기대하는 응답을 하도록 하는 것.역시나 필요한 것은 데이터이다.1. 지시 미세 튜닝 절차여기서의 핵심은 질문-응답 데이터 셋을 준비하여 입력-출력 쌍으로 훈련시키는 것.이걸 프롬프트 스타일이라고 한다...
밑바닥부터 만들면서 배우는 LLM 6장 독서 후기
밑바닥부터 만들면서 배우는 LLM 6장 독서 후기
6장은 분류를 위한 미세 튜닝하기이다.예제로 나오는 것은 스팸 분류기 만들기.스팸 분류기는 이것이 스팸인지, 스펨이 아닌지를 분류하는 것이므로 출력의 결과가 0, 1과 같은 값으로 나와야 한다.1. 미세튜닝의 순서미세 튜닝의 과정은 모델을 훈련시키는 과정과 비슷하다.데...
밑바닥부터 만들면서 배우는 LLM 5장 독서 후기
밑바닥부터 만들면서 배우는 LLM 5장 독서 후기
오늘은 12월 14일이다.사실 챌린지 기간은 이미 2주나 지나 버렸지만, 그렇다고 후기를 포기할 순 없었다.이렇게 남기는 TIL이 나중에 피와 살이 되기 때문.코드 자체보다는 의미에 집중해서 적어보려고 한다.1. 모델의 손실 계산GPT 모델을 만든 후에 어떤 방식으로 ...
밑바닥부터 만들면서 배우는 LLM 4장 독서 후기
밑바닥부터 만들면서 배우는 LLM 4장 독서 후기
오늘이 11월 26일이니, 매일 1장식 독파하면 챌린지 성공이다.첫째와 둘째의 방해 속에서 가능할지 모르겠다.1. 더미 트랜스포머GPT 모델을 만들면서 파이토치에서 트랜스포머 더미 블록을 가져오는 것을 봤다.찾아보니 pytorch의 nn 안에는 이미 여러 트랜스포머 모...
밑바닥부터 만들면서 배우는 LLM 3장 독서 후기
밑바닥부터 만들면서 배우는 LLM 3장 독서 후기
맥북에 물을 한바가지 쏟은 후, 멘붕이 와서 3~4일 정도를 허비했다.지금 생각해보니 그냥 어차피 맥북은 나간거고, 수리 맡긴다고 생각하고 뭐라도 할걸 그랬나 싶다.어쨌든 조금 늦었지만, 그래도 끝까지 달려봐야 한다는 생각에 3장 후기를 남긴다.1. 어텐션 메커니즘3장...

댓글을 불러오는 중...