Abstrak —Salah satu terobosan dari pemerintah Republik Indonesia  dalam menangani pandemi COVID-19  adalah membuat  aplikasi PeduliLindungi.  Setiap pengguna baru aplikasi PeduliLindungi ingin mengetahui bagaimana respon pengguna sebelumnya sebagai bentuk evaluasi setelah menggunakan aplikasi PeduliLindungi melalui Google Play Store berupa ulasan. Oleh karena itu, perlu dilakukan penelitian analisis sentimen untuk mengetahui sentimen masyarakat terhadap aplikasi tersebut. Penelitian ini dilakukan dengan metode Naïve Bayes Classifier dengan model Multinomial. Hasil dari penelitian ini didapatkan bahwa pengguna mayoritas memberikan opini bersentimen negatif sebesar 65%, sedangkan opini sentimen positif hanya sebesar 19,08%, dan sentimen netral sebesar 15,92%.  selanjutnya ulasan masyarakat yang bersentimen positif antara lain mengandung kata “bantu”, “terima”, “mohon”, “peduli”,“bagus” dan lain-lain.  Sedangkan opini  masyarakat yang bersentimen negatif antara lain mengandung kata “daftar”, “susah”, “buka”, “lahir”, “gagal”, dan lain-lain. Perhitungan ketepatan klasifikasi menggunakan G-Mean dan AUC karena termasuk ke dalam kategori data imbalanced . Nilai G-Mean sebesar 0,6239 menunjukkan bahwa bahwa sentimen positif dan negatif dari data ulasan pengguna aplikasi PeduliLindungi dapat diklasifikasikan secara tepat sebesar 62,39% dan nilai AUC sebesar 0,6323 yang berarti bahwa data ulasan pengguna PeduliLingungi termasuk dalam klasifikasi lemah yaitu sebesar 63,23%.
Kata Kunci —Analisis Sentimen, Google Play Store, Multinomial, Naïve Bayes Classifier , PeduliLindungi.

## I. PENDAHULUAN
ANDEMI COVID-19 telah membawa banyak tantangan baru bagi kesehatan masyarakat di berbagai negara, dengan penyebarannya yang cepat membuat banyak pemerintah di seluruh dunia tidak siap menghadapi pandemi ini termasuk Indonesia. Tercatat bahwa pada bulan Maret tahun 2020, terdapat kasus pertama yang terkonfirmasi positif COVID-19 di Indonesia. Pada bulan April dikonfirmasi telah mencapai 1790 kasus, 113 kasus baru, dengan 170 jumlah kematian dan 112 jumlah pemulihan di Indonesia [1].
PeduliLindungi merupakan aplikasi atau situs yang dikembangkan dan digunakan dalam pelaksanaan surveilans kesehatan oleh Pemerintah Republik Indonesia dalam menangani penyebaran COVID-19, antara lain penelusuran (tracing) , pelacakan (tracking) dan pembatasan (fencing) di wilayah Republik Indonesia. Penggunaan aplikasi PeduliLindungi memunculkan berbagai opini atau ulasan masyarakat melalui berbagai media social yang dapat diperoleh melalui Google Play Store ,  sehingga perlu dilakukan analisis sentimen. Analisis sentimen merupakan proses untuk menentukan sentimen dan pengelompokkan polaritas teks dalam kalimat, dokumen, dan pendapat
sehingga dapat ditentukan kategorinya sebagai sentimen positif, negatif maupun netral [2].
Dalam penelitian ini terdapat metode yang digunakan untuk melakukan analisis sentimen data teks yaitu metode Naïve Bayes Classifier (NBC). Beberapa penelitian implementasi algoritama Naïve Bayes Classifier telah banyak dilakukan antara lain Ratnawati (2018) yang membahas opini atau komentar film berbahasa Indonesia melalui Twitter [3]. Daulay dan Asror (2020) yang membahas tentang  ulasan pada 10 aplikasi yang ada pada Google Play Store dengan dataset sebanyak 1500 data  [4].  Zefanya dkk (2020) membahas mengenai analisis sentimen berdasarkan ulasan komentar terhadap aplikasi PeduliLindungi menggunakan metode Naïve Bayes .  Wardani dkk  (2020) membahas mengenai Pemindahan Ibu Kota Negara. Hasil klasifikasi menggunakan Bernoulli Naïve Bayes [5]. Naïve Bayes Classifier (NBC) merupakan klasifikasi yang efektif dan efisien, algoritma NBC bertujuan untuk menentukan kelas mana yang paling optimal, mengklasifikasikan serta menghitung peluang dari suatu kelas yang mempunyai masing masing  kelompok tertentu. [6]. Penelitian ini dapat digunakan intansi pemerintah Republik Indonesia, Kementrian Komunikasi dan Informatika (KOMINFO) sebagai bahan evaluasi aplikasi PeduliLindungi.

## II. TINJAUAN PUSTAKA

## A. Analisis Sentimen
Analisis sentimen merupakan  proses untuk menentukan sentimen dan mengelompokkan polaritas teks suatu kalimat, dokumen, atau pendapat sehingga dapat ditentukan kategorinya sebagai sentimen positif, negatif maupun netral. [2].

## B. Text Mining
Text mining merupakan proses untuk mengetraksi pengetahuan implisit yang tersembunyi pada sebuah data tekstual serta proses penggalian data berbasis teks [7]. Text
Analisis Sentimen Data Ulasan Pengguna Aplikasi “PeduliLindungi” pada Google Play Store Menggunakan Metode Naïve Bayes Classifier Model Multinomial
Zahtira Annisa, dan Brodjol Sutijo Suprih Ulama Departemen Statistika Bisnis, Institut Teknologi Sepuluh Nopember (ITS) e-mail : brodjol_su@statistika.its.ac.id
P
Gambar 1. Kurva ROC.
mining melibatkan pra-proses dokumen seperti mengkategorikan teks, mengekstraksi informasi, dan mengekstraksi kata kunci atau mengekstraksi pendapat dari sumber data melalui identifikasi dan eksplorasi pola yang menarik [8].

