2023년 6월 업데이트
안녕하세요. SQLER의 코난 김대우입니다.
이번 강좌에서는, Python 머신러닝 강좌 - 4. Pandas DataFrame을 진행토록 하겠습니다.
예제 노트북 파일 : 4. Pandas DataFrame 예제 노트북
SQLER에서 진행되는 전체 Python / 머신러닝 강좌 목록
코드를 실행하기 위해서는, vscode에서 새로운 파일을 만들고 강좌 내용을 단계별로 copy&paste 해서 실행하시면 됩니다. 또는, Jupyter notebook을 실행하고 단계별로 실행하셔도 됩니다.
예를 들어, 4_more_pandas.ipynb를 생성하고 vscode에서 실행하면, Jupyter notebook이 실행됩니다.(vscode에서 실행도 가능하며, 웹브라우저에서도 실행 가능합니다.)
또는, github 리포지토리를 clone 하신 후, vscode나 Jupyter notebook에서, 위의 노트북 파일을 열면 됩니다.
상세한 환경 구성이 필요하시다면, 개발자 커뮤니티 SQLER.com - Python 초급 강좌 목차 - 1. Python 개발 환경 구성 문서를 참조해 WSL, vscode, conda, jupyter notebook 설정을 모두 먼저 완료하시길 권장해 드립니다.
TL;DR
Pandas DataFrame은 데이터 분석에 활용됩니다. "head(n)" 메서드는 DataFrame의 처음 n개 행을 반환하고 "tail(n)" 메서드는 마지막 n개의 행을 반환합니다. "shape" 속성은 DataFrame의 행과 열의 수를 제공합니다. "info()" 메서드는 DataFrame에 대한 자세한 정보를 제공합니다.
Python 머신러닝 강좌 - 4. Pandas DataFrame
지난 시간에는 간략히 pandas의 Series와 DataFrame에 대해 살펴보았습니다. 이번 시간에는 훨씬 많이 사용하시게 될 pandas의 DataFrame에 대해 조금 더 깊게 살펴보도록 하겠습니다.
☑️ 챗GPT 활용: python pandas에 대해서 알려줘
DataFrame의 데이터 조사
DataFrame의 내용을 빠르게 조사할 경우에 이 내용이 유용합니다. pandas 라이브러리를 import 하고, 이어서 공항에 대한 정보를 포함하는 DataFrame을 생성해 보겠습니다.
import pandas as pd airports = pd.DataFrame([ ['Seatte-Tacoma', 'Seattle', 'USA'], ['Dulles', 'Washington', 'USA'], ['Heathrow', 'London', 'United Kingdom'], ['Schiphol', 'Amsterdam', 'Netherlands'], ['Changi', 'Singapore', 'Singapore'], ['Pearson', 'Toronto', 'Canada'], ['Narita', 'Tokyo', 'Japan'] ], columns = ['Name', 'City', 'Country'] ) airports
실행하면 결과는 아래와 같습니다.
첫 n개의 행(row) 리턴
수천 개의 많은 row들 있는 경우, 처음 몇 행만 보고 싶을 수 있습니다.
- head(n)는 상위 n 행을 리턴합니다.
airports.head(3)
마지막 n개의 행 리턴
DataFrame의 마지막 행을 보는 것은 모든 데이터가 올바르게 로드되었는지 체크하는 좋은 방법입니다.
- tail(n)은 마지막 n 행을 리턴합니다.
airports.tail(3)
DataFrame의 row 및 column 수 확인
DataFrame에 얼마나 많은 데이터가 있는지 체크할 때 사용합니다.
- shape는 row과 column의 수를 리턴합니다.
airports.shape === 실행결과 === (7, 3)
DataFrame에 대한 자세한 정보 얻기
- info()는 DataFrame에 대한 자세한 정보를 리턴합니다.
리턴되는 정보
- row 수 및 index 값 범위
- column 수
- 각 column에 대해: column 이름, null이 아닌 값의 개수, datatype 정보가 리턴됩니다.
airports.info() === 실행결과 === <class 'pandas.core.frame.DataFrame'> RangeIndex: 7 entries, 0 to 6 Data columns (total 3 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Name 7 non-null object 1 City 7 non-null object 2 Country 7 non-null object dtypes: object(3) memory usage: 296.0+ bytes
이렇게 간단히, DataFrame에서 데이터를 조회하는 부분을 살펴보았습니다. 데이터를 로드 후 shape를 체크하거나, 빠르게 살펴볼 때 유용한 명령들이니 잘 봐두시면 이후에도 많은 도움 되실 거에요.
파이썬 강좌 책 구매
강좌가 도움이 되셨다면, 책으로 구매 가능합니다. 책 판매 수익금은 전액 코딩 교육 사회공헌 활동에 기부되며, 아래 링크에서 구매하시면 더 많은 금액이 기부됩니다.
책구매 링크: 챗GPT와 함께하는 파이썬 & 머신러닝 코딩 마스터