Langsung ke konten utama

Natural Language Processing (NLP) Penerapan Stopwords Bahasa Indonesia dengan R: Topik Sepinya Jalur Pantura Akibat Adanya Tol Trans Jawa

Natural Language Processing : Stopwords Bahasa Indonesia dengan R Halo teman-teman, berjumpa lagi dengan blog sederhana ini. Pada pembahasan sebelumnya, kita telah bersama belajar penerapan stemming teks yang merupakan bagian dari Natural Language Processing (NLP) menggunakan R. Pada perjumpaan kali ini, kita akan melanjutkan perjuangan kita berbagi ilmu mengenai NLP, tepatnya adalah penerapan stopwords Bahasa Indonesia dengan R. Perlu diketahui bahwa di dalam NLP, untuk menambah keluasan dan mempertajam analisis teks, proses stemming teks saja belum cukup. Kita juga perlu membersihkan teks yang relatif atau mutlak tidak bermakna di dalam analisis teks. Biasanya teks yang dieliminasi dalam NLP merupakan kata penghubunga atau konjungsi, atau kata yang berupa ekspresi yang bercampur di dalam data teks, misalkan ekspresi tertawa "wkwk", ekspresi penolakan "gak, nggak, tidak, atau gk", bahasa asing (selain Indonesia), atau juga kata-kata yang tidak memenuhi kaidah ta

Visualisasi Matriks Korelasi dan Uji Signifikansi Korelasi antar Variabel dengan R

Visualisasi matriks korelasi dan uji signifikansi korelasi variabel

Hai teman-teman, kembali lagi kita akan belajar bersama-sama. Kalau kemarin kita sedikit serius membahas bagaimana pemodelan ARIMA dengan menggunakan R secara cukup urut dan rinci, kali ini kita break dulu untuk membahas visualisasi data.

Visualisasi yang akan kita ulas kali ini adalah hasil korelasi antar variabel yang kita gunakan dalam penelitian. Secara sederhana, korelasi sendiri merupakan besarnya hubungan keeratan antara suatu variabel dengan variabel lainnya yang ditunjukkan oleh besar dan arah. Mirip dengan pengertian besaran vektor yang juga ditunjukkan oleh besar dan arahnya, korelasi biasanya digunakan sebagai awalan deskripsi variabel penelitian untuk melihat seberapa besar keterkaitan antar variabel. Aspek yang perlu ditekankan sebagai pembeda antara korelasi dan regresi yaitu tujuannya. Kalau regresi menunjukkan hubungan sebab-akibat variabel yang digunakan, sedangkan kalau korelasi tidak menunjukkan sebab-akibat.

Seperti yang kita ketahui, korelasi yang populer hingga saat ini adalah korelasi Spearman atau disebut pula korelasi Rank Spearman dan korelasi Pearson atau disebut juga korelasi moment product. Perbedaan dari dua jenis korelasi ini umumnya pada jenis penelitiannya, kalau korelasi Pearson biasa digunakan untuk data-data parametrik atau data kontinu serta diksrit. Sedangkan korelasi Spearman biasanya digunakan untuk data-data nonparametrik baik kontinu maupun diskrit.

Adapun persamaan dari kedua jenis korelasi tersebut adalah pada besarnnya. Baik korelasi Spearman maupun korelasi Pearson, keduanya memiliki nilai korelasi pada selang interval 0 sampai 1. Semakin menuju 1, korelasi antara dua variabel dikatakan semakin kuat dan dalam praktiknya, para ahli statistika kemudian melakukan pengelompokan kekuatan korelasi menjadi beberapa tingkatan.

Untuk korelasi yang bernilai 0 dikatakan bahwa kedua variabel tidak berkorelasi. Bila nilai korelasi 0,01 - 0,20 dikatakan berkorelasi sangat rendah, korelasi 0,21 - 0,40 dikatakan berkorelasi rendah, 0,41 - 0,60 dikatakan agak rendah, 0,61 - 0,80 dikatakan korelasinya cukup, 0,81 - 0,99 dikatakan korelasinya tinggi, dan 1 berkorelasi sangat tinggi (sempurna). Selain pengelompokkan seperti ini, pengelompokan lainnya juga banyak dilakukan namun esensinya sama, semakin menuju 1 maka korelasi dua variabel dikatakan semakin kuat.