## C. Text Pre-Processing
Text pre-processing  adalah langkah awal dalam pengolahan data teks yang digunakan untuk mempersiapkan data mentah sebelum dilakukan proses lain. Pada text pre- processing, data yang tidak terstruktur diubah menjadi data terstruktur agar dapat diolah [9]. Langkah-langkah dari text pre-processing adalah sebagai berikut:
1. Cleansing data mempunyai tujuan untuk membersihkan data dari atribut yang tidak penting dalam proses klasifikasi dan menghilangkan data yang duplikat.
2. Case folding bertujuan untuk mengubah semua huruf kapital (uppercase) dikembalikan menjadi huruf kecil (lower case) agar sama atau seragam.
3. Slangword bertujuan  mengganti kata yang masih dibutuhkan dalam analisis akan tetapi penulisan kata yang masih kurang tepat.
4. Stemming merupakan langkah dimana semua kata akan kembali menjadi kata dasar.
5. Stopwords bertujuan untuk menghilangkan kata yang tidak dibutuhkan lagi. Seperti kata hubung akan, pada, di, yang, dan lain lain.
6. Tokenizing atau  tokenisasi adalah proses memenggal kalimat menjadi beberapa bagian atau kata berdasarkan
tanda baca.
D. Raw Term Frequency Raw Term Frequency merupakan algoritma yang digunakan untuk menentukan nilai dokumen berdasarkan frekuensi kemunculan kata (term) dalam suatu ulasan [10]. Contoh dari term frequency ditujukkan pada Tabel 1.

## E. Word Cloud
Word cloud merupakan salah satu teknik untuk menvisualisasikan dokumen teks yang sering digunakan sebagai representasi grafis dari suatu dokumen yang dilakukan dengan memplotting kata –  kata yang sering muncul dari suatu dokumen pada ruang dua dimensi. Ukuran kata akan menunjukkan frekuensi dari kata yang sering muncul  [11]. Contoh dari  word cloud ditujukkan pada Gambar 1.

## F. Naïve Bayes Classifier
Naïve Bayes Classifier merupakan klasifikasi yang efektif dan efisien, algoritma NBC bertujuan untuk menentukan kelas suatu teks yang paling optimal, mengklasifikasikan serta menghitung peluang dari suatu kelas [6]. Bentuk umum dari Naïve Bayes Classifier adalah:
𝑃𝑃 ( 𝑐𝑐 | 𝑑𝑑 ) = 𝑃𝑃 ( 𝑐𝑐 ) 𝑃𝑃 ( 𝑑𝑑 | 𝑐𝑐 ) 𝑃𝑃 ( 𝑑𝑑 ) (1)
Keterangan  :
𝑃𝑃 ( 𝑐𝑐 | 𝑑𝑑 ) :   Nilai probabilitas c yang dipengaruhi d (posterior probability) 𝑃𝑃 ( 𝑑𝑑 | 𝑐𝑐 ) :  Nilai probabilitas d yang  dipengaruhi c (likelihood)
Gambar 2. Word cloud ulasan pengguna aplikasi PeduliLindungi.
Gambar  3. Word cloud ulasan pengguna aplikasi PeduliLindungi berdasarkan sentimen positif.
Gambar  4. Word cloud ulasan pengguna aplikasi PeduliLindungi berdasarkan sentimen negatif.
Tabel 1. Contoh term frequency Opini Term Frequency Cepat Beda Bagus Lambat 1 3 0 1 1 2 0 2 1 0
⋮ ⋮ ⋮ ⋮
⋮ n 1 0 1 1 Tabel 2.
Confusion matrix Kelas Aktual Kelas Prediksi Positif Negatif Positif True Positif False Negatif Negatif False Positif True Negatif * True Positif : jumlah ulasan yang bersetimen positif yang tepat diprediksi dalam kelas positif.
* True Negatif : jumlah ulasan negatif yang tepat diprediksi dalam kelas negatif.
* False Positif : jumlah ulasan negatif yang terprediksi dalam kelas positif.
* False Negatif : jumlah ulasan positif yang terprediksi dalam kelas negatif.
Tabel 3. Interpretasi AUC Nilai AUC Interpretasi 0,90 – 1,00 Klasifikasi sangat baik 0,80 – 0,90 Klasifikasi baik 0,70 – 0,80 Klasifikasi cukup 0,60 – 0,70 Klasifikasi lemah 0,50 – 0,60 Kegagalan
𝑃𝑃 ( 𝑐𝑐 ) :  Nilai  probabilitas prior dari hipotesis pada sebuah sampel ( prior probability)
𝑃𝑃 ( 𝑑𝑑 ) :  Peluang kemunculan karakteristik sampel keseluruhan ( evidence ) dari data training (predictor prior) Klasifikasi Naïve Bayes Classifier terbagi menjadi dua model yaitu Bernoulli dan Multinomial. Pada  model ini adalah jika model Multinomial memperhatikan kata muncul serta jumlah kemunculan kata, sedangkan model Bernoulli hanya memperhatikan kemunculan kata tanpa memperhatikan jumlah kemunculannya. Model yang dipilih dalam penelitian ini adalah Multinomial karena probabilitas dokumen d terletak di kategori c memliki persamaan sebagai berikut:
𝑃𝑃 ( 𝑐𝑐 | 𝑑𝑑 ) ∝ 𝑃𝑃 ( 𝑐𝑐 ) ∏ 𝑃𝑃 ( 𝑡𝑡 𝑘𝑘 | 𝑐𝑐 ) 1≤𝑘𝑘≤𝑛𝑛 𝑑𝑑 (2)
Keterangan  :
𝑃𝑃 ( 𝑡𝑡 𝑘𝑘 | 𝑐𝑐 ) :   P robabilitas frekuensi kemunculan suatu term t k dalam dokumen pada kelas c ( conditional probability) 𝑡𝑡 𝑘𝑘 : Term dalam dokumen d 𝑃𝑃 ( 𝑐𝑐 ) :  Nilai  probabilitas prior dari hipotesis pada sebuah sampel ( prior probability) Klasifikasi Naïve Bayes Classifier model Multinomial memiliki kategori terbaik dengan nilai maksimal atau maximum a posteriori (MAP) class C map .
𝐶𝐶 𝑚𝑚𝑚𝑚𝑚𝑚 = 𝑎𝑎𝑎𝑎𝑎𝑎 𝑚𝑚𝑎𝑎𝑚𝑚𝑃𝑃 ( 𝑐𝑐 | 𝑑𝑑 ) = 𝑃𝑃 ( 𝑐𝑐 ) ∏ 𝑃𝑃 ( 𝑡𝑡 𝑘𝑘 | 𝑐𝑐 ) 1≤𝑘𝑘≤𝑛𝑛 𝑑𝑑 (3)
Persamaan dari probabilitas prior 𝑃𝑃 ( 𝑐𝑐 ) model Multinomial sama dengan model Bernoulli adalah sebagai berikut.
𝑃𝑃 ( 𝑐𝑐 ) = 𝑁𝑁 𝑐𝑐 𝑁𝑁 (4)
Keterangan  :
𝑁𝑁 𝑐𝑐 :   Jumlah dokumen dari kategori c 𝑁𝑁 :  Jumlah dokumen dari kategori keselluruhan Sedangkan 𝑃𝑃 ( 𝑡𝑡 𝑘𝑘 | 𝑐𝑐 ) digunakan untuk menghitung probabilitas kemunculan term dalam setiap kelas kategori dengan menggunakan frekuensi kemunculan suatu kata dalam suatu kelas kategori pada persamaan sebagai berikut.
𝑃𝑃 ( 𝑡𝑡 𝑘𝑘 | 𝑐𝑐 ) = 𝑁𝑁 𝑘𝑘 +1 | 𝑉𝑉 | +𝑁𝑁 ′ (5)
Keterangan  : | 𝑉𝑉 | :   Jumlah  seluruh term yang muncul dalam satu dokumen pada data training 𝑁𝑁 𝑘𝑘 :  Jumlah kemunculan t k dalam dokumen training pada suatu kategori c 𝑁𝑁 ′ :   Jumlah  total term yang terdapat pada c dokumen training
G. Holdout Validation Holdout validation merupakan metode yang digunakan untuk membagi sejumlah data menjadi data training dan data testing yang dilakukan secara acak. Prosedur repeated holdout merupakan proses perulangan yang dilakukan beberapa kali terhadap semua proses training dan testing yang kemudian diambil nilai rata-ratanya [12].

## H. Ketepatan Klasifikasi
Ketepatan  klasifikasi merupakan salah satu cara untuk melihat performa klasifikasi yang sudah dilakukan. Banyaknya setiap kelas prediksi dan kelas aktual merupakan hal yang harus diketahui dalam mengukur ketepatan
Gambar  5. Pie chart sentimen data ulasan pengguna aplikasi PeduliLindungi.
Gambar 6. Kurva ROC data training .
Gambar 7. Kurva ROC data testing . 23.3% 76.7% Positif Negatif Tabel 4.
Variabel penelitian Variabel Keterangan Y Kategori sentimen/ulasan (positif atau negatif) dari pengguna aplikasi Xi Frekuensi kemunculan kata ke – i pada ulasan pengguna Tabel 5. Struktur data Ulasan X 1 X 2  X n Y 1 X 1;1 X 2;1  X n;1
Positif/Negatif 2 X 1;2 X 2;2  X n;2 Positif/Negatif       101.942 X 1;n X 2;n  X n;n Positif/Negatif Tabel 6. Contoh data ulasan aplikasi PeduliLindungi No Ulasan Bobot  Sentimen 1 jelek, gabisa update lokasi realtime, sdh kasih akses lokasi …. -3 Negatif 2 Tidak bisa menerima sms kode otp.... 2 Positif 3 Sudah di download tidak bisa mendaftar …. -1 Negatif : : : : 101.942  Ribet banget mau bikin tanggal lahir.... -2 Negatif
klasifikasi  [13]. Confusion matrix yang memuat keempat nilai tersebut akan diunjukkan pada Tabel 2.
Tabel 2 menunjukkan bahwa confusion matrix digunakan untuk menghitung ketepatan klasifikasi. Pengukuran yang sering digunakan untuk mengukur keputusan klasifikasi adalah akurasi, spesifistas, dan sensitivitas [14].
1. Akurasi merupakan tingkat kedekatan antara nilai prediksi dengan nilai aktual. Akurasi digunakan untuk menghitung ketepatan klasifikasi sebuah opini dokumen yang teridentifikasi secara tepat dari keseluruhan dokumen yang mempunyai data yang balanced atau seimbang tiap kategorinya.
𝐴𝐴𝐴𝐴𝐴𝐴𝑎𝑎𝑎𝑎𝐴𝐴𝐴𝐴 = 𝑇𝑇𝑁𝑁+𝑇𝑇𝑃𝑃 𝑇𝑇𝑁𝑁+𝑇𝑇𝑃𝑃+𝐹𝐹𝑁𝑁+𝐹𝐹𝑃𝑃 (6)
2. Sensitivitas atau recall merupakan proporsi ulasan positif yang tepat diprediksi ke dalam kelas positif.
𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑡𝑡𝐴𝐴𝑆𝑆𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 = 𝑇𝑇𝑃𝑃 𝑇𝑇𝑃𝑃+𝐹𝐹𝑁𝑁 (7)
3. Spesifisitas merupakan proporsi ulasan negatif yang tepat diprediksi ke dalam kelas negatif.
𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑆𝑆𝐴𝐴𝐴𝐴𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 = 𝑇𝑇𝑁𝑁 𝑇𝑇𝑁𝑁+𝐹𝐹𝑃𝑃 (8)
Sedangkan untuk data imbalanced, pengukuran ketepatan klasidikasi menggunakan G-mean. Data imbalanced adalah data yang dianggap tidak seimbang jika salah satu kelas berjumlah lebih sedikit dari kelas yang lainnya [13].
Dikatakan imbalanced jika salah satu kelas memiliki proporsi kurang dari 35% dari data set.
G-Mean atau Geometric Mean merupakan rata-rata geometri nilai sensitivitas dan  spesifisitas  [15]. G-Mean digunakan untuk mengukur keseimbangan antara klasifikasi di kelas mayoritas dan minoritas  serta memaksimalkan akurasi pada masing-masing kelas dan menjaganya agar tetap seimbang. Nilai G-Mean yang rendah merupakan indikasi kinerja yang buruk dalam klasfikasi. Dengan demikian, G- Mean penting untuk menghindari overfitting kelas negatif dan underfitting kelas positif. Rumus untuk menghitung G-Mean akan ditunjukkan pada persamaan sebagai berikut:
𝐺𝐺 − 𝑀𝑀𝑆𝑆𝑎𝑎𝑆𝑆 = �𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑡𝑡𝐴𝐴𝑆𝑆𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 𝑚𝑚 𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑆𝑆𝐴𝐴𝐴𝐴𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 (9)
Selain G-Mean, terdapat pengukuran ketepatan klasifikasi yang dapat digunakan pada saat data imbalanced yaitu adalah AUC atau Area Under Curve. AUC atau Area Under Curve merupakan  daerah berbentuk persegi yang nilainya selalu berada diantara 0-1 dan merupakan indikator dari performansi kurva ROC. Perhitungan AUC akan disajikan pada persamaan berikut:
𝐴𝐴𝐴𝐴𝐶𝐶 = 1 2 ( 𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑡𝑡𝐴𝐴𝑆𝑆𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 + 𝑆𝑆𝑆𝑆𝑆𝑆𝐴𝐴𝐴𝐴𝑆𝑆𝐴𝐴𝐴𝐴𝐴𝐴𝑡𝑡𝑎𝑎𝐴𝐴 ) (10)
Tabel 11. Hasil proses case folding
Text
“jelek, gabisa update lokasi realtime, sdh kasih akses lokasi sepanjang waktu masih butuh akses bluetooth segala ga jelas”
:
Tabel 12. Hasil proses slangword Text
“jelek tidak bisa update lokasi realtime sudah kasih akses lokasi sepanjang waktu masih butuh akses bluetooth segala tidak jelas ” : Tabel 13. Hasil proses stemming Text
“jelek tidak bisa update lokasi realtime sudah kasih akses lokasi panjang waktu masih butuh akses bluetooth segala tidak jelas”
“tidak bisa terima sms kode otp kalau memang aplikasi belum siap lebih baik jangan di luncur dulu”
:
Tabel 14. Hasil proses stopwords
Text
“jelek lokasi realtime akses lokasi butuh akses bluetooth”
“terima sms kode otp luncur”
: Tabel 15.
Hasil proses tokenizing Text “jelek lokasi realtime akses lokasi butuh akses bluetooth” Jelek, lokasi, realtime, akses, lokasi, butuh, bluetooth “terima sms kode otp luncur” Terima, sms, kode, otp, luncur
: :
Tabel 7. Frekuensi kemunculan kata tertinggi Kata Jumlah Kata Kata Jumlah Kata kode 5846 isi 4770 daftar 12605 cek 6342 unduh 7880 login 5742 buka 9664 bantu 5998 pakai 6603 mohon 7196 email 6166 susah 7645 nik 7377 lahir 8480 peduli 4251 coba 4990 Tabel 8.
Struktur data ulassan aplikasi PeduliLindungi Ulasan
Terms
Sentimen 1 2 3 … 16 kode  daftar  unduh  …  coba jelek lokasi… 0 0 0 … 0 Negatif terima sms… 1 0 0 … 0 Positif : : : : : : : ribet lahir… 0 0 0 … 0 Negatif Tabel 9. Struktur data setelah laplace smoothing Ulasan Terms Sentimen 1 2 3 … 16 kode  daftar  unduh  …  coba jelek lokasi… 1 1 1 … 1 Negatif terima sms… 2 1 1 … 1 Positif : : : : : : : ribet lahir… 1 1 1 … 1 Negatif Tabel 10. Proporsi kelas sentimen Positif Negatif 0.23304 0.76696
Skala untuk menjelaskan nilai AUC dapat dilihat pada Tabel 3. Kurva ROC merupakan grafik dua dimensi hubungan antara True Positive Rate (TPR) atau sensitivitas (sumbu Y) dengan False Positive Rate (FPR) atau 1-spesifisitas (sumbu X). Jika grafik menunjukkan titik kiri terbawah (0,0), maka mewakili nilai probabilitas yang tidak pernah menunjukkan kondisi positif atau tidak menghasilkan kondisi false potisitive dan true positive. Sedangkan, grafik menunjukkan titik kanan atas (1,1) mewakili nilai probabilitas yang menunjukkan kondisi positif. Berikut merupakan contoh kurva ROC ditunjukkan pada Gambar 1.
Gambar 1  menampilkan  sebuah garis diagonal dengan menentukan klasifikasi secara  acak yang disebut Random Performance yang menghasilkan nilai AUC sebesar 0,5 dikarenakan kurva yang didapatkan berupa garis diagonal antara titik (0,0) dengan titik (1,1). Jika AUC yang dihasilkan < 0,50 maka model statistik yang dievaluasi memiliki tingkat keakuratan yang sangat rendah mengindikasikan sangat buruk  jika digunakan  [16]. Ketika seluruh data klasifikasi yang mencangkup TPR dan FPR diplotkan kedalam grafik ROC dan  nilai keakuratan dikatakan perfect classification, apabila kurva mendekati titik kiri atas (0,1).

