Daftar Isi
Pendahuluan
Tulisan ini dibuat untuk teman-teman yang suka dan berminat untuk mendalami pengolahan data dengan python. Python memang menarik perhatian saya yang sudah terbiasa dengan Excel dan R karena memang sedang trend dan kegunaanya saat itu sedang ramai dibicarakan dan ‘ternyata’ sangat fleksibel digunakan.
Saya akan memulai dan menyicil artikel ini dari hal-hal yang paling dasar sampai dianggap sulit. Tujuanya selain untuk berbagi ilmu dengan teman-teman tetapi juga sebagai media catat bagi saya yang mendalami python dengan otodidak.
Hello World dan Operasi Matematika
Mari kita mulai dari kebiasaan lama para dosen kita dalam memulai kelas pemograman, yaitu mencetak hello world. Tidak seperti bahasa Java atau C yang cenderung panjang, pada Python lebih simpel dan sederahana — mirip seperti bahasa dalam R
print('helloworld')
maka hasilnya akan seperti ini
helloworld
Tentunya itu sangat mudah, bukan? Selanjutnya kita masuk pada bagian yang juga mudah yaitu operasi matematika, seperti pembagian (/), pertambahan (*), perjumlahan (+), pengurangan (-), pangkat (**), dan modulo (%). Terutama untuk bagian terakhir diterjemahkan sebagai sisa pembagian, contohnya seperti pada tabel bawah module 18%7 apabila kita run hasilnya adalah 4. Nilai tersebut muncul dari barikut 18 apabila dibagi nilai 7 hanya bisa dengan nilai 14, sisa dari nilai 18 adalah 4. Jadi nilai 4 yang diambil.
>>> print(5/8) #pembagian 0.625 >>> print(5*9) #pertambahan 45 >>> print(2+3) #penjumlahan 5 >>> print(9-2) #pengurangan 7 >>> print(18/7) #modulo -- sisa dari pembagian 2.5714285714285716 >>> print(3**2) #pangkat 9 >>> print(10//3) #pembulatan dari hasil pembagian 3 >>> >>> print(9*2+5**2) 43
Variabel
Assign Variable
Assign variabel adalah proses untuk menempatkan nilai pada sebuah variabel agar nilai tersebut lebih mudah untuk dapat dipanggil kembali pada proses analisis lebih lanjut. Assign variabel biasanya menggunakan tanda ‘=’ untuk menyatakan nilai tersebut.
#assign variable angka=100 #assign variable 'angka' dengan nilai '100' print(angka)
maka hasilnya akan seperti ini
100
Jenis Variabel
Dalam python, jenis variabel dasar sama seperti bahasa pemograman lainnya seperti bilangan bular berupa integer; pecahan berupa float; karakter huruf berupa string; dan biner berupa boolan. Dalam statistik biasanya integer berupa skala pengukuran nominal dan ordinal, sedangkan float bisa berupa skala pengukuran kontinyu (interval atau rasio)
berat=100 #integer -- bilangan bulat tinggi=174.5 #float -- bilangan pecahan status='belum menikah' #string - karakter overweight=True #boolean print(berat) print(tinggi) print(status)
maka hasilnya akan seperi ini
100 174.5 belum menikah
Menghitung Variabel
Kali ini kita akan menghitung beberapa variabel. Sebenarnya akan tetap bisa untuk menghitung operasi matematika seperti ini
berat_kali_tinggi=100*174.5 print(berat_kali_tinggi)
maka hasilnya seperti ini
17450.0
Tetapi, tentunya apabila kita akan menggunakan nilai-nilai tersebut berkali-kali akan merepotkan kita, terutama semakin besarnya kemungkinan salah ketik. Jadi operasi di atas bisa saja apabila kita menulis seperti dibawah ini
berat=100 #integer -- bilangan bulat tinggi=174.5 #float -- bilangan pecahan berat_kali_tinggi2=berat*tinggi print(berat_kali_tinggi2)
Cek Tipe Variabel
Tidak seperti bahasa pemograman java yang harus menentukan tipe variabel ketika kita mendeklarasikan sebuah variabel, python sangat pengertian untuk dapat menerjemahkan sendiri, seperti angka 10 pasti integer, 10.00 adalah float, sepuluh adalah string, False adalah boolean. Tapi kita bisa juga mengecek tipe apa sih nilai dari variabel tersebut, dengan syntax dibawah ini.
>>> print(type(berat)) <class 'int'> >>> print(type(tinggi)) <class 'float'> >>> print(type(status)) <class 'str'> >>> print(type(overweight)) <class 'bool'>
Casting Type Data
Ya. dalam beberapa kasus kita dituntut untuk menggunakan tipe data tertentu, itu memungkinkan. Lalu bagaimana kita bisa merubah tipe data itu? apalagi python menerjemahkan itu sendiri, misal kita ingin nilai 10 sebagai float walaupun angka dibelakang koma itu 00. Kita bisa melakukan dengan cara seperti ini, dengan contoh merubah variabel berat yang integer pada bentuk lain seperti float, string, dan boolean.
berat_float=float(berat) berat_string=str(berat) berat_boolean=bool(berat) #false jika nilai berat=0, lainnya 1
Operasi Komparasi dan Logika
Pada bagian ini akan menyinggung operasi lebih besar (>), lebih kecil (<), lebih besar sama dengan (>=), lebih kecil sama dengan (<=), sama dengan (=), dan tidak sama dengan (!=). Sebelum menggunakan fungsi ini dengan kegunaan yang lebih kompleks, mari kita lihat perbedaanya pada hasil dibawah ini.
>>> andi=175 >>> meyla=160 >>> randi=184 >>> >>> print(randi>meyla) #hasilnya True True >>> print(randi<=meyla) #hasilnya False False >>> print(meyla<andi<randi) #Hasilnya True True >>> print(randi>=184) #hasilnya True True >>> print(randi!=190) #hasilnya True, dibaca randi tidak sama dengan 190 True
Selain itu ada juga operasi ‘is’ dan ‘is not’. Ini sedikit tricky antara operasi ‘sama dengan’ dengan ‘is’ ataupun ‘tidak sama dengan’ dengan ‘is not’ karena secara harfiah sangat mirip dan mungkin menghasilkan nilai yang sama. Tapi secara singkat, perbedaan mencolok dari kedua itu adalah penggunaan ‘is’ dan ‘is not’ lebih baik digunakan pada variabel yang telah di- assignment.
>>> meyla=160 >>> randi=184 >>> >>> persamaan=andi is meyla #hasilnya False >>> perbedaan=andi is not meyla #Hasilnya True >>> >>> print(persamaan) False >>> print(perbedaan) True
List
Kita baru saja tahu bagaimana menempatkan sebuah value pada variable. Kenyataanya dalam data sains ataupun statistika, sebuah variabel hampir dipastikan terdiri dari banyak buah data. Seperti contohnya, tinggi badan dari pemain Persib yang tentunya tidak terdiri dari hanya satu orang saja. Oleh karenanya ada fungsi List untuk assign variabel dari lebih dari satu titik. Untuk mempermudah kita mengerti hal ini, mari kita lihat syntax berikut
# tinggi badan (dalam centimeter) atep = 173 tantan = 175 eka = 165 sergio = 180 henhen = 170 #Membuat list tinggi=[atep,tantan,eka,sergio,henhen] # Print tinggi print(tinggi)
maka hasilnya akan seperti ini
[173, 175, 165, 180, 170]
Tapi itu kurang informatif, makanya saya ingin menambahkan string dan float dalam satu list dimana secara berurutan nama dan tinggi berat badanya.
#membuat nama bersamaan dengan hasil tinggi2 = ["Atep", atep,"Tantan", tantan, "Eka", eka,"Sergio", sergio, "Henhen", henhen] # Print tinggi2 print(tinggi2)
maka hasilnya akan seperti ini
['Atep', 173, 'Tantan', 175, 'Eka', 165, 'Sergio', 180, 'Henhen', 170]
Tapi untuk mempermudah, kita bisa menemparkan dua data itu dalam dua buah kolom, dimana satu kolom adalah pemain dan lainnya adalah tinggi badan. Makanya kita bisa membuat list dalam list seperti pada contoh dibawah ini.
# tinggi sebagai as list of lists persib = [["Atep", atep], ["Tantan", tantan], ["Eka", eka], ["Sergio", sergio], ["Henhen", henhen]] # Print out persib print(persib)
maka hasilnya akan seperti ini
[['Atep', 173], ['Tantan', 175], ['Eka', 165], ['Sergio', 180], ['Henhen', 170]]
Index dalam List
Dalam Python urutan dalam list bisa dikatakan sedikit berbeda dan agak tricky — urutan dari depan dimulai dengan angka 0, sedangkan dari belang dengan angka 1. Sebagai contoh kita lihat kembali data Pemarin Persib ini.
['Atep', 173, 'Tantan', 175, 'Eka', 165, 'Sergio', 180, 'Henhen', 170]
List diatas terdiri dari 10 buah string dan float. maka kalau kita menerjemahkan urutanya dari depan akan terdapat index seperti ini
[0,1,2,3,4,5,6,7,8,9]
Sedangkan kalau dari belakang akan terdapat index seperti ini.
[-10,-9-8,-7,-6,-5,-4,-3,-2,-1]
Sebagai contoh, apabila kita ingin mengidentifikasi nilai atep dan tingginya dengan nilai [‘Atep’,173] maka kita dapat mengidentifikasi dengan dua buah cara yaitu
[0,1]
atau
[-10.-9]
Contoh lainnya, apabila kita ingin melihat Eka dan nilainya [‘Eka’,165], maka
[4,5]
atau
[-6,-5]
Kita juga dapat melakukan ini dalam sebuah rentang melalui tanda titik dua (:). Misal kita ingin mengidentifikasi rentang sebuah list melalui nilai index tertentu dapat dilihat melalui sebuah persamaan ini [index awal:index akhir]. Tapi hal rentang ini adalah index akhir tidak dapat disertakan.
Contohnya, apabila kita ingin melihat sebuah list nilai Eka dan Sergio, maka rentang index yang dapat diambil adalah [4:8].
Contoh lainnnya, apabila kita ingin melihat nilai Sergio dan Henhen, maka rentang index yang diambil adalah [-4:]. Nilai kosong diakhir menunjukan rentang diambil sampai index terakhir, begitu pula nilai kosong diawal yang dimaknaik sebagai diambilnya index dari 0.
Memotong List
Dari ilustrasi diatas, selanjutnya mari kita masuk pada topik slicing dimana kita hendak untuk memotong sebagian satu buah variabel. Mari kita buat kembali variabel ‘persib’ dengan detail dibawah ini dengan menambahkan satu buah data dari tinggi badan Klok.
# Create the persib list atep = 173 tantan = 175 eka = 165 sergio = 180 henhen = 170 klok=190 persib = ["Atep", atep,"Tantan", tantan, "Eka", eka,"Sergio", sergio, "Henhen", henhen,"Klok",klok]
Mari kita coba untuk mengambil sebagian dari himpunan dari contoh syntax dan hasilnya dibawah ini.
>>> print(persib[1]) 173 >>> print(persib[-1]) 190 >>> print(persib[-2]) Klok >>> print(persib[5]) 165
Sekarang kita coba bermain dengan slicing dengan kegunaan yang lebih kompleks.
>>> # Membuat daftar tinggi pemain naturalisasi >>> persib_naturalisasi=['Tinggi Badan Sergio Van Dijk= ', persib[7], 'dan Tinggi Badan Mark Anthony Klok =' ,persib[-1]] >>> print(persib_naturalisasi) ['Tinggi Badan Sergio Van Dijk= ', 180, 'dan Tinggi Badan Mark Anthony Klok =', 190] >>> #Menghitung Rata Rata pemain naturalisasi >>> mean_naturalisasi=((persib[-5]+persib[-1])/2) >>> print(mean_naturalisasi) 185.0 >>> # Membuat daftar pemain lokal Persib >>> persib_lokal=persib[:6] >>> # Membuat Daftar pemain naturalisasi Persib >>> persib_naturalisasi2=(persib[6:8],persib[-2:]) >>> # Print out pemain Lokal dan Naturalisasi >>> print(persib_lokal) ['Atep', 173, 'Tantan', 175, 'Eka', 165] >>> print(persib_naturalisasi2) (['Sergio', 180], ['Klok', 190])
Menambah List
Pada bagian ini kita akan melakukan penambahan dalam sebuah list. Sangat sederhana kita bisa menambahkan melalui syntax berikut.
Persib=persib+["Ezra Walian",+185]
Maka hasilnya akan seperti ini
['Atep', 173, 'Tantan', 175, 'Eka', 165, 'Sergio', 180, 'Henhen', 170, 'Klok', 190, 'Ezra Walian', 185]
Leave a Reply