100% menganggap dokumen ini bermanfaat (1 suara)
186 tayangan

Draft - Manajemen Data Dengan Python

Manajemen Data dengan Python memberikan panduan singkat tentang manajemen data menggunakan bahasa pemrograman Python. Bab pertama membahas pengertian manajemen data, penggunaan Python untuk manajemen data, dan cara instalasi Python di berbagai sistem operasi. Bab kedua menjelaskan tentang variabel dan tipe data dasar dalam Python seperti integer, float, dan string beserta contoh kode.

Diunggah oleh

azka nabila
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
186 tayangan

Draft - Manajemen Data Dengan Python

Manajemen Data dengan Python memberikan panduan singkat tentang manajemen data menggunakan bahasa pemrograman Python. Bab pertama membahas pengertian manajemen data, penggunaan Python untuk manajemen data, dan cara instalasi Python di berbagai sistem operasi. Bab kedua menjelaskan tentang variabel dan tipe data dasar dalam Python seperti integer, float, dan string beserta contoh kode.

Diunggah oleh

azka nabila
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 46

Manajemen Data dengan Python

Oleh : Akhmad Sofwan

Jakarta, Desember 2021


Bab I
Pendahuluan

I.1 Pengertian Manajemen Data


Menurut situs ngdata.com, Manajemen Data adalah proses administratif yang mencakup
perolehan, validasi, penyimpanan, perlindungan dan pemrosesan data untuk menjamin aksesibilitas,
reliabilitas dan ketepatan waktu data untuk para penggunanya.
Dalam kesempatan ini, kita akan membahas praktek Manajemen data elektronik dengan
menggunakan Python, sebuah bahasa pemrograman yang populer penggunaannya dalam bidanag
Data Science.

I.2 Penggunaan Python pada Manajemen Data


Selain dipergunakan sebagai pembuat aplikasi, Python juga dapat dipergunakan untuk keperluan
lain, seperti pemrosesan image, statistik dan manajemen data. Kita akan menggunakan python
dengan bantuan sebuah Text Editor atau Integrated Development Environment (IDE) Notepad++
atau Spyder. Text Editor adalah alat bantu dalam menuliskan script Python yang memiliki sejumlah
fitur agar mempermudah penulisan script, seperti Auto Completion, Text Highlighting dan Compile.
Sedangkan IDE adalah Text Editor yang memiliki lebih banyak fitur, seperti jendela run aplikasi
SVN atau tools untuk kolaborasi, Terminal dan Unit Test. Dapat dikatakan, Text Editor adalah
Bagian dari IDE.
Notepad++ adalah Text Editor yang dapat diperoleh secara bebas atau gratis di situsnya
www.notepad-plus-plus.org, yang tersedia untuk platform Windows. Spyder adalah IDE yang dapat
diperoleh secara bebas atau gratis di situsnya, www.spyder-ide.org, tersedia untuk platform
Windows, Linux dan MacOS. Spyder dapat didownload dengan menggunakan Distribusi Anaconda,
yaitu platform Data Science untuk Python atau R. Selain kedua Text Editor atau IDE tersebut,
terdapat beberapa Text Editor lain yang dapat dipergunakan seperti Pycharm dan Pydev.
Sebelum kita melakukan instalasi Editor, sebaiknya kita mengenal dan menginstall dahulu
Python di komputer kita.

I.3 Mengenal Python


Python adalah sebuah bahasa pemrograman yang berjalan pada platform Microsoft Office,
Linux dan MacOS. Saat ini, Python memiliki 2 versi utama, yaitu versi 2.x dan 3.x. Saat tulisan ini
dibuat, Python versi stabil terbaru adalah Python 3.8.0. Anda dapat mendownload Python di situs
https://www.python.org/downloads/.
Python dijalankan dengan cara di interpret, bukan dengan mengcompile source code menjadi file
executable file. Python populer pada bidang statistik, Data Mining dan Machine Learning, karena
memiliki banak library yang mendukung bidang-bidang tersebut.

I.4 Instalasi Python


Instalasi Python di sini, maksudnya adalah instalah interpreter Python. Python adalah bahasa
interpreter. Interpreter Python berguna untuk menerjemahkan Script atau kode Python yang kita
tuliskan sehingga menghasilkan output sesuai kode yang ditulis.
a. Instalasi Python di Windows
Terdapat langkah-langkah yang diperlukan, yaitu :
1. Download python di www.python.org/downloads/windows
Saat tulisan ini dibuat, Python versi terbaru yang tersedia adalah Python 3.8.0. Python 3.8.0
tersedia untuk Sistem Operasi 32 dan 64 bit.
Terdapat beberapa tipe file yang tersedia, seperti : Windows x86-64 embeddable zip file,
Windows x86-64 executable installer dan Windows x86-64 web-based installer.

2. Jalankan file installer.


Jika anda memilih file Windows x86-64 executable installer untuk Sistem Operasi 64 bit, maka
setelah mendownloadnya, kita dapat langsung menjalankannya. Laksanakan proses installer
dan tunggu hingga selesai.
Anda juga dapat menginstall Python melalui Anaconda, yang anda dapat peroleh di situs :
https://www.anaconda.com/distribution/#download-section
Anaconda adalah sebuah distribusi yang membundle Python, IDE dan library-library yang
dibutuhkan dalam bidang pengolahan data dan Machine Learning.

b. Instalasi Python di Linux


Banyak distribusi Linux yang sudah menyediakan Python di dalamnya, sehingga kita langsung
dapat menggunakannya, namun jika anda ingin menggunakan Python versi yang berbeda, seperti di
distribusi Linux kita disediakan Python 2.7, bukan Python 3.x, maka kita dapat melakukan instalasi
Python 3.x tersebut, dengan cara sebagai berikut :
1. Update repository, dengan cara menuliskan perintah:
$ sudo apt-get update
2.Install python 3.x(Misal, python 3.6 melalui apt-get)
$ sudo apt-get install python3.6
c. Bekerja dengan python
Script python dapat dijalankan dengan 3 cara, yakni :
1. Menjalankan python shell.
Pada Ms.Windows, buka Command prompt dan tuliskan pada C:/, python.
Pada Linux, tulis python atau python3 pada konsole. Maka akan muncul shell Python, yang
pada komputer penulis dengan Sistem Operasi Linux yang menggunakan Python 3.6.8, akan
muncul shell seperti berikut :

Gambar I.1 : Shell Python


Script Python dapat ditulis pada shell tersebut.
2. Dengan menjalankan file python dengan perintah : python nama_file_python di C Prompt atau
Konsole. Nama file Python yang anda buat, harus memiliki ekstensi .py.
Misal, anda akan menuliskan tampilan “Selamat Siang, Budi” dengan menggunakan Python,
maka script Python yang anda tulis di sebuah Text Editor adalah sebagai berikut :
print (“Selamat Siang, Budi”)
Misalkan, file yang anda buat yang berisi script tersebut bernama test_1.py, maka untuk
menjalankan file tersebut, anda ketikkan perintah : python test_1.py, maka akan segera keluar
output dari script tersebut, seperti pada gambar dibawah ini :

Gambar I.2 : Menjalankan file Python

Walaupun penjalanan script tersebut di atas Sistem Operasi Linux, maka perintah dan output di
Windows, sama saja dengan di Linux.
3. Menjalankan perintah Python di Integrated Development Environment (IDE).
IDE adalah sebuah lingkungan untuk menulis, mendebug dan menjalankan sebuah bahasa
pemrograman yang terdiri dari Text Editor, Code compilers, debugger, platform test, dll. IDE
lebih banyak fiturnya dibanding Text Editor. Salah satu fiturnya, dapat menjalankan aplikasi di
dalam IDE tersebut. Sebuah Text Editor sederhana, seperti Geany, dapat digunakan untuk
membuat sebuah aplikasi , namun IDE lebih memudahkan pengembangan aplikasi, karena
memiliki sejumlah fitur yang dapat digunakan untuk pengembangan aplikasi, yang tidak
ada pada Text Editor. Jadi, IDE lebih luas daripada Text Editor. Salah satu IDE pada
Python, adalah Spyder (https://www.spyder-ide.org/).

Gambar I.3 : Tampilan IDE Spyder


Kita dapat menggunakan Spyder untuk menjalankan file Python. Spyder memiliki beberapa
layar, seperti berikut :
a. Editor. Berfungsi untuk menulis source code.
b. Ipyhton console. Berfungsi untuk menampilkan hasil source code yang dijalankan.
c. Variable Explorer. Berfungsi untuk menampilkan variable dan nilainya
Dan juga beberapa layar yang lain.
Anda juga dapat menggunakan Jupyter-Notebook dan script di modul ini dijalankan dengan
menggunakan Jupyter-Notebook. Jupyter-Notebook adalah editor teks berbasis web. Anda dapat
menginstall Jupyter Notebook ini dengan menginstall Anaconda. (https://docs.continuum.io/).
Terdapat 3 jenis Anaconda yang tersedia [1] , yaitu : Anaconda Individual Edition, Anaconda
Embedded, Anaconda Commercial Edition, Anaconda team Edition, Anaconda Enterprise 4, dan
Anaconda Enterprise 5. Untuk Anaconda yang dapat dipergunakan secara bebas atau gratis dan
masih sesuai untuk dipergunakan pada modul ini, anda dapat memilih menginstall Anaconda
Individual Edition
Gambar I.4 : Tampilan Jupyter-Notebook

Script pada modul ini hurufnya berwarna biru dan output nya berwarna hitam. Jika script berupa
script lengkap yang dituliskan dari awal termasuk load librarynya, maka akan diberi nomor urut
script dan diberi kotak. Jika berupa script lanjutan atau ada hubungannya dari script sebelumnya,
tidak dituliskan nomor urut, namun script lanjutan juga mengeluarkan output yang benar.
Bab II
Variabel dan Tipe Data dalam Python

File Python memiliki ekstensi .py, contoh : test_1.py dan test_2.py. Dalam membantu pembuatan
program, variabel sering dipergunakan. Untuk selanjutnya, setiap kode Python akan ditampilkan
dengan font berwarna biru tua dan outputnya merupakan screenshot dari layar komputer.

II.1 Variabel
Variabel seperti halnya pada matematika, adalah karakter yang memiliki nilai yang nilai tersebut
dapat dirubah. Variabel terdapat di semua bahasa pemrograman, termasuk Python. Sejumlah bahasa
pemrograman menyatakan secara eksplisit tipe data dari variabelnya dan beberapa yang lainnya
tidak, termasuk Python. Di dalam Python, selain sebuah variabel tidak didefinisikan secara eksplisit,
nilainya dapat diubah dengan memberi nilai yang berbeda, baik dengan tipe data yang sama
maupun tipe data berbeda.
Contoh :
x=5
x adalah variabel dengan nilai 5 dan tipe data integer. x dapat diubah nilainya dengan memberi nilai
baru pada baris program selanjutnya.
Contoh 1 :
1. x=5
2. print (x)

Output :
5

Contoh 2 :
1. x=”Lapangan”
2. print(x)

Output :
Lapangan
Saat ini x adalah variabel dengan tipe data string yang bernilai : Lapangan
Variabel memiliki tipe data, yaitu : numeric, string dan boolean. Tipe data numerik sendiri dapat
berupa : Integer atau float [1].

II.1.a Integer dan float


Integer termasuk ke dalam tipe data numeric. Integer tidak memiliki batas, tergantung dari memori
komputer yang kita punya [1]. Float adalah tipe data numerik yang dipergunakan untuk menyimpan
data angka bilangan desimal atau pecahan.
Contoh 1 :
1. x = 80
2. print(x)
Output :
80

Contoh 2 :
1. x = 90000000000
2. print(x)
Output :
90000000000

Untuk mengetahui tipe data, kita dapat menggunakan perintah type(nama_variabel).


Contoh :
1. z=20
2. print(z)
3. print(type(z))
Output :
20
<class ‘int’>
II.1.b Boolean
Boolean atau Bool adalah tipe data yang memiliki hanya 2 opsi nilai, yakni True atau False.
Contoh :
1 y=True
2 print (y)
3 print (type(y))

Output :
True
<class 'bool’>

II.1.c String
String adalah tipe data yang memuat text atau karakter.
Contoh :
1. x=”Sekolah”
2. print(x)
3. print(type(x))

Output :
Sekolah
<class ‘str’>
Bab III
Input, proses dan Output

III.1 Input dan Output


Input berguna untuk memasukkan data ke dalam sebuah program. Syntax untuk menginput data di
dalam Python adlaah : input . Untuk memberikan Output, digunakan perintah : print.
Contoh 1 :
Sebuah program yang menerima input dari keyboard sebuah nama dan propinsi domisilinya.

1. nama=input(“Nama :”)
2. propinsi=input(“Asal Propinsi :”)
3. print (nama,” berdomisili di “, propinsi)

Hasil dari program di atas dengan inputan nama “Budi” dan Propinsi “Jawa Barat”, adalah :
Nama : Budi
Propinsi : Jawa Barat
Budi berdomisili di Jawa barat

Contoh 2 :
Sebuah program yang menerima input dari keyboard berupa 2 buah bilangan yang akan
dijumlahkan. Hasil dari penjumlahan kedua bilangan tersebut ditampilkan juga.

1. bilangan_1=int(input(“Bilangan 1 :”))
2. bilangan_2=int(input(“Bilangan 2:”))
3. hasil=bilangan_1+bilangan_2
4. print (“Hasil :”,hasil)

Hasil dari program di atas dengan bilangan 1 diinput 4 dan bilangan 2 diinput 8, adalah :
Bilangan 1 : 4
Bilangan 2 : 8
hasil : 12

Source code pada baris 1 dan baris 2 berguna untuk menerima inputan dengan konversi ke integer.
Secara default, inputan bertipe String, walaupun inputan tersebut berupa bilangan. Agar dapat
dikalkulasi seperti dijumlahkan, maka inputan bilangan tersebut harus dikonversi menjadi integer
dengan memberikan perintah int(bilangan). Jika inputan bilangan tersebut berupa angka desimal,
maka harus dikonversi ke dalam float dengan memberikan perintah float (bilangan).
Selain

III.2 Proses
Proses adalah mengolah input atau data untuk menghasilkan sebuah output. Output ditampilkan
dengan perintah “print”. Proses dapat bermacam-macam tergantung kepada apa yang ingin diproses
untuk menghasilkan output tertentu. Seperti pada source code sebelumnya, yakni :
1. bilangan_1=int(input(“Bilangan 1 :”))
2. bilangan_2=int(input(“Bilangan 2:”))
3. hasil=bilangan_1+bilangan_2
4. print (“Hasil :”,hasil)

Jika diinput bilangan 1 adalah 3 dan bilangan 2 adalah 5.


Output :
Bilangan 1 : 3
Bilangan 2 : 5
Hasil : 8

Baris 3 : hasil = bilangan_1+bilangan_2


Baris tersebut merupakan proses penjumlahan bilangan 1 dan bilangan 2 yang disimpan ke dalam
variabel hasil.
Bab IV
Kondisi dan Iterasi
IV.1 Kondisi
Kondisi adalah perintah untuk mengecek kondisi tertentu yang jika terpenuhi akan mengeksekusi
statemen tertentu.
Format umum :
if kondisi
statement 1

Contoh :
Jika sebuah x diinput nilai 5, maka outputnya adalah X adalah 5 :
1. X=int(input(“Nilai X :”))
2. if X==5
print (“X adalah 5”)

Jika diinput nilai x adalah 5.


Output :
Nilai X : 5
X adalah 5

Pada contoh tersebut, jika X bukan bernilai 5, maka tidak ada output apa-apa.
Kondisi tertentu juga dapat memiliki kondisi yang lain, sehingga format nya menjadi :
if kondisi 1
statement 1
elif kondisi 2
statement 2
else
statement 3

Contoh :
Terdapat inputan Y yang mana jika Y bernilai 10, maka dicetak kalimat “Y bernilai 10”, jika Y
bernilai lebih kecil dari 10, maka dicetak kalimat “Y lebih kecil dari 10” dan jika Y bernilai selain
kondisi-kondisi tersebut atau dengan kata lain Y lebih besar dari 10, maka dicetak kalimat “Y lebih
besar dari 10”.
1.Y=int(input(“Nilai Y:”))
2. if Y==10:
3. kalimat=”Y bernilai 10”
4. elif Y<10:
5. kalimat=”Y lebih kecil dari 10”
6. else:
7. kalimat=”Y lebih besar dari 10”
8. print(kalimat)

Jika diinput nilai Y adalah 15.


Output :
Nilai Y : 15
Y lebih besar dari 10

Kondisi dapat bernilai lebih dari 1 dan dihubungkan dengan operator “and” atau “or” . Kondisi juga
dapat bernilai negasi “not”.
Contoh : Terdapat inputan nilai w. Jika w bernilai 0, maka akan dicetak kalimat “w bernilai 0”, jika
w bernilai lebih besar atau sama dengan 1 dan lebih kecil atau sama dengan 10, maka akan dicetak
kalimat “w di antara 0 dan 11”, jika w lebih besar dari 10, maka akan dicetak kalimat “w lebih besar
dari 10” selain itu w pasti bernilai negatif, maka akan dicetak kalimat “w bernilai negatif”.
1. w=int(input(“Nilai W:”))
2. if w==0:
3. kalimat=”W bernilai nol”
4.elif w>0 and w<=10:
5. kalimat=”W di antara 0 dan 10”
6.elif w>10:
7. kalimat=”W lebih besar dari 10”
8.else:
9. kalimat=”W bernilai negatif”
10. print (kalimat)
Jika diinput Nilai w adalah 5.
Output :
W di antara 0 dan 10
IV.2 Iterasi
Iterasi atau looping berfungsi untuk mengulangi eksekusi perintah.
Bentuk umum :
for variabel in range (numerik)
Statement

Contoh :
Mencetak angka dari 0 sampai dengan 4.
1.for i in range (5):
2. print(i)

Output :
0
1
2
3
4
Bab V
Dictionary, List dan Tuple
IV.1 Dictionary
Dalam Python, Dictionary sering juga disebut tipe mapping. Tipe data ini mendefinisikan relasi satu
ke satu antara kunci (key) dan nilai (value).
Bentuk umum : variabel = {key1:value1, key2:value2, …}
Contoh :
1.d={‘nama1’:’Ali’, ‘nama2’:’Budi’}
2.print(d[‘nama1’])
3.print(d[‘nama2’])

Output :
Ali
Budi

IV.1.1 Menambah elemen


Elemen sebuah dictionary dapat ditambah dengan memberikan value kepada key baru. Bentuk
umum : variabel[‘key_baru’]=’Nilai baru’
Contoh :
1.d={‘nama1’:’Ali’,’nama2’:’Budi’}
2.d[‘nama3’]=’Nini’
3.d[‘nama4’]=’Toni’
4.print(d[‘nama4’])

Output :
Toni

IV.1.2 Merubah elemen


Elemen sebuah dictionary dapat diubah dengan merubah value pada key yang sudah ada atau key
lama pada variabel.
Bentuk umum : variabel[‘key_lama’]=’Nilai baru’
Contoh :
Merubah value nama1 menjadi Rudi.
1.d={‘nama1’:’Ali’,’nama2’:’Budi’}
2.d[‘nama1’]=’Rudi’
3.print(d[‘nama1’])

Output :
Rudi

IV.1.3 Menghapus dictionary


Elemen pada sebuah variabel dictionary dapat dihapus dengan menggunakan perintah del dengan
merujuk ke key yang ada atau key lama di dalam variabel .
Bentuk umum :Del variabel[‘key’]
Contoh :
1.d={‘nama1’:’Ali’,’nama2’:’Budi’}
2.del d[‘nama1’]
3.print (d[‘nama1’])

Output :
<<Program error >>
Program error, karena key nama1 sudah dihapus, sudah tidak ada di dalam variabel dictionary d

IV.2 List
List seperti dictionary, namun diindex dengan menggunakan bilangan. Index pertama adalah 0.
Bentuk umum : nama_list = [nilai1,nilai2,nilai3,...]
Contoh :
1.li = [100,200,300,400]
2.print(li[0])
3.print(li[1])

Output :
100
200
IV.2.1 Menambah list
Elemen list dapat ditambah dengan menggunakan perintah nama variabel.append
Bentuk umum : variabel.append(‘value’)
Contoh :
1.li = [100,200,300,400]
2.li.append(500)
3.print(li[4])
Output :
500

IV.2.2 Menghapus List


Elemen list dapat dihapus dengan menggunakan perintah remove.
Bentuk umum : variabel.remove(value)
Contoh :
1. li = [100,200,300,400]
2. li.remove(100)
3. print(li[0])

Output :
200
Value ke: 0 sebelum dihapus adalah 100, saat 100 sudah dihapus, value ke:0 menjadi 200.

IV.2.3 Merubah list


Elemen list dapat diubah dengan memasukkan value baru.
Contoh :
1.li = [100,200,300,400]
2.li[0]=700
3.print (li[0])

Output :
700
IV.3 Tuple
Tuple merupakan list yang tidak dapat diubah.
Bentuk umum :
nama_tuple=(nilai1, nilai2, nilai3, …)
Contoh :
1.nama = (“Iwan”,”Budi”,”Susi”,”Siti”)
2.print(nama[0])
3.print(nama[1])

Output :
Iwan
Budi
Bab VI
Function

Function atau procedure adalah teknik di dalam pemrograman untuk memisahkan blok kode
tertentu dan dapat dipanggil oleh kode utama. Function berguna untuk memisahkan kode yang
sering digunakan berkali-kali, sehingga anda tidak perlu menuliskan kode yang sama secara
berulang. Untuk memanfaatkan function, anda hanya perlu memanggil dengan menuliskan nama
function di blok kode utama . Function dapat memiliki parameter, dapat juga tanpa parameter.
Untuk menuliskan Function di Python diawali dengan kata : def
Contoh 1 :
Tuliskan sebuah program yang mencetak kalimat “Selamat Datang” sebanyak n kali. n diinput
dengan keyboard. Kalimat “Selamat Datang” dituliskan dalam sebuah function.
Jawab :
1.def cetak():
2.print ("Selamat Datang")
3.n = int(input("n:"))
4.for m in range(n):
5. cetak()
Jika diinput n adalah 5.
Output :
0
1
2
3
4

Contoh 2 :
Buatlah program untuk menghitung volume kubus, dengan sisi x yang diinput dengan
keyboard.
Jawab :
1. def hitung(x):
2. vol=x * x * x
3. print (vol,"meter kubik")
4. x=int(input("Sisi Kubus (meter):"))
5. hitung(x)
Jika diinput x adalah 6.
Output :
Sisi kubus (meter) : 6
216 meter kubik

Rumus untuk mencari volume kubus adalah sisi x sisi x sisi, sehingga jika sisi nya adalah 6, maka
6 x 6 x 6 = 216

Contoh 3 :
Buatlah program untuk menghitung luas balok dengan sisi x,y dan z diinput dengan keyboard.
1. def hitung(x,y,z) :
2. vol=x * y * z
3. print (vol,"meter kubik")
4. x=int(input("Panjang Balok (meter):"))
5. y=int(input("Lebar Balok (meter):"))
6. z=int(input("Tinggi Balok (meter):"))
7. hitung(x,y,z)

Jika diinput x=4, y=5 dan z=6.


Output :
Panjang Balok (meter) : 4
Lebar Balok (meter) : 5
Tinggi Balok (meter) : 6
120 meter kubik

Hasil Volume balok merupakan perkalian dari 4,5 dan 6 adalah 120 meter kubik.
Bab VII
Menggunakan Pandas untuk pengolahan data CSV

Pandas library (https://pandas.pydata.org) berfungsi untuk modeling dan analisa data di Python.
Pandas berlisensi Open source BSD-Licensed. Library sendiri adalah sekumpulan kode yang dapat
dipergunakan dengan menggunakan nama method atau functionnya. Jika anda menginstall Python
dengan menggunakan Anaconda, maka Panda sudah ikut terinstall.
Jika di dalam komputer anda Panda belum terinstall, maka anda dapat menginstallnya dengan
menggunakan perintah :
pip install pandas
Anda dapat mengecek keberadaan Pandas di komputer anda dengan mencetak versi Pandas yang
ada, dengan perintah :
1.import pandas as pd
2.print (pd.__version__)

Output :
1.1.3

Versi Pandas dapat berbeda-beda pada komputer yang berbeda, tergantung versi mana yang
diinstall. Saat tulisan ini dibuat, versi Pandas komputer yang penulis gunakan adalah : 1.1.3

VII.1 Membaca Data


Salah satu fungsi Pandas adalah membaca data CSV dan selanjutnya mengolahnya. Sebagai
latihan, kita akan menggunakan data dari website UCI Machine Learning Repository. Web site ini
adalah Repository bagi data yang didonasikan oleh berbagai pihak untuk dapat dipergunakan oleh
pengguna Internet untuk keperluan apa saja, terutama untuk keperluan membuat model dan prediksi
dalam bidang Machine Learning. Machine Learning adalah Ilmu untuk melakukan prediksi data
baru berdasarkan data yang ada dengan menggunakan metode yang tersedia dalam Machine
Learning. Pada tutorial ini, kita tidak mempergunakan Machine Learning, kita hanya menggunakan
datanya untuk ditampilkan informasi yang diinginkan seperti mendapatkan mean atau rata-rata dan
Standard Deviasi dan juga membentuk diagram.
Data yang dipergunakan pada tutorial ini adalah data Iris
(https://archive.ics.uci.edu/ml/datasets/Iris). Data Iris adalah data mengenai tanaman Iris yang
memiliki bunga yang diukur sepal dan petal atau daun bunga nya. Data tersebut dibuat oleh R.A.
Fisher dan didonasikan oleh Michael marshall kepada Repository Machine Learning
(https://archive.ics.uci.edu/ml/index.php). Di dalam Repository tersebut, data Iris merupakan data
yang paling banyak dikunjungi oleh pengguna Internet sejak tahun 2007 yaitu sebanyak 4.377.359
kali kunjungan [2]. Data tersebut memiliki 5 kolom atau fitur yakni Sepal Length, Sepal Width,
Petal Length, Petal Width dan Class. Data tersebut memiliki 150 baris atau 150 instance.
Kita akan mengakses data dan mencetak dimensi datanya dengan menggunakan Pandas dengan
script di bawah ini :

1. import pandas as pd
2. datanya=pd.read_csv("iris.data",
3. names=[“Sepal_Length”,”Sepal_Width”,”Petal_Length”,”Petal_Width”,”Class”])
4. print(datanya.shape)

Output :
(150,5)

Dimensi datanya yakni (150,5), maksudnya adalah 150 baris dan 5 kolom.
Keterangan script :
1. import pandas as pd
Melakukan load atau import Library pandas dan mengaliaskan dengan pd. Kita dapat menggunakan
variabel selain pd sepanjang memenuhi ketentuan penggunaan variabel, yakni tidak ada spasi, tidak
diawali angka dan tidak ada special character, seperti % atau $.

2. datanya=pd.read_csv("iris.data", names=[“Sepal_Length”,”Sepal_Width”,”Petal_
Length”,”Petal_Width”,”Class”])
Membaca file iris.data yang berupa file CSV dengan memberi nama setiap kolomnya. Jika file
iris.datanya terletak di direktori yang berbeda dengan file py nya, maka perlu dituliskan direktori
nya juga sebelum nama file, contoh jika iris.data berada di direktori c:/data maka perlu ditulis
“c:/data/iris.data”

3. print(datanya.shape)
Mencetak dimensi data. Jika dituliskan di Jupyter Notebook atau Python Shell, dapat juga tanpa
menuliskan print, yaitu : datanya.shape. Demikian juga output yang lain, yang dicetak dengan
perintah print, pada Jupyter Notebook dan Python Shell, dapat ditulis tanpa menggunakan perintah
print.
Selanjutnya, kita akan membaca data lebih lanjut.
a. Mencetak baris pertama dari data
print(list(datanya))
Output : ['Sepal_Length', 'Sepal_Width', 'Petal_Length', 'Petal_Width', 'Class']
karena kita menggunakan names, maka names masuk ke dalam data pertama. Jika kita ingin
outputnya adalah data pertama berupa value, maka kita perlu menghilangkan names pada kode
baris ke 2.

b. Menginspeksi atau melihat data sekilas


print(datanya.info)
Output :
<bound method DataFrame.info of Sepal_Length Sepal_Width Petal_Length Petal_Width
Class
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
.. ... ... ... ... ...
145 6.7 3.0 5.2 2.3 Iris-virginica
146 6.3 2.5 5.0 1.9 Iris-virginica
147 6.5 3.0 5.2 2.0 Iris-virginica
148 6.2 3.4 5.4 2.3 Iris-virginica
149 5.9 3.0 5.1 1.8 Iris-virginica

Output yang tampil merupakan 5 data teratas dan 5 data terbawah.

c. Menampilkan data teratas


print(datanya.head())
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa

Data teratas yang tampil default nya adalah 5 baris.


d. Menampilkan data teratas sebanyak 10 buah
Jika kita ingin menampilkan data teratas lebih dari nilai default nya yaitu 5 buah, maka kita dapat
menambahkan angka di dalam kurung head nya, misal 10.
print(datanya.head(10))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
5 5.4 3.9 1.7 0.4 Iris-setosa
6 4.6 3.4 1.4 0.3 Iris-setosa
7 5.0 3.4 1.5 0.2 Iris-setosa
8 4.4 2.9 1.4 0.2 Iris-setosa
9 4.9 3.1 1.5 0.1 Iris-setosa

Data yang tampil merupakan 10 data teratas.

e. Membaca data terakhir


Print (datanya.tail())
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
145 6.7 3.0 5.2 2.3 Iris-virginica
146 6.3 2.5 5.0 1.9 Iris-virginica
147 6.5 3.0 5.2 2.0 Iris-virginica
148 6.2 3.4 5.4 2.3 Iris-virginica
149 5.9 3.0 5.1 1.8 Iris-virginica

Defaultnya adalah 5 data terakhir.

f. Membaca 2 data terakhir


print(datanya.tail(2))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
148 6.2 3.4 5.4 2.3 Iris-virginica
149 5.9 3.0 5.1 1.8 Iris-virginica
g. Mendapatkan kesimpulan dari data
Terdapat beberapa tipe kesimpulan dari data, yaitu [3] :
object : Kesimpulan dari kolom string
number : Kesimpulan dari kolom
all : Kesimpulan semua kolom
Default nya adalah “number”.
print(datanya.describe(include=’all’))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
count 150.000000 150.000000 150.000000 150.000000 150
unique NaN NaN NaN NaN 3
top NaN NaN NaN NaN Iris-versicolor
freq NaN NaN NaN NaN 50
mean 5.843333 3.054000 3.758667 1.198667 NaN
std 0.828066 0.433594 1.764420 0.763161 NaN
min 4.300000 2.000000 1.000000 0.100000 NaN
25% 5.100000 2.800000 1.600000 0.300000 NaN
50% 5.800000 3.000000 4.350000 1.300000 NaN
75% 6.400000 3.300000 5.100000 1.800000 NaN
max 7.900000 4.400000 6.900000 2.500000 NaN

Data kesimpulan ini akan diterangkan pada Bab selanjutnya. Data yang ditampilkan juga terdapat
NaN. NaN singkatan dari Not a Number, adalah sebuah tipe data numerik yang dapat diterjemahkan
ke dalam undefined (tidak terdefinisikan) atau unrepresentable (tidak terwakili) terutama dalam
bilangan Real [4].
h. Mengurutkan data berdasarkan kolom “class”.
print(datanya.sort_values(“class”))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
0 5.1 3.5 1.4 0.2 Iris-setosa
27 5.2 3.5 1.5 0.2 Iris-setosa
28 5.2 3.4 1.4 0.2 Iris-setosa
29 4.7 3.2 1.6 0.2 Iris-setosa
30 4.8 3.1 1.6 0.2 Iris-setosa
.. ... ... ... ... …
119 6.0 2.2 5.0 1.5 Iris-virginica
120 6.9 3.2 5.7 2.3 Iris-virginica
121 5.6 2.8 4.9 2.0 Iris-virginica
111 6.4 2.7 5.3 1.9 Iris-virginica
149 5.9 3.0 5.1 1.8 Iris-virginica

Output berupa 5 data teratas dan 5 data terbawah.


Bab VIII
Kesimpulan pada Data menggunakan Describe

Untuk menampilkan kesimpulan pada data, kita dapat menggunakan perintah Describe yang
sudah dipergunakan pada Bab VII. Kita akan tampilkan lagi perintah tersebut dengan menggunakan
data Iris.

print(datanya.describe(include=’all’))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
count 150.000000 150.000000 150.000000 150.000000 150
unique NaN NaN NaN NaN 3
top NaN NaN NaN NaN Iris-versicolor
freq NaN NaN NaN NaN 50
mean 5.843333 3.054000 3.758667 1.198667 NaN
std 0.828066 0.433594 1.764420 0.763161 NaN
min 4.300000 2.000000 1.000000 0.100000 NaN
25% 5.100000 2.800000 1.600000 0.300000 NaN
50% 5.800000 3.000000 4.350000 1.300000 NaN
75% 6.400000 3.300000 5.100000 1.800000 NaN
max 7.900000 4.400000 6.900000 2.500000 NaN

Keterangan :
unique, top dan freq berlaku untuk kolom dengan data bertipe String, sedangkan mean, standard
deviasi (std), min, 25%, 50%, 75% dan max berlaku untuk data bertipe numerik. Data yang bukan
peruntukkannya, seperti top untuk data string sedangkan Sepal_Length datanya bertipe numerik,
maka Sepal_Length bernilai NaN.

Count : Adalah jumlah baris, yakni berjumlah 150.


unique : Adalah jumlah data setelah dikelompokkan. Pada data Iris tersebut, bernilai 3 pada kolom
Class. Kolom Class memiliki data setelah dikelompokkan hanya 3, yaitu : Iris-setosa, Iris-
versicolor dan Iris-virginica.
top : Data teratas.
freq : Banyak nya data teratas atau data yang ditampilkan di top.
Mean : Rata-rata
std : Standard Deviasi, untuk mengukur sebaran data. Jika nilai sebaran data kecil, maka nilai data
cenderung dekat ke rata-rata atau data pada data set tidak berbeda jauh antar sesama data, namun
jika nilai Standard Deviasi tinggi, maka sebaran data tinggi atau perbedaan antar sesama data tinggi
[5].
min : Data paling rendah atau minimal
25% : Disebut juga Quartile 1, yaitu 25% data setelah diurutkan.
50% : Data tengah, setelah data diurutkan atau median.
75% :Disebut juga Quartile 3, yaitu 75% data setelah diurutkan.
Max : Data paling tinggi atau maksimal

Untuk mengetahui proses perhitungan kesimpulan data di atas, kita akan mendapatkan kesimpulan
data dengan menggunakan Pandas dan juga menghitung secara manual agar dapat lebih diketahui
proses munculnya data pada kesimpulan tersebut, sehingga pemahaman kita mengenai lebih baik.
Terdapat data nilai Matematika siswa berikut :

Nama Nilai
Ali 65
Sinta 75
Rani 85
Vivian 100
Toni 70
Burhan 85
Aisyah 100
Umar 100
Tini 80
Nia 63
Ihsan 61

Data pada tabel tersebut disimpan di file data_nilai.csv. Kita akan menggunakan pandas untuk
mendapatkan kesimpulan data nya.

1. import pandas as pd
2. dataku=pd.read_csv("data_nilai.csv",names=["Nama","Nilai"])
3. print(dataku.describe())
Output :
Nilai
count 11.000000
mean 80.363636
std 14.995151
min 61.000000
25% 67.500000
50% 80.000000
75% 92.500000
max 100.000000

Keterangan :
Count : Jumlah data ada 11 buah
mean : Disebut juga, rata-rata, yaitu : 80.363636
N
Xi
mean memiliki rumus sebagai berikut : μ =∑
i=1 N
N = jumlah data, yakni 11. Sehingga
(65 + 75 + 85 + 100 + 70 + 85 + 100 + 100 + 80 + 63 + 61) = 80,363636
11
- Min : Nilai minimal, yakni 61
- Max : Nilai maximal, yakni 100
- 25% atau Quartile 1 atau Q1 : Pada data tersebut yakni data di urutan 3.5 atau (data urutan 3 +
data urutan 4) / 2.
Data kita urutkan menjadi : 61,63,65,70,75,80,85,85,100,100,100
maka 25% nya adalah (65+70)/2 = 135/2 = 67.5
- 50% atau Quartile 2 atau Q2 atau Median : Yaitu data tengah. Pada data setelah diurutkan tersebut
adalah data urutan ke 6 = 80
- 75% atau Quartile 3 atau Q3 : yaitu data ke 75%. pada data setelah diurutkan tersebut adalah data
urutan ke 8.5 = (data ke 8 + data ke 9)/2 = (85 + 100) /2 = 92.5
- Std atau Standard Deviasi : Dihitung denganmenggunakan rumus berikut :
N

σ=
√ ∑ (x i−μ )2
i=1
N

μ =80.363636
Sehingga :
σ = √ (61 – 80,363636)2 + (63 – 80,363636)2 + (65 – 80,363636)2 + (70 – 80,363636)2 +
(75 – 80,363636)2 + (80 – 80,363636)2 + (85 – 80,363636)2 + (85 – 80,363636)2 +
(100 – 80,363636)2 + (100 – 80,363636)2 + (100 – 80,363636)2
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

11
= √ (-19,363636)2 + (-17,363636)2 + (-15,363636)2 + (-10,363636)2 + (-5,363636)2 +
(-0.363636)2 + (5,363636)2 + (5,363636)2 + (20,363636)2 + (20,363636)2 +
(20,363636)2
---------------------------------------------------------------------------------------------------------
11
= √ 374,950 + 301,496 + 236,041 + 107,405 + 28.769 + 0,132 + 28,769 + 28,769 +
414,678 + 414,678 + 414,678
--------------------------------------------------------------------------------------------------------
11
2350,365
=
√ 11
= √ 213,670

= 14,617

Hasilnya hampir sama dengan 14.995151, hanya beda angka dibelakang koma, karena pembulatan
perhitungan.
Bab IX
Modifikasi Tampilan Data

Terkadang data yang ditampilkan perlu dimodifikasi untuk keperluan tertentu. Kita tidak perlu
merubah data asalnya, cukup dengan memodifikasi tampilan data nya saja. Terdapat beberapa
perintah dalam pandas yang dapat kita gunakan untuk melakukan modifikasi tampilan data. Data
yang digunakan masih data Iris yang digunakan pada Bab sebelumnya.

IX.1 assign
Perintah assign digunakan untuk menambah kolom baru pada tampilan data. Data pada file csv
tidak berubah, kita hanya menambah kolom baru pada tampilan datanya saja. Misal kita ingin
menambah tampilan kolom baru pada data Iris, yakni kolom penjumlahan dari Sepal_Width dan
Petal_Width. Scriptnya adalah sebagai berikut :
1.import pandas as pd
2.datanya=pd.read_csv("iris.data",
3.names=["Sepal_Length","Sepal_Width","Petal_Length","Petal_Width","Class"])
4.ubah_data=datanya.assign(var_baru=datanya[‘Sepal_Width’]+
5.datanya[‘Petal_Width’])
6.print(ubah_data.head(3))

Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class var_baru
0 5.1 3.5 1.4 0.2 Iris-setosa 3.7
1 4.9 3.0 1.4 0.2 Iris-setosa 3.2
2 4.7 3.2 1.3 0.2 Iris-setosa 3.4

pada Output di atas terdapat kolom var_baru yang nilai nya adalah penjumlahan dari Sepal_Width
dan Petal_Width.
Untuk selanjutnya script baris no:1 s/d baris no:3 pada contoh script selanjutnya tidak ditulis
ulang kembali.
IX.2 drop
drop berfungsi untuk menghilangkan baris. Contoh, kita akan menghilangkan 2 baris di urutan 1
dan 3.
datanya.drop(datanya.index[1:3], axis=0, inplace=True)
print(datanya.head(3))

Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
0 5.1 3.5 1.4 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
5 5.4 3.9 1.7 0.4 Iris-setosa
6 4.6 3.4 1.4 0.3 Iris-setosa
7 5.0 3.4 1.5 0.2 Iris-setosa

Pada output terlihat data dengan index ke 1 sampai dengan 3 tidak ditampilkan. Pada file
iris.data, data nya masih ada namun tampilannya yang dihilangkan.
Drop juga dapat menghilangkan baris dengan kriteria tertentu, seperti script berikut yang
menghilangkan data dengan class Iris-setosa :
datanya.drop(datanya[datanya.Class=='Iris-setosa'].index,inplace=True)
print(datanya.head(5))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
50 7.0 3.2 4.7 1.4 Iris-versicolor
51 6.4 3.2 4.5 1.5 Iris-versicolor
52 6.9 3.1 4.9 1.5 Iris-versicolor
53 5.5 2.3 4.0 1.3 Iris-versicolor
54 6.5 2.8 4.6 1.5 Iris-versicolor

IX.3 Subsetting
Subsetting adalah menampilkan sebagian data dengan range tertentu. Kita akan menggunakan
perintah loc yang berfungsi untuk subsetting baris (row subsetting).
Contoh 1 : Menampilkan data dari baris 4 ke 9
print(datanya.loc[4:9])
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
4 5.0 3.6 1.4 0.2 Iris-setosa
5 5.4 3.9 1.7 0.4 Iris-setosa
6 4.6 3.4 1.4 0.3 Iris-setosa
7 5.0 3.4 1.5 0.2 Iris-setosa
8 4.4 2.9 1.4 0.2 Iris-setosa
9 4.9 3.1 1.5 0.1 Iris-setosa

Pada output terlihat data yang tampil adalah data dengan index dari 4 hingga 9.
Contoh 2 : Menampilkan data index 0,2 dan 4
print(datanya.loc[[0,2,4]])
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
0 5.1 3.5 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa

IX.3.1 menampilkan subsetting kolom


Subsetting kolom dengan menggunakan perintah iloc. Contoh, menampilkan data dengan kolom
index 0 dan 1.
print(datanya.iloc[[:,0:2]])
Output :
Sepal_Length Sepal_Width
0 5.1 3.5
1 4.9 3.0
2 4.7 3.2
3 4.6 3.1
4 5.0 3.6
.. ... …
145 6.7 3.0
146 6.3 2.5
147 6.5 3.0
148 6.2 3.4
149 5.9 3.0

Subsetting juga dapat menampilkan data berdasarkan kolom dan baris.


Contoh : Menampilkan data baris ke 1,10 dan 20 untuk kolom pertama dan kolom kedua
(Sepal_Length dan Petal_Width)
print(datanya.iloc[[1,10,20],[0,2]])
Output :
Sepal_Length Petal_Length
1 4.9 1.4
10 5.4 1.5
20 5.4 1.7

IX.3.2 Subsetting Observations


Yakni menampilkan data dengan kondisi.
Contoh 1 : Menampilkan data yang classnya adalah Iris-setosa:
print(datanya[(datanya.Class=='Iris-setosa')])
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class0
5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
5 5.4 3.9 1.7 0.4 Iris-setosa
6 4.6 3.4 1.4 0.3 Iris-setosa
7 5.0 3.4 1.5 0.2 Iris-setosa
8 4.4 2.9 1.4 0.2 Iris-setosa
9 4.9 3.1 1.5 0.1 Iris-setosa
10 5.4 3.7 1.5 0.2 Iris-setosa
11 4.8 3.4 1.6 0.2 Iris-setosa
12 4.8 3.0 1.4 0.1 Iris-setosa
13 4.3 3.0 1.1 0.1 Iris-setosa
14 5.8 4.0 1.2 0.2 Iris-setosa
15 5.7 4.4 1.5 0.4 Iris-setosa
16 5.4 3.9 1.3 0.4 Iris-setosa
17 5.1 3.5 1.4 0.3 Iris-setosa
18 5.7 3.8 1.7 0.3 Iris-setosa
19 5.1 3.8 1.5 0.3 Iris-setosa
20 5.4 3.4 1.7 0.2 Iris-setosa
21 5.1 3.7 1.5 0.4 Iris-setosa
22 4.6 3.6 1.0 0.2 Iris-setosa
23 5.1 3.3 1.7 0.5 Iris-setosa
24 4.8 3.4 1.9 0.2 Iris-setosa
25 5.0 3.0 1.6 0.2 Iris-setosa
26 5.0 3.4 1.6 0.4 Iris-setosa
27 5.2 3.5 1.5 0.2 Iris-setosa
28 5.2 3.4 1.4 0.2 Iris-setosa
29 4.7 3.2 1.6 0.2 Iris-setosa
30 4.8 3.1 1.6 0.2 Iris-setosa
31 5.4 3.4 1.5 0.4 Iris-setosa
32 5.2 4.1 1.5 0.1 Iris-setosa
33 5.5 4.2 1.4 0.2 Iris-setosa
34 4.9 3.1 1.5 0.1 Iris-setosa
35 5.0 3.2 1.2 0.2 Iris-setosa
36 5.5 3.5 1.3 0.2 Iris-setosa
37 4.9 3.1 1.5 0.1 Iris-setosa
38 4.4 3.0 1.3 0.2 Iris-setosa
39 5.1 3.4 1.5 0.2 Iris-setosa
40 5.0 3.5 1.3 0.3 Iris-setosa
41 4.5 2.3 1.3 0.3 Iris-setosa
42 4.4 3.2 1.3 0.2 Iris-setosa
43 5.0 3.5 1.6 0.6 Iris-setosa
44 5.1 3.8 1.9 0.4 Iris-setosa
45 4.8 3.0 1.4 0.3 Iris-setosa
46 5.1 3.8 1.6 0.2 Iris-setosa
47 4.6 3.2 1.4 0.2 Iris-setosa
48 5.3 3.7 1.5 0.2 Iris-setosa
49 5.0 3.3 1.4 0.2 Iris-setosa

Output akan menampilkan semua data yang class nya bernilai Iris-setosa.

Contoh 2 : Menampilkan data yang class nya adalah Iris-setosa dan petal_length nya adlaah 1,5
print(datanya[(datanya.Class=’Iris-setosa’) & (datanya.Petal_Length==1.5)])
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
3 4.6 3.1 1.5 0.2 Iris-setosa
7 5.0 3.4 1.5 0.2 Iris-setosa
9 4.9 3.1 1.5 0.1 Iris-setosa
10 5.4 3.7 1.5 0.2 Iris-setosa
15 5.7 4.4 1.5 0.4 Iris-setosa
19 5.1 3.8 1.5 0.3 Iris-setosa
21 5.1 3.7 1.5 0.4 Iris-setosa
27 5.2 3.5 1.5 0.2 Iris-setosa
31 5.4 3.4 1.5 0.4 Iris-setosa
32 5.2 4.1 1.5 0.1 Iris-setosa
34 4.9 3.1 1.5 0.1 Iris-setosa
37 4.9 3.1 1.5 0.1 Iris-setosa
39 5.1 3.4 1.5 0.2 Iris-setosa
48 5.3 3.7 1.5 0.2 Iris-setosa
IX.3.3 Mengurutkan data
Mengurutkan data menggunakan perintah sort_values
Syntax :
DataFrame.sort_values(self,axis=0,ascending=True,inplace=False,kind=’quicksort’,
na_position=’last’)
Contoh :
Mengurutkan data berdasarkan Sepal_Length secara Ascending.
print(datanya.sort_values (by=[‘Sepal_Length’]))
Output :
Sepal_Length Sepal_Width Petal_Length Petal_Width Class
13 4.3 3.0 1.1 0.1 Iris-setosa
42 4.4 3.2 1.3 0.2 Iris-setosa
38 4.4 3.0 1.3 0.2 Iris-setosa
8 4.4 2.9 1.4 0.2 Iris-setosa
41 4.5 2.3 1.3 0.3 Iris-setosa
.. ... ... ... ... …
122 7.7 2.8 6.7 2.0 Iris-virginica
118 7.7 2.6 6.9 2.3 Iris-virginica
117 7.7 3.8 6.7 2.2 Iris-virginica
135 7.7 3.0 6.1 2.3 Iris-virginica
131 7.9 3.8 6.4 2.0 Iris-virginica
Bab X
Merge dengan Pandas, Numpy dan Matplotlib

X.1 Merge dengan Pandas

Merge dengan Pandas adalah menggabungkan 2 tabel dengan menggunakan sebuah atribute
sebagai key nya. Merge mengimplementasikan sejumlah tipe join, yakni : one-to-one, many-to-one
dan many-to-many joins.

One-to-one joins yaitu menggabungkan 2 tabel yang memiliki atribute key yang sama untuk
digunakan melakukan join. Many-to-one joins yaitu menggabungkan 2 tabel yang mana 1 tabel
memiliki 2 kolom yang digunakan untuk melakukan join. Many-to-many joins yaitu
menggabungkan 2 tabel yang mana 1 tabel memiliki lebih dari 1 atribute key dan tabel lain
memiliki 1 tabel key [6].

Contoh data nilai Matematika dalam format CSV :

1101,budi,100
1102,Tino,80
1104,Siti,90
1105,Mimin,70
1106,Harun,82

Contoh Data Nilai Biologi dalam format CSV :

1101,budi,60
1102,Tino,70
1104,Siti,80
1105,Mimin,50
1110,Ujang,90

Keterangan :

Kolom 1 : NIS
Kolom 2 : Nama
Kolom 3 : Nilai
Selanjutnya kita akan mencoba melakukan merge kedua data tersebut degna script sebagai
berikut :
1. # Untuk import dan load data csv
2. import pandas as pd
3. nilai_biologi=pd.read_csv("nilai_biologi.csv",names=["NIS","Nama","Nilai_Biologi"])
4.nilai_matematika=pd.read_csv("nilai_matematika.csv",names=["NIS","Nama","Nilai_Matematik
5. a"])
6. # Untuk melihat shape (baris dan kolom) dari data
7. print(nilai_biologi.shape)
8. print(nilai_matematika.shape)
9. # Untuk melihat daftar nilai Biologi dan nilai Matematika
10. print("Daftar Nilai Biologi")
11. print(nilai_biologi)
12. print("Daftar Nilai Matematika")
13. print(nilai_matematika)
14. # Untuk merge dan print hasil merge
15. gabung=pd.merge(nilai_biologi,nilai_matematika)
16. print(gabung)

Output :
(5, 3)
(5, 3)
Daftar Nilai Biologi
NIS Nama Nilai_Biologi
0 1101 budi 60
1 1102 Tino 70
2 1104 Siti 80
3 1105 Mimin 50
4 1110 Ujang 90

Daftar Nilai Matematika


NIS Nama Nilai_Matematika
0 1101 budi 100
1 1102 Tino 80
2 1104 Siti 90
3 1105 Mimin 70
4 1106 Harun 82
NIS Nama Nilai_Biologi Nilai_Matematika
0 1101 budi 60 100
1 1102 Tino 70 80
2 1104 Siti 80 90
3 1105 Mimin 50 70

Beberapa baris script yang perlu dijelaskan, adalah :


8. print(nilai_biologi.shape)
Mencetak dimensi dari data nilai Biologi, outputnya adalah : (5,3), artinya data terdiri dari 5 baris
dan 3 kolom.

9. print(nilai_matematika.shape)
Mencetak dimensi dari data nilai Matematika, outputnya adalah : (5,3), artinya data terdiri dari 5
baris dan 3 kolom.

16. gabung=pd.merge(nilai_biologi,nilai_matematika)
Menerapkan perintah merge untuk menggabungkan data nilai_biologi dan nilai_matematika dan
menyimpannya dalam variabel gabung.

17. print(gabung)
Mencetak hasil penggabungan 2 data

Hasil penggabungan kedua data memuat nilai siswa yang NIS dan namanya ada di kedua tabel.
Bagi siswa yang namanya hanya ada di salah satu tabel saja, yakni Ujang yang ada namanya di
Daftar Nilai Biologi namun tidak ada di Daftar Nilai Matematika, maka Ujang tidak ada datanya di
data hasil merge. Demikian pula dengan Harun yang hanya ada di Daftar Nilai Matematika dan
tidak ada datanya di Daftar Nilai Biologi, maka Harun tidak ada datanya di data hasil merge. Untuk
kolom Nilai_Biologi dan Nilai_Matematika pada data hasil merge, kedua kolom tersebut tertera.

X.2 Numpy

Numpy (www.numpy.org) adalah library pada Python untuk komputasi saintifik.


Numpy memiliki fitur-fitur komputasi dan matematika seperti untuk pengolahan
matrix, array, sorting, selecting,I/O, discrete fourier transform dan Aljabar Linear basic [7].
- Numpy tersedia di dalam distribusi Anaconda
- Numpy dapat diinstall dengan menggunakan pip
- Numpy terbaru saat ini adalah Numpy v1.19.0
- Cek versi Numpy

X.2.1 Fitur-fitur Numpy :


- Powerful N-dimensional arrays
- Numerical computing tools
- Interoperable
- High Performance
- Easy to use
- Open source [7]

Contoh Script :
1. Kita pernah mengenal list dalam Python. Ada juga Array yang bentuknya seperti List. Array
memiliki dimensi seperti Array 1 dimensi dan array 2 dimensi.
Script mencetak array 1 dimensi dengan elemen array dari 0 hingga 14.
1. x=np.arange(15)
2. x
Output :
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])

2.Mencetak array 2 dimensi dengan dimensi (3,5) dengan elemen default dari 0 sampai dengan 15.

1. import numpy as np
2. a=np.arange(15).reshape(3,5)
3. print(a)

Output :
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]]

3. Mencetak dimensi dari array a dengan menggunakan shape


Contoh : a.shape

Output :
(3,5)
4. Mencetak Dimensi array a dengan menggunakan ndim
Contoh : a.ndim

Output :
2

5. Mencetak lebar bit dari type data dengan menggunakan dtype.name


Contoh : a.dtype.name

Output :
‘int64’

6. mencetak ukuran size dalam bytes dengan menggunakan itemsize


Contoh : a.itemsize

Output :
8

Dikarenakan elemen dari array a adalah integer dan integer dalam byte berukuran 8 byte, maka
dicetak 8.

7. Mencetak jumlah elemen array dengan menggunakan size


Contoh : a.size

Output :
15

karena jumlah elemen array a berjumlah 15 (dari 0 hingga 14), maka size berukuran 15.

8. Mencetak type variabel


Contoh : type (a)

Output :
numpy.ndarray

numpy.ndarray menandakan bahwa variabel a bertype array. [8]

9. Mencetak hasil dari perintah sum, min dan cumsum


Contoh :
1. b=np.arange(12).reshape(3,4)
2. b # Mencetak array
3. b.sum (axis=0) # Mencetak hasil penjumlahan setiap kolom
4. b.min(axis=1) # Mencetak nilai minimal dari setiap baris
5. b.cumsum(axis=1) # Mencetak penjumlahan elemen sebelumnya dalam 1 baris
Output :
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])

array([12,15,18,21])

array([0, 4, 8])

array([[ 0, 1, 3, 6],
[ 4, 9, 15, 22],
[ 8, 17, 27, 38]])

X.3 Matplotlib

Matplotlib (www.matplotlib.org) adalah library dalam Python untuk memvisualisasikan data.


Data dapat berasal dari file, array atau variabel. Untuk mengecek keberadaan Matplotlib sekaligus
mengetahui versi Matplotlib di komputer kita, dapat digunakan script berikut :
1.import matplotlib as plt
2.print (plt.__version__)

Output :
3.3.2

Contoh mencetak data dari array :


1.import numpy as np
2.import matplotlib as plt
3.import matplotlib.pyplot as pyp
4.print(plt.__version__)
5.t=np.array([4,6,10,11,20])
6.print(t)
7.pyp.plot(t)
8.pyp.show()

Output :
3.3.2
Data pada grafik yang berhasil dibuat adalah grafik dari array yang dibuat dengan Numpy
dengan elemen array adalah : 4,6,10,11,20
Sumbu x menunjukkan index nya dari 0 hingga 4 sedangkan sumbu Y menunjukkan nilai elemen
array nya.
Bab XI
Visualisasi data dengan Matplotlib

Pada bab sebelumnya kita sudah membahas mengenai Matplotlib. Di bab ini kita akan membahas
2 contoh visualisasi yang dibuat dengan menggunakan Matplotlib.
1. Mencetak Diagram Batang dengan data dari dictionary [9]
1.import matplotlib.pyplot as plt
2.data = {'apple': 10, 'orange': 15, 'lemon': 5, 'lime': 20}
3.names = list(data.keys())
4.values = list(data.values())
5.plt.bar(names, values)
6.plt.suptitle('Categorical Plotting')

Output :

Output berupa diagram batang. Label Sumbu X berupa keys dari dictionary dan label sumbu y
berupa values dari dictionary.
Contoh mencetak data dengan nilai sumbu X dan Y.
1.import matplotlib.pyplot as plt2
2.fig,ax = plt.subplots()
3.ax.plot([1,2,3,4],[1,4,2,3])
Output :

Nilai sumbu X adalah 1,2,3,4. Nilai sumbu Y adalah 1,4,2,3.


Referensi

[1] Anaconda Documentation, https://docs.anaconda.com/, akses : 5 Des 2021


[2] Iris Data Set, R.A. Fisher, Michael marshall, https://archive.ics.uci.edu/ml/datasets/Iris, akses : 8
Desember 2021
[3] Tutorials point, Python Pandas – Descriptive Statistics,
https://www.tutorialspoint.com/python_pandas/python_pandas_descriptive_statistics.htm
Akses : 8 Desember 2021
[4] NaN, https://en.wikipedia.org/wiki/NaN, Akses : 8 Desember 2021
[5] Standard Deviation, https://en.wikipedia.org/wiki/Standard_deviation, diakses : 8 Desember
2021
[6] Combining Datasets: Merge and Join,
https://jakevdp.github.io/PythonDataScienceHandbook/03.07-merge-and-join.html, Akses : 13
Des 2020
[7] Quickstart tutorial, https://numpy.org/doc/stable/user/quickstart.html,
Akses : 14 Des 2020
[8] NumPy quickstart, https://numpy.org/doc/stable/user/quickstart.html, Akses : 12 Des 2021
[9] Plotting categorical variables,
https://matplotlib.org/gallery/lines_bars_and_markers/categorical_variables.html#sphx-glr-
gallery-lines-bars-and-markers-categorical-variables-py, Akses : 21 Des 2020

Anda mungkin juga menyukai