## I. PeduliLindungi
PeduliLindungi merupakan aplikasi atau situs yang dikembangkan dan digunakan dalam pelaksanaan surveilans kesehatan oleh Pemerintah Republik Indonesia dalam menangani penyebaran COVID-19, antara lain penelusuran (tracing), pelacakan (tracking) dan pembatasan (fencing) di wilayah Republik Indonesia [16].

## III. METODOLOGI PENELITIAN

## A. Metode Pengumpulan Data
Sumber data dalam penelitian ini merupakan data sekunder yaitu ulasan mengenai aplikasi PeduliLindungi pada bulan Januari 2021 hingga Desember 2021. Data diperoleh dari Google Play Store dengan cara scrapping menggunakan Google Collab yang diambil pada tanggal 19 Maret 2022 dan diperoleh sebanyak 101.942 data ulasan berbahasa Indonesia dan tidak memperhatikan nama penggunanya.

## B. Variabel Penelitian
Variabel yang digunakan untuk penelitian ini adalah ulasan pengguna terhadap aplikasi PeduliLindungi ditunjukkan pada
Tabel 4. Struktur data yang digunakan dalam penelitian ini terdapat pada Tabel 5.

## C. Metode Penelitian
Penelitian ini akan menganalisis data ulasan pengguna aplikasi PeduliLindungi dengan menggunakan analisis sentimen dan Naïve Bayes Classifier model Multinomial .

