Pembuatan Preprocessing Sederhana dengan Menggunakan Python

Preprocessing atau prapemrosesan adalah suatu kegiatan untuk melakukan pengolahan data sebelum data masuk ke dalam proses pengolahan utama. Pengolahan utama yang dimaksud dapat berupa text classfication, text summarization, atau bahkan data mining. Pada postingan ini, prapemrosesan yang akan kita bahas adalah penyederhanaan bentuk kalimat yang akan diolah, misalnya penghapusan tanda baca dan pengubahan karakter menjadi huruf kecil yang biasa dilakukan dalam pengolahan bahasa alami (natural languange processing). Selain itu, ada juga prapemrosesan lain seperti stemming dan lemmatization yaitu mengubah semua kata menjadi kata dasar, dan stopword removing yaitu proses penghapusan stopwords (misalnya: atau, yang, saat, dan lainnya).
Namun stemming, lemmatization, dan stopword removing tidak akan dibahas dalam postingan ini.

Pertama, baca data yang akan diolah dengan cara berikut ini.
1:  import pandas as pd  
2:  data = pd.read_csv("./data.csv")  
Library yang digunakan adalah pandas yaitu library yang menyediakan struktur data dan data analysis tools untuk bahasa pemrograman python. Library tersebut akan kita gunakan untuk membaca file berekstensi .csv. File yang dibaca berisi kumpulan kalimat yang akan diproses.
Setelah itu, kita dapat melakukan prapemrosesan dengan cara berikut ini.
1:  import re  
2:  result = []  
3:  for sen in range(0,len(data)):  
4:    document = re.sub(r'\W', ' ', str(synopsis[sen]))  
5:    document = document.lower()  
6:    document = re.sub(r'\s+[a-zA-Z]\s+', ' ', document)  
7:    document = re.sub(r'\s+', ' ', document, flags=re.I)  
8:    result.append(document)  
9:  print(result)  
Library yang digunakan adalah RegEx (Regular Expression) yang biasa digunakan untuk memeriksa string untuk menemukan pola tertentu. Proses yang dilakukan dalam prapemrosesan tersebut adalah penghapusan tanda baca (baris-4), konversi ke dalam huruf kecil (baris-5), penghapusan karakter tunggal (baris-6), dan penghapusan spasi ganda (baris-7). Hasil akhir disimpan dalam list dengan nama result (baris-8) yang sebelumnya telah diinisialisasi sebagai list kosong pada baris-2.

Setelah proses tersebut selesai, kita dapat melanjut ke dalam prapemrosesan lain seperti yang disebutkan sebelumnya yaitu stemming, lemmatization, dan stopwords removing.

Sumber:
http://pandas.pydata.org/pandas-docs/version/0.24/
https://www.w3schools.com/python/python_regex.asp
https://stackabuse.com/text-classification-with-python-and-scikit-learn/

Komentar

Postingan populer dari blog ini

Membaca SQL Server Transaction Log

Arsitektur Audit Basis Data