Perihal arah korelasi, sebenarnya ia hanya menunjukkan arah kecenderungan dalam interpretasinya. Bukan menunjukkan sebab dan akibat. Dalam hukum permintaan (product demand) misalkan, ketika harga barang semakin tinggi (mahal), permintaan konsumen akan cenderung menurun. Pada kasus ini dikatakan korelasinya memiliki arah negatif. Atau pada kasus lain misalkan, semakin tinggi lama pendidikan seseorang, maka ada kecenderungan konsumsi mereka semakin tinggi (banyak). Pada kasus ini dikatakan korelasinya memiliki arah yang positif.

Lantas? Bagaimana penerapan visualisasi sekaligus uji signifikansi korelasi banyak variabel dengan R? Untuk datanya kali ini kita akan men-generate data sendiri kemudian kita lakukan visualisasi matriks korelasi berikut dengan uji signifikansi korelasinya dengan menggunakan beberapa code berikut:

Code:

#Membuat Matriks Korelasi
#Membuat Data Frame
df <- data.frame(lamapendidikan=c(4, 5, 5, 6, 7, 8, 8, 10),
                 pengeluaran=c(12, 14, 14, 13, 15, 16, 15, 12),
                 pendapatan=c(22, 25, 26, 27, 29, 32, 39, 40))

#Menampilkan Data Frame
df

Hasil:

  lamapendidikan pengeluaran pendapatan
1              4          12         22
2              5          14         25
3              5          14         26
4              6          13         27
5              7          15         29
6              8          16         32
7              8          15         39
8             10          12         40

Code:

#Membuat Matriks Korelasi
cor(df)

Hasil:

              lamapendidikan pengeluaran pendapatan
lamapendidikan      1.0000000   0.1780213  0.9404385
pengeluaran         0.1780213   1.0000000  0.1646659
pendapatan          0.9404385   0.1646659  1.0000000

Terlihat bahwa korelasi antara pendapatan dan lama pendidikan arahnya positif dan cukup tinggi 0,9404385 sedangkan korelasi antara pengeluaran dan lama pendidikan sangat rendah dan positif 0,1780213, demikian halnya dengan korelasi pendapatan dan pengeluaran.

Code:

#Plot Matriks Korelasi
library(corrplot)
corrplot(cor(df))

Hasil:

visualisasi 1

Code:

#Mengcustome bentuk lain matriks korelasi
par(mfrow=c(2, 2))
corrplot(cor(df), method = "circle")
corrplot(cor(df), method = "pie")
corrplot(cor(df), method = "color")
corrplot(cor(df), method = "number")

Hasil:

Visualisasi 2

Code:

#Plot matriks korelasi dengan package ggcorrrplot
par(mfrow=c(1, 1))
library(ggcorrplot)
ggcorrplot(cor(df))

Hasil:

Visualisasi 3

Code:

#Menguji signifikansi korelasi
attach(df)
cor.test(lamapendidikan, pengeluaran)
cor.test(lamapendidikan, pendapatan)
cor.test(pengeluaran, pendapatan)

Hasil:

    Pearson's product-moment correlation

data:  lamapendidikan and pengeluaran
t = 0.44314, df = 6, p-value = 0.6732
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 -0.6021950  0.7843056
sample estimates:
      cor
0.1780213

    Pearson's product-moment correlation

data:  lamapendidikan and pendapatan
t = 6.776, df = 6, p-value = 0.0005049
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 0.6989819 0.9894208
sample estimates:
      cor
0.9404385

    Pearson's product-moment correlation

data:  pengeluaran and pendapatan
t = 0.40893, df = 6, p-value = 0.6968
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 -0.6108923  0.7789526
sample estimates:
      cor
0.1646659

Terlihat bahwa korelasi variabel yang signifikan hanya lama pendidikan dan pendapatan, selain tinggi dan positif korelasinya juga secara statistik signifikan.

Baik, demikian sedikit pembahasan kita terkait visualisasi korelasi antar variabel dan uji signifikansinya menggunakan R. Jangan lupa share dan bertanya bila ada di kolom komentar. Sampai jumpa pada unggahan selanjutnya. Selamat mempraktikkan!


Komentar

Postingan populer dari blog ini

Pemodelan Autoregressive Integrated Moving Average (ARIMA Model) dengan R

ARIMA dengan R Jumpa lagi teman-teman, sebelumnya saya mohon maaf karena kemarin tidak sempat membuat unggahan terbaru di blog ini. Baik, sebelumnya kita telah mengulas tentang pemodelan Geographically Weigthed Regression (GWR) dengan R. Kali ini, kita akan melanjutkan belajar bersama mengenai pemodelan yang tak asing lagi dan populer hingga kini, yaitu pemodelan Autoregressive Integrated Moving Average (ARIMA). Kita akan membahas ARIMA secara langsung tanpa membahas AR dan MA secara tersendiri mengingat pada dasarnya ARIMA adalah model perpaduan antara model AR dengan order p , MA dengan order q dan aspek differencing dengan order d . Artinya, ketika kita mendengar istilah AR(1), maka sebenarnya itu adalah ARIMA(1, 0, 0), ketika kita mendengar ARI(1,1), maka aslinya itu ARIMA(1, 1, 0), atau bila mendengar MA(3), itu sebenarnya ARIMA(0, 0, 3) atau IMA(2,1) sebenarnya adalah ARIMA(0, 2, 1). Data runtun waktu atau time series merupakan salah satu jenis data yang hingga kini banyak digun

Machine Learning: Memahami Reinforcement Learning

Reinforcement Learning Halo teman-teman, pada pembahasan sebelumnya, kita telah berusaha memahami mengenai supervised learning dan unsupervised learning . Sebelum lanjut ke pemodelan statistik selanjutnya, ada baiknya kita membahas tentang satu lagi jenis algoritma machine learning yang akhir-akhir ini banyak digunakan dalam membentuk artificial intelligence (AI), yaitu algoritma reinforcement learning . Kita ke pengertian berdasarkan studi literatur daring ( online ) dulu teman-teman. Saya coba mengambil salah satu pengertian reinforcement learning, misalkan dari situsnya Algoritma, menyatakan bahwa reinforcement learning merupakan algoritma yang diterapkan untuk pembelajaran mesin ( machine learning ) sedemikian rupa sehingga dapat menentukan aksi yang tepat dan pada akhirnya sebuah program dapat bekerja secara otomatis memberikan hasil atau putusan yang benar. Lebih lanjut dalam situs algoritma mengangkat sebuah perumpamaan reinforcement learning dengan menggunakan proses penugasan

Machine Learning: Perbedaan Supervised Learning dan Unsupervised Learning

Perbedaan supervised learning dan unsupervised learning Halo teman-teman, kemarin kita telah mengawali bahasan mengenai salah satu anggota dari Machine Learning sekaligus merupakan contoh dari algoritma supervised learning , yaitu Naive Bayes Classifier (NBC). Akhir-akhir ini, dunia sains data dihebohkan dengan berbagai istilah statistik yang berkaitan erat dengan komputasi atau komputasi statistik, yaitu supervised learning dan unsupervised learning . Sebenarnya ada lagi istilah baru dan cukup makin sulit menyederhanakan definisinya, yaitu reinforcement learning , tapi khusus reinforcement learning nanti akan kita bahas tersendiri karena kita mulai bersinggungan dengan Artificial Intelligence atau kecerdasan buatan. Jujur, saya mengakui bahwa tidak semua dari kita memiliki latar belakang apalagi pakar teknologi informasi (IT). Sehingga, bila kita cermati bahasan-bahasan atau istilah komputasi statistik, sains data, atau data engineering , kita mungkin akan sejenak loading , bahkan s