Lompat ke konten utama
←

Mengolah Teks dengan Python

Pelajaran 7 dari 16

Membersihkan dan memecah teks

Kata henti: membuang kata yang tidak membedakan

Setelah pelajaran ini kamu bisa membuang kata henti dari daftar token dan mencari calon kata henti dari data.

±14 menitDiperiksa 27 Sep 2026

Materi

Kata henti (stop words) adalah kata yang sering sekali muncul tetapi sedikit membedakan satu teks dari teks lain, seperti yang, dan, di, ke, dan ini. Membuangnya membuat hitungan kata dan vektor teks lebih banyak berisi kata yang bermakna. Python tidak menyediakan daftar kata henti Bahasa Indonesia, dan daftar bawaan scikit-learn hanya berbahasa Inggris. Daftar di kelas ini disusun sendiri untuk data latihan.

HENTI = {"yang", "dan", "di", "ke", "ini", "itu"}

kata = ["rotinya", "yang", "cokelat", "ini", "lembut", "dan", "manis"]
inti = [k for k in kata if k not in HENTI]
print(inti)   # ['rotinya', 'cokelat', 'lembut', 'manis']

Daftar kata henti disimpan sebagai set; Tutorial Python menyebut pengujian keanggotaan dan membuang duplikat sebagai kegunaan utama set. Kata dibandingkan setelah casefold, karena daftarnya ditulis huruf kecil: tanpa casefold, Yang di awal kalimat lolos dari saringan. Urutan kata yang tersisa tetap sama dengan urutan aslinya.

Calon kata henti dapat dicari dari data sendiri: kata yang muncul di setiap dokumen tidak membedakan dokumen mana pun. Irisan set (operator & atau set.intersection) memberi kata yang ada di semua himpunan. Di scikit-learn, parameter max_df memakai gagasan yang sama untuk membuang kata yang frekuensi dokumennya melewati ambang.

Dokumentasi scikit-learn juga mencatat bahwa kata yang dianggap tidak informatif kadang justru berguna, misalnya untuk mengenali gaya tulisan. Dalam Bahasa Indonesia, kata tidak dan bukan adalah contohnya: membuangnya mengubah "tidak enak" menjadi "enak", sehingga keluhan terbaca sebagai pujian.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 2 dari 3

Kalimat "pesanan saya di gudang dan belum dikirim ke alamat" dipecah dengan split(), lalu kata henti {"saya", "di", "dan", "ke"} dibuang. Berapa token yang tersisa?

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke