Yuk, Mulai Belajar Buat GUI di Jupyter Notebook Python

Jupyter notebook saat ini menjadi IDE andalan pengguna Python. IDE ini sangat membantu pengguna yang “alergi” bermain console. Dengan notebook masalah import library dapat mudah teratasi, yaitu lewat Anaconda Navigator. Nah, itu untuk kode, bagaimana untuk user? Agak kerepotan jika mereka ketika menjalankan sistem harus lewat kode. Di sinilah peran GUI diperlukan, yaitu bagaimana user tinggal memasukan data dan mengeksekusi/memproses data tersebut hanya dengan “single click”.

Salah satu library yang paling banyak digunakan untuk membuat GUI adalah Tkinter. Entah kenapa namanya kayak klub bola gitu. Lagi-lagi jika menggunakan paket Anaconda maka Tkinter bisa diimport. Coba buka Jupyter Notebook, dan jalankan kode sederhana berikut.

  • import tkinter as tk
  • window = tk.Tk()
  • greeting = tk.Label(text=”Hello, Tkinter”)
  • greeting.pack()
  • window.mainloop()

Jalankan (run). Oiya, untuk python versi 3 (terkini) harus menggunakan “t” kecil. Perhatikan ada jendela yang berisi teks “hello, Tkinter” yang merupakan contoh jendela GUI sederhana. Lihat link untuk belajar berikut ini.

Di jaman online, sangat mudah belajar programming. Atau coba link ini untuk yang ingin bahasa Indonesia, misalnya untuk tombol “push button” beserta inputnya. Dikombinasikan dengan Machine Learning maka GUI ini sangat ampuh.

Sudahkah Mendaftar Github?

Kebanyakan pengembang menggunakan Github untuk sarana sharing kode program. Saya mengenal pertama kali ketika kuliah web technology di Thailand. Waktu itu bahasa pemrograman yang digunakan adalah Ruby and Rails (lihat post-post saya tentang ruby and rails), yang memang pertama kali ditujukan untuk bahasa tersebut. Github terkenal dengan version controlnya. Lumayan ribet. Nah, untuk Anda yang belum memiliki akun di Github, postingan kali sedikit memandu Anda mendaftar Github.

Pertama-tama kunjungi situs Github untuk Join/bergabung. Berikutnya isilah data diri yang diminta oleh Github. Seperti biasa, Anda akan diminta mengisi username, email address, dan password untuk login nanti.

Selanjutnya Anda diminta untuk “mengutak-atik” puzzle, memastikan kalau Anda bukan robot/mesin. Tekan “Select a Plan”.

Pilih “Plan” yang diinginkan, kalau bisa sih yang berbayar. Tapi yang gratis juga ok.

Pilih “Individual – Pick the plan” dilanjutkan dengan mengisi data lain terkait tujuan mendaftar Github.

Lanjutkan dengan menekan “Complete Setup” dan buka email yang didaftarkan barusan untuk konfirmasi. Tekan verifikasi di email, untuk melanjutkan login. Setelah login, Anda diminta membuka email lagi untuk memasukan angka yang harus diisikan. Jika sudah maka Anda siap menggunakan Github. Banyak pro dan kontra ketika situs repository ini dibeli Microsoft. Selamat mencoba, “keep calm and code on”.

Yuk, Mencoba Mencetak “Hello World” di TensorFlow 2.0

TensorFlow (TF) merupakan platform machine learning open source buatan Google. Saat ini TF sudah masuk versi 2.0. Masalah muncul karena antara versi 1.0 dengan versi 2.0 banyak yang berubah. Nah, sesuai judul, ada baiknya Anda memulai belajar versi 2.0 yang katanya lebih simpel, lebih mudah digunakan dan fleksibel ketika berjalan di beragam platform. Sebagai contoh, untuk mencetak “Hello World” di TensorFlow 1.0 adalah sebagai berikut:

  • import tensorflow as tf
  • msg=tf.constant(‘Testing TensorFlow’)
  • sesi=tf.Session()
  • print(sesi.run(msg))

Bandingkan ketika menggunakan TensorFlow 2.0 berikut ini:

  • Import tensorflow as tf
  • msg = tf.constant(‘Hello World’)
  • tf.print(msg)

Versi 2.0 lebih sederhana. Bagaimana jika kita sudah terbiasa menggunakan versi 1.0 dan ingin menerapkan juga di versi 2.0? TensorFlow mengakomodasi masalah tersebut dengan mengimpor versi 1.0 yang kompatibel dengan versi 2.0.

  • import tensorflow.compat.v1 as tf
  • tf.disable_v2_behavior()
  • msg=tf.constant(‘Hello World’)
  • sesi=tf.Session()
  • print(sesi.run(msg))

TensorFlow menyediakan “Automatic Conversion Script” agar Anda tidak perlu mengganti kode satu persatu agar bisa dijalankan di TensorFlow 2.0. Silahkan pelajari lebih lanjut di link resminya ini.

 

Problem Read_CSV Pada Pandas yang Terbaca Satu Kolom

Biasanya kita membuat file Comma Separated Values (CSV) menggunakan Excel, walaupun bisa menggunakan Notepad atau text editor lain. Mungkin banyak yang mengalami masalah ketika menyimpan di Excel dalam pilihan “*.csv”, ternyata ketika dibuka di Python berisi satu kolom, alias tidak terpisah dengan sempurna.

Jika dicari di Google, sedikit sulit karena kebanyakan fokus ke pustaka Pandas. Sebenarnya masalah pada setingan di Windows, khususnya di bagian standarisasi penulisan-penulisan yang melibatkan angka. Postingan ini mencoba memandu untuk merubahan setingan. Pertama-tama coba buka file CSV Anda dengan notepad. Jika tampilannya seperti di bawah ini, dapat dipastikan ketika diekspor ke Python akan berisi satu kolom saja.

Hal tersebut diakibatkan karena ketika Excel menyimpan format tersebut, standar yang digunakan adalah titik koma ” ; ” bukan koma ” , “. Untuk membenahi hal tersebut masuk terlebih dahulu ke Control panel, dan pilih “Change, date, time and number format”. Ganti “List Separator” dari titik koma menjadi koma.

Pastikan kembali setelah file Excel disimpan dan dibuka dengan notepad, titik koma berubah menjadi koma seperti berikut.

Dan ketika coba dijalankan dengan Google Colab, hasilnya ok, alias terekspor ke Python. Perhatikan di bagian bawah yang menyatakan ukuran data berisi jumlah kolom sesuai dengan data CSV-nya. Semoga bermanfaat.

Membuat Grafik dengan Matplotlib Python

Kelanjutan dari postingan terdahulu tentang Jupyter Notebook Online lewat Collaboration, kali ini akan dicoba untuk pembuatan grafik lewat pustakan andalan Python dalam pembuatan grafik, yaitu Matplotlib. Buka kembali Collaboration, buat notebook baru untuk mengisi instruksi berikut ini lewat File – New Notebook.

  • import numpy as np
  • x=np.array([[1,2,3],[4,5,6]])
  • y=x*2
  • import matplotlib.pyplot as plt
  • plt.scatter(x[0,:],x[1,:])
  • plt.show()

Tiga baris pertama masih membahas matriks pada postingan yang lalu. Fasilitas Array diimpor lewat pustaka NumPy. Perhatikan teknik pembuatan Matriks tersebut. Instruksi keempat mulai memanggil pustaka Matplotlib, khususnya payplot. Nah, pemilihan absis dan ordinat menggunakan teknik manipulasi matriks pada python. Perlu diingat, notas elemen matriks Python berbeda dengan Matlab. Jika matlab dimulai dari satu, pada Python dimulai dari nol. Jadi pada python x[0,:] artinya matriks “x” baris ke nol seluruh kolom, setara dengan Matlab ‘x(1,:)’ baris satu seluruh kolom. Jalankan dengan menekan tombol “Run” di kiri instruksi.

Fungsi plt.scatter bermaksud memanggil pustaka matplotlib, khususnya jenis plot “scatter”. Parameter yang dibutuhkan adalah sumbu absis dan ordinat. Fungsi “plt.show()” akan menampilkan grafik scatter. Jika ingin informasi lebih jauh, bisa mengetik “help(plt)”.

Selamat mencoba, semoga bermanfaat.

 

Jupyter Notebook Python Online via Collaboratory

