Dalam dunia ilmu data baik data science maupun data analytic, pemilihan pustaka (library) yang tepat sangat penting untuk memaksimalkan efisiensi dan efektivitas analisis data. Python telah menjadi bahasa pemrograman favorit banyak ilmuan data (data scientist) karena kemampuannya yang luas dan ekosistem pustaka yang kaya.
Agar lebih mudah, penulis telah merangkum daftar pustaka Python yang harus dipasang oleh seorang ilmuan data. Yuk langsung saja!
Pustaka dibawah ini tidak hanya untuk kebutuhan ilmuan data, tetapi juga terdapat IDE, pustaka API dan Web Framework.
1 Data Manipulation and Wrangling
- NumPy: Pustaka fundamental untuk komputasi numerik di Python. Menyediakan struktur data array multidimensi yang efisien dan berbagai fungsi matematika.
- Pandas: Pustaka yang sangat populer untuk manipulasi dan analisis data.i Menyediakan struktur data seperti DataFrame yang memudahkan pengolahan data.
Terminal
uv pip install numpy pandas
Terminal
pixi add numpy pandas
Terminal
conda create -n my-env
conda activate my-env
conda install numpy pandas
Terminal
pip install numpy pandas
2 Data Exploration and Visualization
- Bokeh: Pustaka untuk visualisasi data interaktif yang dapat diintegrasikan dengan aplikasi web.
- Matplotlib: Pustaka klasik untuk visualisasi data 2D yang menawarkan kontrol tinggi atas plot.
- Plotly: Pustaka untuk visualisasi data interaktif yang dapat digunakan untuk membuat grafik dinamis.
- Seaborn: Pustaka berdasarkan Matplotlib yang menawarkan antarmuka tingkat tinggi untuk membuat visualisasi statistik yang menarik.
Terminal
uv pip install bokeh matplotlib plotly seaborn
Terminal
pixi add bokeh matplotlib plotly seaborn
Terminal
conda create -n my-env
conda activate my-env
conda install bokeh matplotlib plotly seaborn
Terminal
pip install bokeh matplotlib plotly seaborn
3 Machine Learning and Modeling
- CatBoost: Pustaka untuk gradient boosting yang efisien dan mudah digunakan.
- LightGBM: Pustaka gradient boosting yang cepat dan memiliki kinerja tinggi.
- Optuna: Framework optimisasi hyperparameter yang efisien.
- Scikit-Learn: Pustaka pembelajaran mesin yang paling populer, menyediakan algoritma dan alat untuk klasifikasi, regresi, dan klastering.
- StatsModels: Pustaka untuk model statistik dan uji hipotesis.
- XGBoost: Pustaka gradient boosting yang kuat dan fleksibel.
Terminal
uv pip install catboost \
\
lightgbm \
optuna \
scikit-learn \
statsmodels xgboost
Terminal
pixi add catboost \
\
lightgbm \
optuna \
scikit-learn \
statsmodels xgboost
Terminal
conda create -n my-env
conda activate my-env
conda install catboost \
\
lightgbm \
optuna \
scikit-learn \
statsmodels xgboost
Terminal
pip install catboost \
\
lightgbm \
optuna \
scikit-learn \
statsmodels xgboost
4 Deep Learning
- FastAI: Pustaka yang memudahkan penggunaan deep learning dengan antarmuka yang sederhana.
- PyTorch: Pustaka deep learning yang fleksibel dan dinamis, cocok untuk penelitian dan produksi.
- Torch: Pustaka dasar untuk PyTorch yang menyediakan tensor dan operasi matematika.
Terminal
uv pip install fastai \
\
pytorch \ torch
Terminal
pixi add fastai \
\
pytorch \ torch
Terminal
conda create -n my-env
conda activate my-env
conda install fastai \
\
pytorch \ torch
Terminal
pip install fastai \
\
pytorch \ torch
5 Natural Language Processing (NLP)
- NLTK: Pustaka NLP yang komprehensif, menyediakan alat untuk tokenisasi, tagging, parsing, dan lainnya.
- Spacy: Pustaka NLP yang cepat dan efisien, cocok untuk pengolahan teks skala besar.
Terminal
uv pip install nltk spacy
Terminal
pixi add nltk spacy
Terminal
conda create -n my-env
conda activate my-env
conda install nltk spacy
Terminal
pip install nltk spacy
6 Time Series Analysis
- Prophet: Pustaka untuk peramalan time series yang dikembangkan oleh Facebook.
- StatsModels: Juga digunakan untuk analisis time series dan model statistik.
Terminal
uv pip install prophet statsmodels
Terminal
pixi add prophet statsmodels
Terminal
conda create -n my-env
conda activate my-env
conda install prophet statsmodels
Terminal
pip install prophet statsmodels
7 Computer Vision
- OpenCV-Python: Pustaka untuk pengolahan citra dan visi komputer.
- TorchVision: Pustaka yang menyediakan dataset dan model untuk visi komputer, kompatibel dengan PyTorch.
Terminal
uv pip install opencv-python torchvision
Terminal
pixi add opencv-python torchvision
Terminal
conda create -n my-env
conda activate my-env
conda install opencv-python torchvision
Terminal
pip install opencv-python torchvision
8 Big Data and Distributed Computing
- Dask: Pustaka untuk komputasi paralel yang memungkinkan pengolahan data skala besar.
Terminal
uv pip install dask
Terminal
pixi add dask
Terminal
conda create -n my-env
conda activate my-env
conda install dask
Terminal
pip install dask
9 Web Scraping and Automation
- BeautifulSoup4: Pustaka untuk parsing HTML dan XML.
- Scrapy: Framework untuk web scraping yang kuat dan fleksibel.
- Selenium: Alat untuk otomasi browser web.
Terminal
uv pip install beautifulsoup4 \
\
scrapy \ selenium
Terminal
pixi add beautifulsoup4 \
\
scrapy \ selenium
Terminal
conda create -n my-env
conda activate my-env
conda install beautifulsoup4 \
\
scrapy \ selenium
Terminal
pip install beautifulsoup4 \
\
scrapy \ selenium
10 API and Web Development
- Dash: Framework untuk membuat aplikasi web analitik.
- Django: Framework web yang kuat dan skalabel.
- Falcon: Framework web yang ringan dan cepat.
- FastAPI: Framework web modern yang cepat dan efisien.
- Flask: Framework web yang sederhana dan mudah digunakan.
Terminal
uv pip install dash \
\
django \
falcon \
fastapi flask
Terminal
pixi add dash \
\
django \
falcon \
fastapi flask
Terminal
conda create -n my-env
conda activate my-env
conda install dash \
\
django \
falcon \
fastapi flask
Terminal
pip install dash \
\
django \
falcon \
fastapi flask
11 Development Tools
- Black: Alat untuk formatting kode Python secara otomatis.
- IPython: Shell interaktif yang meningkatkan produktivitas pengembangan.
- Jupyter: Platform untuk komputasi interaktif dan pembuatan notebook.
- JupyterLab: Lingkungan pengembangan interaktif untuk notebook Jupyter.
- Jupytext: Alat untuk mengelola notebook Jupyter dalam format teks.
- Jsonnet: Bahasa konfigurasi untuk JSON.
- Python-LSP-Server: Server Language Server Protocol untuk Python.
- Sphinx: Alat untuk mendokumentasikan proyek Python.
- Spyder: IDE untuk data science yang menyediakan alat analisis dan visualisasi.
Terminal
uv pip install black \
\
ipython \
jupyter \
jupyterlab \
jupytext \
jsonnet \
python-lsp-server \
sphinx spyder
Terminal
pixi add black \
\
ipython \
jupyter \
jupyterlab \
jupytext \
jsonnet \
python-lsp-server \
sphinx spyder
Terminal
conda create -n my-env
conda activate my-env
conda install black \
\
ipython \
jupyter \
jupyterlab \
jupytext \
jsonnet \
python-lsp-server \
sphinx spyder
Terminal
pip install black \
\
ipython \
jupyter \
jupyterlab \
jupytext \
jsonnet \
python-lsp-server \
sphinx spyder
12 Dependency and Environment Management
- UV: Alat untuk manajemen versi Python.
- Virtualenv: Alat untuk membuat lingkungan Python yang terisolasi.
Terminal
uv pip install uv virtualenv
Terminal
pixi add uv virtualenv
Terminal
conda create -n my-env
conda activate my-env
conda install uv virtualenv
Terminal
pip install uv virtualenv
13 Data Pipelines and Workflow Automation
- Kaggle: API untuk mengakses dataset dan kompetisi Kaggle.
- Mutagen: Pustaka untuk manipulasi metadata audio.
- Orange3: Alat visual untuk data mining.
- Pydot: Interface Python untuk Graphviz.
Terminal
uv pip install kaggle \
\
mutagen \
orange3 pydot
Terminal
pixi add kaggle \
\
mutagen \
orange3 pydot
Terminal
conda create -n my-env
conda activate my-env
conda install kaggle \
\
mutagen \
orange3 pydot
Terminal
pip install kaggle \
\
mutagen \
orange3 pydot
14 Penutup
Harapannya dengan memasang dan menguasai berbagai pustaka ini, seorang ilmuan data dapat meningkatkan kemampuan dalam mengolah, menganalisis dan memodelkan data. Python dengan ekosistem pustaka yang kaya, menjadi alat yang sangat berharga dalam dunia ilmu data.
Jika menggunakan NixOS, penulis sudah membuat deklarasinya di dotfiles swayhome pustaka Python.
Baik, itu saja pustaka Python untuk seorang ilmuan data. Jika Anda mempunyai pertanyaan, saran dan kritikan silahkan kirim ke surel atau telegram atau instagram.
Semoga tulisan ini bermanfaat untuk pembaca semuanya.
Reuse
Citation
@online{qurrotul_ainur2025,
author = {Qurrotul Ainur, Hervy},
title = {Data {Science:} {Pustaka} {Dasar} {Python} Yang {Harus}
{Diketahui}},
date = {2025-03-15},
url = {https://hervyqa.dev/blog/data-science-pustaka-dasar-python-yang-harus-diketahui/},
langid = {en}
}