## D. Langkah Analitis
Langkah-langkah analisis pada penelitian ini diantaranya yaitu sebagai berikut: 1. Mengetahui hasil klasifikasi analisis sentimen data ulasan pengguna terhadap aplikasi PeduliLindungi dengan langkah analisis sebagai berikut.
a. Melakukan scrapping data ulasan Google Play Store pada   aplikasi PeduliLindungi menggunakan Google Collab sebanyak 101.942 data ulasan, lalu menyimpan hasil scraping pada format csv.
b. Penentuan kategori sentimen yaitu menentukan data tersebut menjadi positif, netral, negatif. Namun untuk analisis selanjutnya hanya menggunakan positif dan negatif.
c. Tahap text pre-reprocessing. Tahap ini dilakukan untuk pada data mentah dari hasil scraping menggunakan software RStudio.
d. Melakukan perhitungan term frequency.
e. Menvisualisasikan hasil berdasarkan sentimen negatif dan positif menggunakan word cloud .
2. Mengetahui hasil ketepatan klasifikasi data ulasan pengguna terhadap aplikasi PeduliLindungi menggunakan Naïve Bayes Classifier dengan langkah sebagai berikut:
a. Membagi data menjadi data training dan data testing dari data hasil penentuan kategori sentimen dengan menggunakan 10- Holdout Validation.
b. Melakukan klasifikasi data menggunakan Naïve Bayes Classifier dari data ulasan tentang aplikasi PeduliLindungi.
c. Menghitung ketepatan klasifikasi berdasarkan tingkat akurasi jika data balanced, G-Mean, dan AUC jika data imbalanced .
Tabel 16.
Proporsi kelas sentimen dari pembagian data menggunakan 10-
holdout validation Iterasi Proporsi Kelas Sentimen Training Testing Negatif Positif Negatif Positif 1 0.767 0.233 0.767 0.233 2 0.767 0.233 0.767 0.233 3 0.767 0.233 0.767 0.233 4 0.767 0.233 0.767 0.233 5 0.767 0.233 0.767 0.233 6 0.767 0.233 0.767 0.233 7 0.767 0.233 0.767 0.233 8 0.767 0.233 0.767 0.233 9 0.767 0.233 0.767 0.233 10 0.767 0.233 0.767 0.233 Tabel 17.
Perhitungan ketetapan klasifikasi NBC pada data training
Iterasi ke- Confusion Matriks Ketepatan Klasifikasi NBC Sensitivitas Spesifikasi G- Mean AUC Rata-rata Prediksi Aktual 0,7351 0,5295 0,6239 0,6323 Negatif Positif Negatif 26208 3983 Positif 23286 11054 Tabel 18. Perhitungan ketetapan klasifikasi NBC pada data testing Iterasi ke-
Confusion Matriks
Ketepatan Klasifikasi NBC Sensitivitas Spesifikasi G- Mean AUC Rata-rata Prediksi Aktual 0,7446 0,5173 0,6206 0,6309 Negatif Positif Negatif 6400 960 Positif 5973 2800 Tabel 19. Perbandingan nilai G-Mean dan AUC G-Mean AUC Data Training 0,6239 0,6323 Data Testing 0,6206 0,6309
d. Intrepretasi hasil.
e. Menarik kesimpulan dan saran.