Matlab saat ini masih digunakan oleh peneliti-peneliti sebagai alat bantu komputasi. Karena karakternya yang berbayar maka permasalahan lisensi menjadi masalah utama peneliti-peneliti Indonesia yang beranggaran terbatas. Walaupun Matlab sudah menyediakan versi online yang gratis, tetapi untuk fasilitas tertentu harus berlangganan. lihat postingan yg lalu tentang Matlab Android. Sementara itu, Google sangat gencar melakukan riset tentang metode-metode machine learning, misalnya TensorFlow yang terkenal, menggunakan bahasa Python.

Salah satu paket yang menurut saya cukup baik mengelola komputasi adalan Jupyter Notebook yang sudah terinstal lewat paket Anaconda. Bentuknya mirip Matlab yang sudah terintegrasi, hanya saja beberapa sintaks perlu deklarasi “import”. Belum selesai menggunakan Jupyter Notebook, kini versi online sudah tersedia dengan proses yang dilakukan oleh GPU milik Google. Sehingga ketika kita membuka browser lewat HP dan terhubung ke situs Jupyeter Notebook Collaboratory maka ketika memproses, seolah-oleh kita menggunakan super computer pinjaman Google. Bahkan mirip Word, Excell versi Google Drive, kita bisa mengerjakan coding bersama-sama secara online.

Sebagai ilustrasi, di bawah ini saya menggunakan Collaboratory ketika memanipulasi matriks 2×3 lewat fasilitas pengelola matriks terkenal Python bernama “NumPy”.

Kode di atas hanya mengilustrasikan Jupyter Notebook versi online yang dikenal dengan nama “Collaboratory” ketika mengkalkulasi matriks. Praktis karena bisa dilakukan di smartphone tanpa perlu instal Jupyter Notebook dan yang terpenting proses komputasi dilakukan di GPU Google. Untuk pengguna Matlab, sebagai perbandingan lihat instruksi Matlab di bawah ini. Silahkan pilih mana yang menurut Anda baik, kalau saya sih kedua-duanya. Selamat berkoding.

Instal Python 2.7.x untuk NLTK Pada Windows 10

Python versi 2 ternyata masih powerful untuk menangani pekerjaan semantik analisis dengan fasilitas tambahannya yang terkenal yaitu natural language toolkits (NLTK). Postingan ini sedikit mengulang bagaimana menginstal versi 2 tersebut. Untuk yang ingin menginstal versi 3 64 bit yang biasanya digunakan untuk menangani Keras dan TensorFlow silahkan lihat postingan terdahulu.

Situs Resmi Download Python 2.7.3

Python versi ini ternyata tidak bisa menjalankan PIP untuk instal NLTK, silahkan menuju bagian bawah postingan ini (install python 2.7.14). Ada baiknya mengunduh sendiri source python dan dari situs resminya agar terhindar dari masuknya virus atau malware. Silahkan akses ke situs berikut. Cari versi yang diinginkan lalu tekan Download.

Ada banyak pilihan, tetapi untuk NLTK yang dipilih ada versi 32 bit, bukan yang 64 bit. Setelah file “msi” diunduh, jalankan installer tersebut.

Tunggu beberapa saat hingga selesai, ditandai dengan menekan Finish. Yang terpenting kita harus mengetahui lokasi instalasi Python tersebut untuk dilanjutkan ke seting environment.

Seting Environment Python.

Tidak serta merta ketika python diinstal langsung bisa dimanfaatkan. Terlebih dahulu perlu dilakukan beberapa seting, salah satunya adalah seting environment. Untuk masuk ke seting environment jika dengan windows lebih mudah lewat searching dengan kata kunci “environment”.

Atau jika Windows 7 lewat buka Control Panel->System and Security->System dilanjutkan dengan Advanced system settings, Environment Variables.

 

Pada System Variables pilih Path. Lanjutkan dengan menekan Edit untuk menyisipkan C:\Python27. Namun ketika dijalankan ternyata untuk instalasi natural language toolkits (NLTK) ada masalah.

Masalah Instal NLTK di Python 2.7.3

Masalah ini sudah dibahas di milis stackoverflow. Jika dijalankan instalasi NLTK akan muncul pesan kesalahan berikut ini.

