Preprocessing data tweet permainan lato-lato |
Siapa yang belum kenal dengan permainan lato-lato? Ya, permainan tradisional yang telah lama dilupakan anak-anak ini kini kembali viral dengan sejumlah pro dan kontranya. Dua bola plastik padat yang dihubungkan oleh sebuah tali dan pengait di tengahnya ini kini banyak digemari oleh anak-anak. Tak hanya itu, permainan murah ini juga banyak dimainkan oleh orang dewasa karena dulunya pernah memainkannya.
Entah siapa yang mulai memviralkan permainan lato-lato ini. Yang jelas, berdasarkan penelurusan melalui Google Trends, permainan ini mulai banyak dicari sejak Desember 2022 lalu. Kemudian melejit di awal 2023, meski sekarang telah mengalami penurunan intensitas pencariannya.
Google Trend Index pencarian kata kunci "lato" |
Pro dan kontra yang ditimbulkan permainan ini sungguh beragam. Selain ada yang berpendapat tidak membahayakan, pendapat lain juga menyatakan bahwa permainan lato-lato membahayakan dan bahkan dilarang di beberapa negara. Pro dan kontra tersebut banyak terekam melalui media sosial, khususnya Twitter. Fenomena viralnya permainan lato-lato ini tentu menarik bila diangkat dan dianalisis.
Oleh karena itulah, pada kesempatan kali ini, kita akan mencoba mempraktikkan bagaimana cara menerapkan preprocessing data tidak terstruktur berupa teks yang bersumber dari Twitter dengan topik permainan lato-lato. Adapun data yang kita angkat ini diperoleh dengan teknik crawling Twitter API. Dengan menentukan sampel data teks sebanyak 30 record atau tweet.
Adapun data sebagai bekal praktikum kita kali ini bisa diunduh pada link berikut. Setelah data sudah siap, preprocessing data teks terkait topik permainan Lato-Lato dapat mengikuti langkah-langkah berikut:
#Import Module Pandas untuk membaca data dan mengolahnya
import pandas as pd
#Import dataset tweet topik permainan "lato-lato"
tweet = pd.read_excel('C:\\Users\\Joko Ade\Documents\\latolato.xlsx')
tweet.head()
screen_name | text | |
---|---|---|
0 | focalowrs | INI SIAPA YANG MAIN LATO LATO JAM SEGINI YAALLAH |
1 | EbenHeizer19 | Viral unggahan yang bernarasi Ken Arok sebagai... |
2 | Cpt28_ | @Subur0204 Duaaarr....kwkwkk...lato lato kepar... |
3 | Kararayu | @YaakamuajaHan @tanyarlfes Maap nanya, bisa ka... |
4 | indikoto | Serius pengen banget nempeleng anak-anak yg ma... |
#Aktivasi beberapa package dalam module Sastrawi
from Sastrawi.StopWordRemover.StopWordRemoverFactory import StopWordRemoverFactory
from Sastrawi.Stemmer.StemmerFactory import StemmerFactory
import re
import random
#Membuat fungsi pembersih data teks dan stopword dari module Sastrawi
clean_spcl = re.compile('(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)')
sastrawi = StopWordRemoverFactory()
stopworda = sastrawi.get_stop_words()
factory = StemmerFactory()
stemmer = factory.create_stemmer()
def clean_text(text):
text = text.lower()
text = clean_spcl.sub(' ', text)
text = stemmer.stem(text)
text = ' '.join(word for word in text.split() if word not in stopworda)
return text
#Menerapkan fungsi pembersih teks pada data frame
tweet['text_clean'] = tweet['text'].apply(clean_text)
tweet.head()
screen_name | text | text_clean | |
---|---|---|---|
0 | focalowrs | INI SIAPA YANG MAIN LATO LATO JAM SEGINI YAALLAH | siapa main lato lato jam gin yaallah |
1 | EbenHeizer19 | Viral unggahan yang bernarasi Ken Arok sebagai... | viral unggah narasi ken arok bagai temu main l... |
2 | Cpt28_ | @Subur0204 Duaaarr....kwkwkk...lato lato kepar... | duaaarr kwkwkk lato lato keparat |
3 | Kararayu | @YaakamuajaHan @tanyarlfes Maap nanya, bisa ka... | maap nanya kali si rekam negur langsung samper... |
4 | indikoto | Serius pengen banget nempeleng anak-anak yg ma... | serius ken banget nempeleng anak anak yg main ... |
#Aktivasi beberapa package dalam module Sastrawi
from Sastrawi.StopWordRemover.StopWordRemoverFactory import StopWordRemoverFactory, StopWordRemover, ArrayDictionary
from nltk.tokenize import word_tokenize
#Menambahkan daftar kata-kata stopword manual sesuai kebutuhan membersihkan teks
#Misalkan kita mau menghapus kata 'duaaarr', 'si ', 'yg', 'gin ', serta 'kwkwkk'
clean_spcl = re.compile('(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)')
sastrawi = StopWordRemoverFactory()
more_stopword = ['duaaarr', 'si','yg', 'gin', 'kwkwkk']
stopworda = sastrawi.get_stop_words() + more_stopword
factory = StemmerFactory()
stemmer = factory.create_stemmer()
def clean_text(text):
text = text.lower()
text = clean_spcl.sub(' ', text)
text = stemmer.stem(text)
text = ' '.join(re.sub("(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)"," ",text).split())
text = ' '.join(word for word in text.split() if word not in stopworda)
return text
#Menerapkan fungsi pembersih data teks dengan Sastrawi dan tambahan stopword manual
tweet['text_clean'] = tweet['text'].apply(clean_text)
tweet.head()
screen_name | text | text_clean | |
---|---|---|---|
0 | focalowrs | INI SIAPA YANG MAIN LATO LATO JAM SEGINI YAALLAH | siapa main lato lato jam yaallah |
1 | EbenHeizer19 | Viral unggahan yang bernarasi Ken Arok sebagai... | viral unggah narasi ken arok bagai temu main l... |
2 | Cpt28_ | @Subur0204 Duaaarr....kwkwkk...lato lato kepar... | lato lato keparat |
3 | Kararayu | @YaakamuajaHan @tanyarlfes Maap nanya, bisa ka... | maap nanya kali rekam negur langsung samper... |
4 | indikoto | Serius pengen banget nempeleng anak-anak yg ma... | serius ken banget nempeleng anak anak main lat... |
Demikian sedikit sharing kita kali ini, semoga sedikit banyak memberi manfaat kepada seluruh pembaca setia blog ini. Selamat memahami dan mempraktikkan!