Streamlit은 데이터 과학 및 머신러닝 애플리케이션을 쉽게 만들고 배포할 수 있는 Python 라이브러리입니다.
웹 개발 지식 없이도 Python 코드 몇 줄만으로 대화형 데이터 대시보드 및 웹 앱을 만들 수 있도록 도와줍니다.
Streamlit의 주요 특징
- 간단한 코드로 웹 애플리케이션 개발 가능
- HTML, CSS, JavaScript 같은 웹 기술을 몰라도, Python만 사용해서 웹 앱을 만들 수 있습니다.
- 예를 들어, Pandas DataFrame을 쉽게 웹에서 표시할 수 있습니다.
- 빠른 대시보드 제작
- Streamlit은 데이터 분석 결과를 빠르게 시각화할 수 있도록 지원합니다.
- Matplotlib, Plotly, Altair 같은 라이브러리와 쉽게 연동됩니다.
- 대화형 UI 제공
- st.button(), st.slider(), st.selectbox() 같은 간단한 함수로 사용자 입력을 받을 수 있습니다.
- 자동 리로드 기능
- 코드를 변경하면 웹 앱이 자동으로 업데이트됩니다.
- 배포가 쉬움
- Streamlit Cloud(무료)나 Docker, Heroku, AWS 등의 플랫폼을 이용해 쉽게 배포할 수 있습니다.
Streamlit 예제 코드
아래는 간단한 Streamlit 앱을 만드는 예제입니다.
python
복사편집
import streamlit as st
import pandas as pd
# 제목 추가
st.title("Streamlit 간단한 웹 앱")
# 버튼 추가
if st.button("데이터 보기"):
df = pd.DataFrame({
"이름": ["철수", "영희", "민수"],
"나이": [25, 30, 22]
})
st.write(df)
실행 방법
- Python 가상환경(Anaconda)에서 실행:
- sh 복사편집 streamlit run app.py
- 웹 브라우저에서 http://localhost:8501에 접속하면 웹 애플리케이션이 실행됩니다.
Streamlit을 어디에 사용할까?
✔ 데이터 시각화 대시보드 → Pandas, Matplotlib, Plotly를 활용한 분석 결과 공유
✔ 머신러닝 모델 데모 → 사용자가 입력한 데이터로 모델 예측 결과 확인
✔ 인터랙티브 데이터 분석 → 슬라이더, 체크박스를 이용한 데이터 필터링
✔ 빠른 프로토타이핑 → Flask나 Django보다 빠르게 MVP(최소기능제품) 개발 가능
결론
Streamlit은 데이터 분석, 머신러닝, AI 모델을 쉽게 웹 애플리케이션으로 만들 수 있는 라이브러리입니다.
웹 개발 경험 없이도 Python 코드만으로 인터랙티브한 웹 앱을 빠르게 만들 수 있습니다.
주로 데이터 대시보드, 모델 시각화, 분석 보고서 공유 등에 활용됩니다.
Streamlit을 활용하면 데이터를 효과적으로 시각화하고, 사용자와 상호작용할 수 있는 멋진 웹 애플리케이션을 만들 수 있습니다!
'데이터 분석가:Applied Data Analytics' 카테고리의 다른 글
주석표시(SQL, 파이썬, 구글코렙) (0) | 2025.03.18 |
---|---|
Streamlit 설치 순서 및 주의점 (0) | 2025.03.16 |
Instacart Market Basket Analysis (0) | 2025.03.13 |
kaggle Instacart Market Basket Analysis 프로젝트 (0) | 2025.03.10 |
violinplot (0) | 2025.03.10 |