Solusinya termudah adalah mengunduh versi 2.7.14 seperti yang disarankan oleh situs tanya jawab tersebut. Jangan lupa pilih yang versi 32 bit dan install lagi dengan versi itu. Di sini python yang lama di-remove (mungkin bisa juga tanpa diremove).

Pilih saja seluruh instalasi termasuk Path pada python.exe nya. Tunggu beberapa saat hingga selesai. Jalankan: python -m pip install nltk untuk instal NLTK. Beberapa saat kemudian akan diminta upgrade ke pip versi 19.2.1. Ketik saja: python -m pip install –upgrade pip.

Mengunduh NLTK

Terakhir adalah mengunduh NLTK. Caranya adalah dengan masuk ke python dengan mengetik python di console dilanjutkan dengan mengaktifkan nltk lewat: import nltk di console python. Setelah itu proses pengunduhan dijalankan lewat: nltk.download(). Oiya, jangan lupa kurung buka dan kurung tutupnya. Kemudian muncul jendela NLTK berikut.

Silahkan unduh yang dibutuhkan (corpora atau paket). Atau unduh saja semua untuk amannya, tapi lumayan besar (beberapa giga). NOTE: Repotnya python per januari tahun depan (2020) tidak lagi mensuport NLTK. SIap-siap upgrade python-nya ya.

 

 

Menganalisa Akun Twitter – Mendapatkan Keys & Token Twitter API

Twitter menyediakan API untuk mengunduh tweets seseorang. Walaupun yang tepat istilahnya “wrapper” bukan Application Programming Interface (API). Langkah pertama, tentu saja harus punya akun Twitter dulu. Berikut langkah-langkah yang perlu dilakukan.

Mendaftar Sebagai Developer

Pertama-tama masuk ke situs https://developer.twitter.com/ setelah login Twitter di browser, misalnya Mozilla. Atau langsung saja ke sini untuk membuat application baru: https://developer.twitter.com/en/apps. Tekan Create Account untuk membuat app baru.

Tiap saat sepertinya peraturan berubah-ubah. Ketika tulisan ini dibuat harus meng-apply akun sebagai developer.

Kemudian muncul pesan untuk verifikasi via nomor handphone. Tekan Add a valid phone number.

Setelah memasukan nomor ponsel yang sesuai, tunggu sms dari twitter untuk memasukan nomor verifikasi. Setelah meinginput nomor tersebut, maka phone number kita sudah terverifikasi. Tekan Continue. Berikutnya pilih perorangan atau organisasi app yang akan digunakan. Ada pertanyaan yang agak sulit mengenai mengapa membutuhkan API? Serta untuk apa dan metode apa yang digunakan nanti. Nah di sini kita diminta menjawab dengan gaya “mengarang bebas” karena diminta menulis jawaban lebih dari 300 kata. Akhiri dengan menekan Accept setelah membaca (kalau sempat) Term of Service.

Jangan lupa menceklis kotak di bagian bawan TOS. Selanjutnya diminta membuka email dari akun kita. Jika sudah ada pesan masuk dari Twitter, tekan konfirmasi.

Selesai sudah mendaftar sebagai developer yang menggunakan fasilitas Twitter. Pastikan akan masuk ke jendela developer https://developer.twitter.com/en/account/get-started.

Mendapatkan Twitter API Key

Setelah terdaftar sebagai developer berikutnya adalah membuat app. Di bagian dashboard tekan Apps dan jika tidak ada akan muncul tombol Create an App. Cukup banyak yang harus diisi, tetapi ikuti saja sampai selesai, terutama yang required harus diisi. Jika sudah maka terakhir konfirmasi kembali. Di sini beberapa kali ditolak karena nama aplikasi sudah ada yang punya, akhirnya setelah diganti, misalnya “kepo_movie”, baru lah bisa, hehe.

Keys and tokens inilah yang akan digunakan untuk aplikasi meneliti tweets dari sebuah akun twitter. Langkah selanjutnya adalah memilih aplikasi untuk analisa tweeter, misalnya Tweepy yang terkenal bagi programmer Python. Selamat mencoba, semoga peraturan Twitter masih seperti ketika tulisan ini dibuat.

Stopword Berbahasa Indonesia – via Sastrawi

