Streamlit/이론

155. [Streamlit] [Anaconda] : Streamlit 설치시 필수 및 추천 라이브러리

천재단미 2025. 2. 19. 22:36
728x90
반응형

 

 

 

📌 1. Streamlit이란?

 

 

StreamlitPython 기반의 데이터 애플리케이션을 빠르게 개발할 수 있는 오픈소스 웹 프레임워크입니다.

특히, 데이터 분석, 머신러닝, 대시보드 개발에 최적화되어 있어 간단한 코드만으로 강력한 웹 애플리케이션을 만들 수 있습니다.

주요 특징

손쉬운 설치 → pip install streamlit 만으로 설치 가능

빠른 프로토타이핑 → 데이터 분석 결과를 바로 웹에서 시각화

강력한 시각화 기능 → Matplotlib, Plotly, Altair 등 다양한 라이브러리 지원

데이터 사이언티스트와 엔지니어 친화적 → 웹 개발 지식 없이도 간편한 대시보드 제작 가능

 


 

🔥 2. Streamlit 기본 설치 방법

(1) Anaconda 환경에서 설치 (추천)

Anaconda 환경에서는 가상환경을 생성한 후 Streamlit을 설치하는 것이 좋습니다.

Anaconda에서 Python 3.10 환경 생성

conda create --name streamlit_env python=3.10

 

📌 환경 생성 후 활성화

conda activate streamlit_env

 

Streamlit 설치

pip install streamlit

 

 

설치 확인 및 실행 테스트

streamlit --version
streamlit hello

 

 

✅ 실행하면 Streamlit 샘플 앱이 웹 브라우저에서 열립니다.

 

 

 


 

 

🔥 3. 필수 라이브러리 설치

 

Streamlit을 사용할 때, 자주 사용하는 필수 라이브러리를 함께 설치하면 더욱 강력한 애플리케이션을 만들 수 있습니다.

 

(1) 데이터 분석 라이브러리

pip install pandas numpy

 

📌 설명

✔ pandas → 데이터프레임 처리

✔ numpy → 수치 연산 (배열, 벡터 연산 등)

 


 

(2) 데이터 시각화 라이브러리

pip install matplotlib plotly seaborn altair folium

 

📌 설명

✔ matplotlib → 기본 그래프 시각화

✔ plotly → 대화형 차트 (마우스 오버 효과 지원)

✔ seaborn → 통계 기반 데이터 시각화

✔ altair → Streamlit과 가장 잘 맞는 차트 라이브러리

✔ folium → 지도 시각화 (위도/경도 활용)

 


 

 

(3) 머신러닝 & 딥러닝 라이브러리

pip install scikit-learn xgboost lightgbm catboost tensorflow torch torchvision torchaudio transformers

 

 

📌 설명

✔ scikit-learn → 머신러닝 알고리즘

✔ xgboost, lightgbm, catboost → 부스팅 알고리즘 (분류 & 회귀 모델)

✔ tensorflow → 딥러닝 프레임워크

✔ torch, torchvision, torchaudio → PyTorch 프레임워크

✔ transformers → NLP (자연어 처리) 모델 활용 가능

 


 

(4) Streamlit UI & 확장 플러그인

pip install streamlit-folium streamlit-option-menu streamlit-extras streamlit-antd-components

 

📌 설명

✔ streamlit-folium → 지도 시각화

✔ streamlit-option-menu → 사이드바 UI 개선

✔ streamlit-extras → 추가 기능 (파일 업로드, 토글 버튼 등)

✔ streamlit-antd-components → 고급 UI 디자인 컴포넌트

 


 

(5) 데이터베이스 연결 (MySQL, PostgreSQL 등)

pip install pymysql psycopg2 sqlalchemy

 

📌 설명

✔ pymysql → MySQL 연결

✔ psycopg2 → PostgreSQL 연결

✔ sqlalchemy → ORM 사용 가능

📌 SQLite는 Python 기본 내장 모듈이므로, 추가 설치할 필요 없음!

 

SQLite 버전 확인:

python -c "import sqlite3; print(sqlite3.sqlite_version)"

 

 

SQLite 정상 작동 테스트:

python -c "import sqlite3; conn = sqlite3.connect(':memory:'); print('SQLite is working!'); conn.close()"

 

 


(6) API 요청 & 웹 스크래핑

pip install requests beautifulsoup4 selenium fastapi

 

📌 설명

✔ requests → API 호출 (GET/POST 요청)

✔ beautifulsoup4 → 웹 스크래핑 (HTML 파싱)

✔ selenium → 브라우저 자동화 (웹 크롤링)

✔ fastapi → Python 기반 초고속 API 서버 구축

 

 


(7) 이미지 & 파일 처리

pip install pillow opencv-python pdfplumber PyMuPDF

 

📌 설명

✔ pillow → 이미지 처리

✔ opencv-python → 영상 및 이미지 처리

✔ pdfplumber, PyMuPDF → PDF 파일 처리

 


(8) Streamlit 앱 최적화 (캐싱 & 성능 향상)

pip install streamlit-caching fastparquet pyarrow

 

📌 설명

✔ streamlit-caching → 데이터 캐싱 (앱 실행 속도 향상)

✔ fastparquet, pyarrow → 빠른 데이터 저장 & 로드

 


🚀 4. 전체 패키지 한 번에 설치

위에서 설명한 필수 + 추천 라이브러리를 한 번에 설치하려면 다음 명령어를 실행하세요.

pip install streamlit pandas numpy matplotlib plotly seaborn altair folium scikit-learn xgboost lightgbm catboost tensorflow torch torchvision torchaudio transformers streamlit-folium streamlit-option-menu streamlit-extras streamlit-antd-components pymysql psycopg2 sqlalchemy requests beautifulsoup4 selenium fastapi pillow opencv-python pdfplumber PyMuPDF streamlit-caching fastparquet pyarrow

 

 

 


 

5. 설치 후 실행 테스트

설치가 정상적으로 되었는지 확인하려면 아래 명령어를 실행하세요.

streamlit run app.py

 

또는 기본 예제 실행

streamlit hello

 

브라우저에서 Streamlit 기본 예제가 실행되면 정상적으로 설치된 것입니다! 🎉

 


🎯 6. 설치 오류 해결 방법

① zsh: command not found: brew (Homebrew 미설치)

/bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh>)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
source ~/.zshrc

 

 


 

② zsh: command not found: pyenv (pyenv 미설치)

brew install pyenv
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init --path)"' >> ~/.zshrc
source ~/.zshrc

 

 


③ CondaEnvironmentError: Cannot remove current environment (Conda 가상환경 삭제 오류)

conda deactivate
conda remove --name streamlit_env --all

 

 


🎯 7. 마무리

이번 블로그에서는 Streamlit 설치와 필수 라이브러리, 그리고 데이터 분석, 머신러닝, API, 웹 스크래핑 등에 필요한 패키지를 정리했습니다.

 

 

728x90
반응형
home top bottom
}