## IV. HASIL DAN PEMBAHASAN
A. Text Pre- Processing dan Klasifikasi Sentimen Data Ulasan Pengguna Aplikasi PeduliLindungi
Data yang sudah dikumpulkan menggunakan Google Collab selanjutnya akan melalui tahapan penentuan kategori sentimen. Penentuan sentimen didasarkan pada jumlah bobot. Dokumen/ ulasan memiliki bobot atau nilai lebih dari 1 maka akan dikategorikan sebagai sentimen positif. Jika ulasan memiliki bobot atau nilai kurang dari -1 maka akan dikategorikan sebagai sentimen negatif, dan jika ulasan memiliki bobot atau nilai 0 maka akan dikategorikan sebagai sentimen netral. Hasil dari penentuan kategori sentimen ditunjukkan pada Tabel 6.
Tabel 6 menunjukkan bahwa data ulasan yang memiliki sentimen positif berjumlah sebanyak 19451 data, sentimen negatif berjumlah sebanyak 66258 data, dan sentimen netral sebanyak 16233 data.
Data pada Tabel 6 masih berupa data mentah karena masih memuat tanda baca, kata-kata tidak penting, dan hal-hal yang dianggap tidak diperlukan yang tidak menggambarkan isi dari ulasan sehingga perlu dilakukan text pre-processing. Berikut merupakan langkah-langkah dari text pre-processing serta hasil yang sudah didapatkan.
1. Cleansing data mempunyai tujuan untuk membersihkan data dari atribut yang tidak penting dalam proses klasifikasi dan menghilangkan data yang duplikat.
2. Case folding bertujuan untuk mengubah semua huruf kapital (uppercase) dikembalikan menjadi huruf kecil (lower case) agar sama atau seragam. Hasil prosesnya ditunjukkan pada Tabel 7.
3. Slangword bertujuan mengganti kata yang masih dibutuhkan dalam analisis akan tetapi penulisan kata yang masih kurang tepat.  Hasil prosesnya ditunjukkan pada Tabel 8.
4. Stemming merupakan langkah dimana semua kata akan kembali menjadi kata dasar. Hasil prosesnya ditunjukkan pada Tabel 9.
5. Stopwords bertujuan untuk menghilangkan kata yang tidak dibutuhkan lagi. Seperti kata hubung akan, pada, di, yang, dan lain lain. Hasil prosesnya ditunjukkan pada Tabel 10.
6. Tokenizing atau tokenisasi adalah proses memenggal kalimat menjadi beberapa bagian atau kata berdasarkan tanda baca. Hasil prosesnya ditunjukkan pada Tabel 11.
Setelah dilakukan proses text pre-processing didapatkan ulasan sebanyak 96083 data dan terbentuk terms sebanyak 57358. Jumlah terms tersebut masih tergolong besar maka dari itu perlu dilakukan proses sparsity yang bertujuan untuk menghapus terms yang jarang muncul. Penelitian ini menghasilkan sparsity sebesar 94% dan menghasilkan terms sebanyak 16 dengan nilai sparse sebesar 0,96.  Selanjutnya didapatkan hasil frekunsi kemunculan kata tertinggi yang terdiri dari 16 kata pada aplikasi PeduliLindungi sebagaimana ditampilkan pada Tabel 12.
Tabel 12 menunjukkan bahwa frekuensi kemunculan kata paling banyak adalah kata “daftar” dan paling sedikit adalah kata “peduli’.Selanjutnya didapatkan document term matrix
ulasan aplikasi PeduliLindungi yang ditunjukkan pada Tabel 13. Tabel 13 menunjukkan bahwa masih banyak frekuensi kata yang muncul bernilai 0 sehingga untuk menghindari probabilitas bernilai 0 atau laplace smoothing maka frekuensi terms pada setiap ulasan ditambahkan dengan angka 1. Hasil dari frekuensi terms pada setiap ulasan  yang sudah dijumlahkan dengan angka 1 ditunjukkan pada Tabel 14. Selanjutnya visualisasi dari hasil text pre-processing akan ditunjukkan dalam bentuk word cloud pada Gambar 2 yang menunjukkan bahwa kata yang sering muncul adalah “daftar, “buka”, “lahir” dan lain lain.
Hasil word cloud ulasan pengguna aplikasi PeduliLindungi berdasarkan sentimen positif akan ditunjukkan pada Gambar 3  dan word cloud berdasarkan sentimen negatif akan ditunjukkan pada Gambar 4.
Gambar  3  menunjukkan bahwa berdasarkan sentimen positif pada data ulasan aplikasi PeduliLindungi didapatkan kata yang sering muncul adalah “bantu”, “terima”, “mohon”, “peduli”,“bagus” dan lain-lain yang berukuran kecil.
Gambar  4  menunjukkan bahwa berdasarkan sentimen negatif pada data ulasan aplikasi PeduliLindungi didapatkan kata yang sering muncul adalah “daftar”, “susah”, “buka”, “lahir”, “gagal”, dan lain-lain .
B. Ketepatan Klasifikasi Data Ulasan Pengguna Aplikasi PeduliLindungi Menggunakan Naïve Bayes Classifier Data yang sudah dilakukan proses text pre-processing dan klasifikasi  sentimen  selanjutnya dilakukan perhitungan ketepatan klasifikasi. Sebelum dilakukan klasifikasi perlu diketahui kondisi data atau sentimen  pengguna PeduliLindungi balance atau imbalanced yang  akan menentukan perhitungan ketepatan klasifikasi. Jika data balance ketepatan klasifikasi diukur menggunakan tingkat akurasi dihitung berdasarkan persamaan (3), sedangkan kondisi data imbalanced ketepatan klasifikasi menggunakan G-Mean dan AUC berdasarkan persamaan (9) dan persamaan (10) . Pembagian data training dan data testing untuk analisis ketepatan klasifikasi didasarkan pada struktur data Tabel 14. Proporsi kelas sentimen  untuk menentukan penggunaan perhitungan ketepatan klasifikasi disajikan Tabel 15.
Tabel 15  menunjukkan bahwa proporsi kelas sentimen negatif dan positif. Sentimen positif mempunyai proporsi data sebesar 0,23304 dan proporsi sentimen negatif sebesar 0,76696. Dari proporsi tersebut dapat dijelaskan bahwa klasifikasi data ulasan paling banyak mengandung sentimen negative.  Berikut merupakan visualisasi untuk melihat perbandingan persentase dari sentimen positif dan negatif ditunjukkan pada Gambar 5.
Gambar  5  menunjukkan bahwa sentimen  data ulasan pengguna aplikasi PeduliLindungi adalah imbalanced karena salah satu kelas sentimen memiliki proporsi kurang dari 35% atau nilai proporsi sentimen tidak seimbang. Maka dari itu perhitungan klasifikasi yang digunakan adalah G-Mean dan AUC. Pembagian data training dan testing berdasarkan metode 10- Holdout Validation dengan set seed yang digunakan untuk mengacak data, split rasio yang sama senilai 0.8:0.2. Proses pembagian data dilakukan perulangan sebanyak 10 kali. Hasil proporsi kelas sentimen  pada masing-masing data training dan testing akan disajikan dalam Tabel 16.
Tabel 16 menunjukkan bahwa proporsi kelas sentimen dari setiap iterasi yang dihasilkan pada saat pembagian data training dan testing dengan 10- Holdout Validation adalah sama. Setelah diperoleh pembagian data training dan testing selanjutnya dilakukan perhitungan ketepatan klasifikasi yang dibagi menjadi dua.
Pertama adalah perhitungan klasifikasi dari data training. Tabel 17 menunjukkan hasil dari perhitungan ketepatan klasifikasi data training dari 10 iterasi pada Tabel 17. Tabel 17 menunjukkan perhitungan ketepatan klasifikasi dari data training menggunakan Naïve Bayes Classifier dari 10 iterasi didapatkan confusion matrix, sensitivitas, spesifisitas, G-Mean, dan AUC. Rata-rata confusion matrix diketahui bahwa banyaknya ulasan yang bersentimen negatif yang tepat diprediksi dalam kelas negatif  sebanyak 26208 data, sedangkan banyaknya ulasan yang bersentimen positif yang tepat dipredikdi dalam kelas positif sebanyak 11054 data. Banyaknya ulasan negatif yang terprediksi dalam kelas positif sebanyak 23286 data, sedangkan banyaknya ulasan positif yang terprediksi dalam kelas negatif sebanyak 3983 data. Hasil confusion matrix juga didapatkan nilai sensitivitas sebesar 0,7351 yang berarti data ulasan pengguna PeduliLindungi yang mengandung opini positif tepat diklasifikasikan dengan sentimen  positif sebesar 73,51%. Selanjutnya diperoleh nilai spesifisitas sebesar 0,5295 yang berarti data ulasan pengguna PeduliLindungi yang mengandung opini negatif tepat diklasifikasikan dengan sentimen  negatif sebesar 52,95%.  Hasil perhitungan sensitivitas dan spesifisitas diperoleh perhitungan nilai G- Mean dan AUC. Nilai G-Mean yang didapatkan adalah sebesar 0,6239 yang berarti bahwa sentimen positif dan negatif dari data ulasan pengguna aplikasi PeduliLindungi dapat diklasifikasikan secara tepat sebesar 62,39%. Selanjutnya didapatkan Kurva ROC data training yang disajikan pada Gambar 6.
Kedua adalah perhitungan klasifikasi dari data testing. Klasifikasi data testing dibangun berdasarkan model data training . Tabel 18  menunjukkan hasil dari perhitungan ketepatan klasifikasi data testing dari 10 iterasi pada Tabel 18.
Tabel 18 menunjukkan perhitungan ketepatan klasifikasi dari data testing menggunakan Naïve Bayes Classifier dari 10 iterasi didapatkan confusion matrix, sensitivitas, spesifisitas, G-Mean, dan AUC. Rata-rata confusion matrix diketahui bahwa banyaknya ulasan yang bersentimen negatif yang tepat diprediksi dalam kelas negatif sebanyak 6400 data, sedangkan banyaknya ulasan yang bersentimen positif yang tepat dipredikdi dalam kelas positif sebanyak 2800 data. Banyaknya ulasan negatif yang terprediksi dalam kelas positif sebanyak 5973 data, sedangkan banyaknya ulasan positif yang terprediksi dalam kelas negatif sebanyak 960 data. Hasil confusion matrix juga didapatkan nilai sensitivitas sebesar  0,7446 yang berarti data ulasan pengguna PeduliLindungi yang mengandung opini positif tepat diklasifikasikan dengan sentimen  positif sebesar 74,46%. Selanjutnya diperoleh nilai spesifisitas sebesar 0,5173 yang berarti data ulasan pengguna PeduliLindungi yang mengandung opini negatif tepat diklasifikasikan dengan sentimen  negatif sebesar 51,73%.  Hasil perhitungan sensitivitas dan spesifisitas diperoleh perhitungan nilai G- Mean dan AUC. Nilai G-Mean yang didapatkan adalah
sebesar 0,6206 yang berarti bahwa sentimen positif dan negatif dari data ulasan pengguna aplikasi PeduliLindungi dapat diklasifikasikan secara tepat sebesar 62,06%. Selanjutnya didapatkan Kurva ROC data training yang disajikan pada Gambar 7.
Gambar  7  merupakan kurva ROC data testing yang menunjukkan nilai AUC sebesar 0,6309. Berdasarkan skala penilaian AUC pada Tabel 19  diketahui bahwa nilai AUC sebesar 0,6309 yang berarti bahwa data ulasan pengguna PeduliLindungi termasuk dalam klasifikasi lemah yaitu sebesar 63,09%.
Perbandingan nilai G-Mean dan AUC dari perhitungan data training dan testing dapat dilihat pada Tabel 19. Tabel 19 menunjukkan hasil perhitungan ketepatan klasifikasi nilai G-Mean dan nilai AUC dari data training lebih besar daripada data testing. Nilai G-Mean sebesar 0,6239 menunjukkan bahwa bahwa sentimen positif dan negatif dari data ulasan pengguna aplikasi PeduliLindungi dapat diklasifikasikan secara tepat sebesar 62,39% dan nilai AUC sebesar 0,6323 yang berarti bahwa data ulasan pengguna PeduliLingungi termasuk dalam klasifikasi lemah yaitu sebesar 63,23%.

