An open API service indexing awesome lists of open source software.

https://github.com/hamdaniqhmqd/studi-kasus-sentimen-analisis-review-apk-play-store


https://github.com/hamdaniqhmqd/studi-kasus-sentimen-analisis-review-apk-play-store

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        

## ๐Ÿ“Š Sentiment Analysis using Machine Learning

Proyek ini merupakan studi kasus analisis sentimen dari ulasan aplikasi Android (Google Play Store) menggunakan pendekatan _Machine Learning_. Data dikumpulkan menggunakan `google-play-scraper`, diproses dengan Natural Language Processing (NLP) tools, lalu diklasifikasikan menggunakan beberapa algoritma seperti:

- Naive Bayes
- Logistic Regression
- Random Forest
- Decision Tree

Tujuannya adalah untuk mengklasifikasikan sentimen pengguna terhadap aplikasi apakah **positif**, **negatif**, atau **netral** berdasarkan teks ulasan mereka.

---

## ๐Ÿš€ Fitur

- Web scraping ulasan dari Google Play Store
- Pembersihan data teks (cleaning, tokenizing, stemming, stopword removal)
- Visualisasi WordCloud
- Implementasi dan evaluasi model klasifikasi
- Model evaluasi menggunakan Confusion Matrix dan akurasi

---

## ๐Ÿงฐ Instalasi

### 1. Clone repositori (jika tersedia di GitHub)

```bash
git clone https://github.com/hamdaniqhmqd/Studi-Kasus-Sentimen-Analisis-Review-APK-Play-Store.git
cd Studi-Kasus-Sentimen-Analisis-Review-APK-Play-Store
```

### 2. Buat dan aktifkan Virtual Environment

#### ๐Ÿ’ป Windows:

```bash
python -m venv env
env\Scripts\activate
```

#### ๐ŸŽ Linux/macOS:

```bash
python3 -m venv env
source env/bin/activate
```

### 3. Install semua dependensi dari `requirements.txt`

```bash
pip install -r requirements.txt
```

> Jika `nltk` digunakan, pastikan download resource-nya:

```python
import nltk
nltk.download('punkt_tab')
nltk.download('stopwords')
```

---

## ๐Ÿงช Jalankan Notebook

Buka Jupyter Notebook atau VS Code, lalu jalankan file:

```bash
Sentiment_Analysis_using_Machine_Learning.ipynb
```

---

## ๐Ÿ“ Catatan

- Proses scraping bisa memakan waktu tergantung jumlah review dan koneksi internet.
- Disarankan menggunakan `reviews()` (bukan `reviews_all()`) untuk membatasi jumlah data agar tidak terlalu besar.
- Pastikan koneksi internet aktif saat proses scraping.