Jika Natural Language Toolkit (NLTK) sudah diinstal, di dalamnya terdapat pula corpus yang berisi sampel data maupun kamus khusus, salah satunya adalah stopwords. Jalankan kode berikut ini dengan Python. Buka IDLE dan masukan instuksi berikut, simpan dan RUN.

import nltk
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
stop_words=set(stopwords.words(“english”))
print(stop_words)

Seperti biasa kode program mengimpor NLTK. Selain itu pada corpus diimpor juga stopwords. Berikutnya mengimpor word_tokenize dari tokenize pada NLTK. Kode terakhir adalah menampilkan stop words dalam bahasa Inggris. Sayangnya ketika mengganti “english” dengan “indonesia”, tidak ditemukan stop words dalam bahasa Indonesia. Kalau begitu kita coba dengan bahasa Inggris. Berikut hasil runningnya:

Kata-kata tersebut adalah stopword, yaitu kata yang tidak menjadi fokus search engine karena terlalu sering muncul seperti saya, kamu, dia, tatkala, dan lain-lain. Hanya saja dari corpus (berkas) NLTK untuk bahasa Inggris saja hasil donlot via nltk.download() (lihat post terdahulu).

Sastrawi Sebagai Corpus Berbahasa Indonesia

Corpus sastrawi dapat dilihat pada link resminya berikut ini. Jalankan pip install Sastrawi pada command prompt. Tunggu beberapa saat karena mengunduh file-file pendukung yang cukup besar.

Untuk mengujinya, jalankan kode berikut ini via IDLE python.

from Sastrawi.StopWordRemover.StopWordRemoverFactory import StopWordRemoverFactory
stop_factory = StopWordRemoverFactory()
more_stopword = [‘dengan’, ‘ia’,’bahwa’,’oleh’]
data = stop_factory.get_stop_words()+more_stopword
stopword = stop_factory.create_stop_word_remover()
print(data)

Perhatikan “more_stopword” bisa digunakan untuk menambah stopword baru jika dirasa Sastrawi kurang stopword-nya dan perlu ditambah misalnya “dengan”, “ia”, “bahwa”, “oleh”, atau lainnya.

Perhatikan dalam bahasa Indonesia, stopword selain kata ganti adalah penunjuk, sapaan, dan sebagainya. Sekian, semoga bermanfaat.

Install Natural Language Toolkit (NLTK) Python

Salah satu keunggulan Python adalah menyediakan toolkit gratis. Salah satunya adalah Natural Language Toolkit yang disingkat NLTK. Selain di versi Linux, NLTK juga disertakan di versi Windows yang ketika tulisan ini dibuat ada pesan untuk menggunakan Python versi 32 bit, terpaksa install ulang karena pada postingan yang lalu menggunakan versi 64 bit. Salah satu yang tidak saya suka dari Python adalah simbolnya ular, menyeramkan, he he.

Instal Python 32 Bit

Jika menggunakan sistem operasi Windows silahkan kunjungi situs resmi ini, pilih “Download Windows x86 executable installer” yang berupa installer agar lebih enak. Setelah diunduh (sekitar 20-an Mb) jalankan hingga proses instalasi selesai, cukup mudah.

Instal NLTK

Jika Python sudah terinstal masuk ke command prompt. Searching saja di Windows 10 ketik cmd dan pilih jendela hitam command prompt. Ketik pip install nltk pada command prompt. Oiya, sebelumnya untuk menguji apakah Python sudah terinstal atau belum ketik: python –version. Pastikan muncul versi Python anda di bawahnya.

Tunggu beberapa saat hingga muncul pesan “Successfully installed nltk-3.4.1 six-1.12.0. Tetapi ada pesan lain pip versi 18.1 sebaiknya diupgrade menjadi versi 19.0.3.

Upagrade PIP NLTK

Untuk mengupgrade PIP ternyata mudah, ketik instruksi: python –m pip install – upgrade pip.

Tunggu beberapa saat hingga muncul pesan “Successfully installed pip-19.0.3. Apakah sudah selesai? Ternyata belum.

Download Paket Lengkap

Tentu saja harus mendownload paket lengkapnya. Untungnya bisa dengan lewat command prompt di atas. Ketik: python untuk masuk ke lembar kerja Python yang dicirikan simbool >>>. Selanjutnya ketik: import nltk. Fungsinya adalah mengimport NLTK yang sudah diinstal, untuk digunakan. Dengan memanggil jika akan digunakan saja bisa menghemat RAM dan tidak memberatkan komputer dibanding ketika Python dijalankan, semua fasilitas hidup. Lanjutkan dengan mengetik: nltk.download(). Perhatikan, jendela NLTK Downloader langsung muncul.