## V. KESIMPULAN DAN SARAN
Kesimpulan yang dapat diambil berdasarkan hasil analisis adalah sebagai berikut:  (1)  Hasil klasifikasi sentimen dari data ulasan pengguna aplikasi PeduliLindungi menunjukkan bahwa pengguna mayoritas memberikan opini bersentimen negatif sebesar 65%, sedangkan opini sentimen positif hanya sebesar 19,08%, dan sentimen netral sebesar 15,92%. Opini masyarakat yang bersentimen positif antara lain mengandung kata “bantu”, “terima”, “mohon”, “peduli”,“bagus” dan lain- lain.  Sedangkan opini  masyarakat yang bersentimen negatif antara lain mengandung kata “daftar”, “susah”, “buka”, “lahir”, “gagal”, dan lain-lain. (2) Ketepatan klasifikasi dari data ulasan pengguna aplikasi PeduliLindungi menggunakan Naïve Bayes Classifier didapatkan hasil bahwa perhitungan yang digunakan menggunakan G-Mean dan AUC karena sentimen data ulasan pengguna aplikasi PeduliLindungi adalah imbalanced. Nilai G-Mean sebesar 0,6239 menunjukkan bahwa bahwa sentimen positif dan negatif dari data ulasan pengguna aplikasi PeduliLindungi dapat diklasifikasikan secara tepat sebesar 62,39% dan nilai AUC sebesar 0,6323 yang berarti bahwa data ulasan pengguna PeduliLingungi termasuk dalam klasifikasi lemah yaitu sebesar 63,23%.
Saran yang diberikan diantaranya: (1) Bagi  pihak KOMINFO dapat mempertimbangkan hasil analisis sentimen ulasan pengguna aplikasi PeduliLindungi dari penelitian ini meninjau kembali ulasan bersentimen negatif, terlebih lagi dari segi sistem keamanan agar dapat menjadi evaluasi kinerja dari PeduliLindungi untuk kedepannya. (2)  Bagi penelitian selanjutnya diharapkan dapat menggunakan hasil penelitian ini sebagai bahan pertimbangan dalam rangka menggunakan metode yang lain dalam hal klasifikasi dan perbandingan juga evaluasi agar dapat membuat penelitian yang lebih baik.

