Pengantar

Pada tulisan ini akan melanjutkan proses selanjutnya setelah mendapatkan data dengan Twitter API. Jika ingin mengunduh dataset tanpa mengambil online dari twitter, silakan unduh melalui link berikut :

Text Cleaning

Setelah akuisisi data, langkah selanjutnya adalah Text Cleaning . Tahapan ini meliputi sub-proses antara lain stopwords removal, whitespaces stripping, dan stemming.

library(tm)
library(SnowballC)
load(file = "elshinta.RData")
tweets.df <- twListToDF(tweets_data)

corpus <- Corpus(VectorSource(tweets.df$text))

# lowercase konten
corpus <- tm_map(corpus,content_transformer(tolower))

# hapus url, dan tanda baca
removeURL <- function(x) gsub("http[^[:space:]]*", "", x)
corpus <- tm_map(corpus, content_transformer(removeURL))
corpus <- tm_map(corpus, removePunctuation)

# buat stopwords Indonesia
file_stop <- file("stopwords.txt",open = "r")
id_stopwords <- readLines(file_stop)
close(file_stop)
id_stopwords = c(id_stopwords, "amp")

# hapus stopwords, angka, whitespace
corpus <- tm_map(corpus, removeWords, id_stopwords)
corpus <- tm_map(corpus, removeNumbers)
corpus <- tm_map(corpus, stripWhitespace)
corpus <- tm_map(corpus, PlainTextDocument)

# tampilkan konten tweet ke 125
writeLines(strwrap(corpus[[125]]$content))

# TDF dan DTF untuk corpus dataset elshinta
dtm = DocumentTermMatrix(corpus)
tdm = TermDocumentMatrix(corpus)

Untuk kasus ini, bahasa yang digunakan adalah bahasa Indonesia. Sedangkan pada R tidak tersedia untuk bahasa Indonesia. Sehingga, perlu membuat sendiri stopwords custom.

Stopwords Bahasa Indonesia

Dataframe Tweets @RadioElshinta

Konten Tweet ke 120 dan 125

DTF dan TDF dari corpus

Setelah dilakukan Text Cleaning, maka data siap diolah menjadi informasi lain. Tahap selanjutnya yaitu membuat statistik term frequency, dan membuat wordcloud dari TDF.