Jika ingin mengunduh lengkap silahkan tekan all packages yang besarnya hampir 2 Gb, jadi kalau miskin pulsa, sebaiknya cari Wifi cepat dan gratis, hehe. Progres mengunduh dapat dilihat di pojok kanan bawah jendela NLTK Downloader.

Hmm .. lama juga. Sabar ya, tunggu hingga selesai, jangan menduga-duga kalau komputernya “ngerjain” apalagi curang. Silahkan baca tatacara-nya di link resmi NLTK ini. Terkadang saat menginstall satu komponen hang atau gagal. Lebih baik instal ulang manual saja dengan mengklik ganda item tersebut, misalnya “twitter samples”. Selamat menginstal.

Menguji Hasil Instalasi NLTK

Saatnya menguji dengan salah satu fasilitas yaitu word_tokenize. Fungsi ini berguna untuk memecah satu kalimat menjadi beberapa token. Token di sini mirip dengan kata. Ketik: from nltk.tokenize import word_tokenize yang bermaksud memanggil fungsi tersebut dari NLTK. Buat satu contoh kalimat yang akan ditoken, cek apakah berhasil atau tidak. Jika berhasil berarti NLTK siap digunakan. Selamat menginstal.

 

 

Instal Python di Windows

Saya mengenal nama bahasa pemrograman Python pertama kali pada tahun 2003. Rekan saya selain mengajar ternyata bekerja di perusahaan pengembang perangkat lunak. Bahasa yang digunakan di perusahaannya adalah Python. Dengan gayanya yang unik ciri khas programmer dia mengatakan bahwa bahasa pemrograman tersebut sangat “powerful”. Terus terang saya tidak terlalu tertarik karena waktu itu Visual Basic, PHP, dan Delphi merupakan pilihan utama bahasa pemrograman para mahasiswa yang sedang menyelesaikan tugas akhirnya. Ternyata bagi para data scientist Python merupakan pilihan utama (selain bahasa R). Matlab sendiri tidak direkomendasikan karena berbayar.

Untuk optimalnya, Python diinstal di Linux karena full gratis. Jika diinstal di Windows tentu saja membutuhkan lisensi Windows. Tetapi bagi pengguna yang masih belum familiar dengan Linux (misalnya Ubuntu), dengan menginstal di Windows maka Python bisa langsung dipelajari. Situs untuk mengunduh software Python sudah tersedia (www.python.org). Saat tulisan ini dibuat tersedia versi 3.7.2. Pilih sesuai Platform OS Windows, misalnya 64 bit.

Saya lebih suka web-based installer karena tidak memenuhi ruang harddisk untuk master softwarenya. Jika ingin diinstal juga di komputer lain, pilih saja yang executable installer karena tidak perlu mengunduh dua kali.

Seperti biasa Windows butuh kepastian mengenai aplikasi yang akan diinstal. Ketik saja Run untuk memulai proses mengunduh sekalian menginstal. Saya lebih memilih menambahkan PATH Python agar bisa dijalankan di semua folder kerja dengan cara memberi checklist di pilihan tersebut.

Kita tinggal menunggu Setup Progres hingga selesai. Sebagai informasi, Python diciptakan oleh orang Belanda Guido Von Rossum yang sempat bekerja di Google. Maka tidak heran jika bahasa ini diterapkan di Google, Youtube, Yahoo, dan NASA.

Jangan khawatir, Python memiliki alat bantu yang bernama The IDLE Python Development Environment yang sering kita kenal pada bahasa pemrograman lainnya yaitu IDE.

Ada baiknya men-disable panjang path agar Python tidak bermasalah nantinya jika Path-nya di atas 260 karakter. Jalankan Python yang baru saja diinstal.

Seperti biasa tes program dengan “hello word” untuk memastikan bahasa pemrograman tersebut berjalan dengan normal.

Ternyata mirip dengan Shell pada Matlab dan sepertinya mudah juga, dan yang penting tidak berbayar. Silahkan mencoba.