## DAFTAR PUSTAKA
[1] R. Djalante et al. , “Review and analysis of current responses to COVID-19 in indonesia: period of january to march 2020,” Progress
in Disaster Science , vol. 6, p. 100091, 2020, doi: 10.1016/j.pdisas.2020.100091.
[2] Mesran et al. , Merdeka Kreatif di Era Pandemi Covid-19: Suatu Pengantar . Jakarta: Green Press, 2020. ISBN 9786239361426.
[3] R. Fajar, “Implementasi algoritma naïve bayes terhadap analisis sentimen opini film pada twitter,” Jurnal Inovtek Polbeng -  Seri Informatika , vol. 3, no. 1, pp. 50–59, 2018, doi: 10.35314/isi.v3i1.335.
[4] E. D. P. Daulay and I. Asror, “Sentimen Analisis pada Ulasan Google Play Store Menggunakan Metode Naïve Bayes,” in E-Proceeding of Engineering , 2020, pp. 8400–8410.
[5] N. S. Wardani, A. Prahutama, and P. Kartikasari, “Analisis sentimen pemindahan ibu kota negara dengan klasifikasi naïve bayes untuk model bernoulli dan multinomial,” Jurnal Gaussian , vol. 9, no. 3, pp. 237–246, Aug. 2020, doi: 10.14710/j.gauss.v9i3.27963.
[6] S. Kusumadewi, “Klasifikasi status gizi menggunakan naïve bayesian classification,” CommIT Journal , vol. 3, no. 1, pp. 6–11, 2009, doi: 10.21512/commit.v3i1.506.
[7] A. Wanto, Data  Mining :  Algoritma  dan  Implementasi . Medan: Yayasan Kita Menulis, 2020. ISBN 9786237645801.
[8] R. Feldman and J. Sanger, The Text Mining Handbook - Advanced Approaches in Analyzing Unstructured Data . Cambidge: Cambridge University Press, 2007. ISBN 9780521836579.
[9] I. Kurniawan and A. Susanto, “Implementasi metode k-means dan naïve bayes classifier untuk analisis sentimen pemilihan presiden (pilpres) 2019,” Eksplora Informatika , vol. 9, no. 1, pp. 1–10, Sep. 2019, doi: 10.30864/eksplora.v9i1.237.
[10]  O. Karmayasa and I. B. Mahendra, “Implementasi vector space model
dan beberapa notasi metode  term frequency inverse document frequency (TF-IDF) pada sistem temu kembali informasi,” Jurnal Elektronik Ilmu Komputer Udayana , vol. 1, no. 1, Aug. 2012.
[11]  Q. Castellà and C. Sutton, “Word Storms: Multiples of Word Clouds for Visual Comparison of Documents,” in Proceedings of the 23rd International Conference on World Wide Web , 2014, pp. 665–676. doi: 10.1145/2566486.2567977.
[12]  P. A. Nugroho, R. Saptono, and M. E. Sulistyo, “Perbandingan metode probabilistik naïve bayesian classifier dan jaringan syaraf tiruan learning vector quantization dalam kasus klasifikasi penyakit kandungan,” ITSMART: Jurnal Teknologi dan Informasi , vol. 2, no. 3, Dec. 2013, doi: 10.20961/itsmart.v2i2.628.
[13]  M. Bekkar, H. Djema, and T. A. Alitouche, “Evaluation measures for models assessment over imbalanced data sets,” Journal of Information Engineering and Applications , vol. 3, no. 10, pp. 27–38, Jan. 2013.
[14]  A. Hotho, A. Nürnberger, and G. Paaß, “A brief survey of text mining,” Journal for Language Technology and Computational Linguistics , vol. 20, no. 1, pp. 19–62, Jul. 2005, doi: 10.21248/jlcl.20.2005.68.
[15]  T. D. Kurniawan, “Implementasi Text Mining Pada Analisis Sentimen Pengguna Twitter Terhadap Media Mainstream Menggunakan Naïve Bayes Classifier Dan Support Vector Machine,” Departemen Statistika, Institut Teknologi Sepuluh Nopember, Surabaya, 2017.
[16]  T. Fawcett, “An introduction to ROC analysis,” Pattern Recognit Lett , vol. 27, no. 8, pp. 861–874, 2006, doi: 10.1016/j.patrec.2005.10.010.