파이썬 토이 프로젝트: F1 레이싱 데이터 분석하고 그래프 그리기 🏎️
8일 전
안녕하세요! 파이썬을 활용해 실생활의 흥미로운 데이터를 분석하는 개발자입니다.
파이썬 기본 문법을 공부하신 뒤 "이제 어떤 데이터를 분석해 볼까?" 고민하시는 분들을 위해, 오늘은 전 세계에서 가장 빠른 스포츠인 F1 레이싱 데이터를 파이썬으로 분석하는 프로젝트를 소개해 드립니다.
깔끔한 데이터는 책 속에만 있습니다
보통 파이썬 기초 교재에서는 깔끔하게 정리된 엑셀 데이터를 예제로 다룹니다. 하지만 실제 현업이나 실전 프로젝트에서 다루는 데이터는 그렇지 않죠. 이번에 다룬 F1 센서 데이터 역시 통신 문제로 데이터가 끊기거나 비어있는 결측치가 많습니다. 이런 현실적인 노이즈 데이터를 파이썬으로 어떻게 부드럽게 이어주고(보간법) 분석할 수 있는지 실전 팁을 담았습니다.
한번 실행해 보세요! 핵심 코드
F1 공식 데이터를 불러와 드라이버의 속도 그래프를 그리는 기본 뼈대 코드입니다.
Python
import fastf1
from matplotlib import pyplot as plt
# 2023년 몬자 예선전 데이터 불러오기
session = fastf1.get_session(2023, 'Monza', 'Q')
session.load()
# 가장 빠른 랩타임 데이터 찾기
fast_lap = session.laps.pick_fastest()
tel = fast_lap.get_telemetry()
# 그래프 그리기
plt.plot(tel['Distance'], tel['Speed'])
plt.xlabel("Distance (m)")
plt.ylabel("Speed (km/h)")
plt.show()
환경 세팅 꿀팁
프로젝트를 시작하실 때 옛날 방식인 requirements.txt 대신 요즘 파이썬의 표준인 pyproject.toml을 사용해 보세요. 라이브러리 충돌 없이 훨씬 세련되게 프로젝트를 관리하실 수 있습니다.
Ini, TOML
[project]
name = "f1-project"
dependencies = ["fastf1", "matplotlib"]
위 코드를 발전시켜 두 드라이버의 코너링 차이를 정밀하게 비교 분석하는 전체 과정은 아래 영상에 아주 차분하고 자세하게 담아두었습니다. 스포츠 데이터 분석에 흥미를 느끼시는 분들께 좋은 영감이 되길 바랍니다!
댓글을 작성해보세요.