Dosen Pembimbing:
M. Arfan, S.Kom., M, Eng.
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
BAB I
PERCOBAAN 0
PENGENALAN PEMROGRAMAN PYTHON
1.1 Tujuan
1. Mengetahui apa itu Bahasa Pemograman Python
2. Dapat Meng-Install aplikasi untuk membuat program Python
3. Mengenal ada apa saja dalam Bahasa Python
4. Mengetahui kegunaan Bahasa Python
Hanya dengan menuliskan kode print seperti yang diatas, anda sudah bisa
mencetak apapun yanganda inginkan di dalam tanda kurung (). Dibagian akhir kode
pun, anda tidak harus mengakhirnya dengan tanda semicolon ‘;’.
Versi yang terbaru saat modul ini dibuat adalah python versi 3, yang juga
digunakan untuk pembuatan modul ini. Dalam modul ini Python ditulis dengan
menggunakan Jupyter Notebook yang merupakan salah satu IDE (Integrated
Development Environment) berbasis web di dalam Anaconda. Selain menggunakan
Jupyter Notebook bisa juga dengan menggunakan comand line yang juga
disediakan Anaconda.
Untuk komentar beberapa baris bisa dengan menambahkan tanda # pada setiap
baris:
Asisten Pembimbing:
Rayhand Aska M.
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
Tipe Angka Dalam Python ada 3 jenis tipe numerik dalam Python:
1. Integer
Int atau integer adalah seluruh angka / bilangan, positif atau negatif,
tanpa decimal dari panjang angka yang tak terbatas.
2. Float
Float atau "floating point number" adalah sebuah angka / bilangan,
positif atau negatif, yang membuat satu atau lebih bilangan dibelakang
koma atau desimal.
3. Complex
Bilangan kompleks (Complex) ditulis dengan sebuah huruf “j” sebagai
bagian dari bagian imajiner.
Konversi tipe:
Tipe data bisa di konversi dari satu tipe ke tipe yang lain dengan
menggunakan fungsi int (), float (), dan complex ()
Operator Perbandingan
Lebih besar 5 >= 3 Jika nilai operan kiri lebih besar dari nilai operan kanan,
atau sama bernilai True atau sama, maka kondisi menjadi benar.
dengan >=
Lebih kecil 5 <= 3 Jika nilai operan kiri lebih kecil dari nilai operan kanan,
atau sama bernilai True atau sama, maka kondisi menjadi benar.
dengan <=
Operator Penugasan
Operator yang digunakan untuk menetapkan nilai ke variable.
Logical Operator
Operator yang digunakan untuk menghubungkan pernyataan kondisional.
Tabel 2.5 Logical operator dalam Python
Identify Operator
Operator ini digunakan untuk membandingkan objek, bukan jika mereka
sama, tetapi jika mereka sebenarnya adalah objek yang sama, dengan lokasi
memori yang sama.
Asisten Pembimbing:
Adeev Nidya Perdana
Nama/NIM Peserta:
Yodha Bhakti Wirandanu
Gambar 3.8 Contoh mengecek keberadaan sebuah item dalam list pada Python.
3.2.2.6 Menentukan Jumlah Komponen dalam List
Untuk menentukan jumlah komponen dalam list bisa dengan menggunakan
fungsi len().
Gambar 3.9 Contoh menentukan jumlah komponen dalam list pada Python.
Gambar 3.10 Contoh menambahkan item dalam list menggunakan fungsi append().
Gambar 3.11 Contoh menambahkan item dalam list menggunakan fungsi insert().
Gambar 3.12 Contoh menghilangkan item dalam list menggunakan fungsi remove().
2. Fungsi pop(). Fungsi pop() menghapus item terakhir dari list.
Gambar 3.13 Contoh menghilangkan item dalam list menggunakan fungsi pop().
3. Fungsi del(). Fungsi del() dapat menghapus item tertentu didalam list
sesuai dengan indeks yang disebutkan dalam fungsi.
Gambar 3.14 Contoh menghilangkan item dalam list menggunakan fungsi del().
4. Fungsi clear(). Fungsi clear() digunakan untuk mengosongkan list.
Gambar 3.15 Contoh menghilangkan item dalam list menggunakan fungsi clear().
Untuk membuat kopi dari list yang tidak menjadi referensi seperti pada
contoh di atas maka bisa dengan menggunakan fungsi copy().
Gambar 3.17 Contoh menyalin item dalam list.
Pada contoh di atas perubahan pada list1 tidak berdampak pada list3. List3
hanya dibuat awalnya dengan menyalin dari list1 selanjutnya tidak
mengikuti perubahan list1. Cara lain untuk menyalin dari satu ke list yang
lain bisa dengan menggunakan metode yang built-in di dalam Python yaitu
metode list.
Ada beberapa cara untuk bergabung, atau menyatukan, dua atau lebih
daftar dengan Python.
1. Menggunakan operator +.
3.2.3. Tuple
Sebuah tuple adalah koleksi dalam Python yang sudah tertata dan tidak
dapat diubah. Dalam Python tuple ditulis dengan kurung bulat.
Gambar 3.23 Contoh tuple pada Python.
Gambar 3.27 Contoh menghitung jumlah item, menambahkan item dan menghilangkan
item dalam tuple.
3.3. Analisis dan Pembahasan
3.3.1 List
Seperti pada gambar 3.28, nilai data honda, yamaha, suzuki, kawasaki, dan
ktm dimasukkan ke dalam list ‘motor’,Jika kita melakukan perintah
print(typemotor) output yang akan dihasilkan adalah [“honda”, “yamaha”,
“suzuki”, “kawasaki”, “ktm”] dengan <class ‘list’>.
Gambar 3.31 adalah mengubah nilai item data dengan indeks positif dan
negatif dengan variabel awal list = ["honda", "yamaha", "suzuki",
"kawasaki", "ktm"], Nilai item dalam list bisa diubah sesuai yang
diinginkan. Untuk mengubah item tertentu dalam list, dapat dilakukan
command seperti di gambar 3.31. Pada gambar 3.31, indeks 1 dan 3 nilainya
diganti dengan Benelli dan Harley.
D. Perulangan dalam List
Pada gambar 3.33 saya mencoba mengecek apakah variabel yang saya
masukkan ada dalam list atau tidak.Contoh saya ingin memeriksa
apakahvariabel “yamaha” ada di dalam list atau tidak.Untuk memeriksa
apakah “yamaha” saya menggunakan fungsi if “yamaha” in motor: Jika
program ini dijalankan dan terdapat variabel “yamaha” dalam list tersebut
makan akan muncul output “yamaha ada dalam list”.
Pada gambar 3.34, saya ingin menghitung jumlah dari variabel yang
ditulis,Disini untuk dapat menghitung jumlahnya saya menggunakan
perintah print(len(thislist)) setelah itu,output yang akan dihasilkan adalah
5,dan hasil itu adalah benar dan tepat.
G. Menambah Item ke dalam List
Pada gambar 3.35 nilai item dalam list dapat ditambah ataupun dihapus
menggunakan fungsi. Fungsi append() digunakan untuk menambah item ke
komponen paling kanan. Untuk menambah item ke indeks tertentu, dapat
dilakukan dengan fungsi insert(). Sementara itu, untuk menghapus item
tertentu dapat digunakan fungsi remove dan untuk menghapus item paling
kanan dapat digunakan fungsi pop(). Fungsi del bisa digunakan untuk
menghapus item dengan indeks tertentu.
Pada gambar 3.36 saya mencoba menghilangkan item dalam list dengan
empat perintah yaitu remove,pop, del, dan clear.Pertama,fungsi remove().
Fungsi ini digunakan untuk menghapus suatu item secara spesifik.
Contohnya,saya ingin menghapus “kawasaki” dari dalam list,kita bisa
menghapusnya dengan menggunakan thislist.remove(“kawasaki”) maka
output yang akan dihasilkan adalah [“honda”, “yamaha’, “suzuki”, “ktm”].
Selanjutnya, fungsi pop(). Fungsi ini digunakan untuk menghapus item yang
berada pada indeks paling akhir. Pada gambar 3.36 saya menggunakan
fungsi pop untuk menghapus item terakhir,maka jika kita print akan
menghasilkan output ["honda", "yamaha", "suzuki", "kawasaki"] dengan
“kawasaki” yang telah terhapus.
Ketiga, menggunakan fungsi del(). Fungsi ini digunakan untuk menghapus
suatu item sesuai dengan indeks yang ingin dimasukkan. Pada gambar 3.37
saya ingin menghapus item ketiga,menggunakan perintah del motor[2] maka
output yang akan dihasilkan adalah [“honda”, “yamaha”, “kawasaki”,
“ktm”].
Keempat, menggunakan fungsi clear(). Fungsi ini digunakan untuk
menghapus seluruh item yang terdapat pada suatu list.Jika saya
menggunakan perintah motor clear() maka akan keluar output = [].
I. Menyalin List
Pada gambar 3.38 yaitu dengan “=” dan ”copy” dapat dubuktikan Isi list
bisa disalin dengan menggunakan variabel baru. Untuk menyalin list. Pada
gambar 3.38, variabel motor2 menyalin isi list motor dan ketika isi list
motor diganti salah satu isinya, maka variabel motor2 tetap mengikuti isi
list tersebut. Akan tetapi, ketika menyalin menggunakan fungsi copy() dan
isi list motor diganti, tidak memengaruhi list baru yang menyalin.
K. Konstruktor List
Bisa kita liat pada gambar 3.41 tipe tuple hampir sama seperti tipe list,
namun perbedaan dalam membuat tipe tuple adalah menggunakan kurung
biasa ( ). Seperti pada gambar 3.41, variabel thistuple = (“honda”,
“yamaha”, “suzuki”, “kawasaki”, “ktm”) merupakan tipe array tuple.Jika
kita gunakan perinyah print maka akan muncul <class.tupple>.
Pada gambar 3.43 saya mencoba melakukan rentang variabel positif dan
negatif.Dengan variabel yang saya gunakan yaitu thistuple = (“honda”,
“yamaha”, “suzuki”, “kawasaki”, “ktm”).Pertama saya akan memberikan
contoh perintah print(motortuple[3:]),perintah ini berarti mencetak data
thistuple mulai dari indeks 3 ke kanan sampai akhir data, maka outputnya
yaitu (“kawasaki”, “ktm) .Kedua adalah rentang indeks nilai negatif. Dengan
variabel thistuple yang sama,contoh dari rentang indeks negatif pada gambar
yaitu print(thistuple[-3:]) berarti mencetak data motortuple mulai dari
indeks -3 akan menghasilkan output [“suzuki”, “kawasaki”, “ktm”].
C. Mengubah Data Tuple
Solusi yang dapat dilakukan untuk soal diatas tentang menampilkan orange
dan kiwi yaitu dengan menggunakan rentang indeks positif yaitu dengan
cara print(thislist[3:5]) ini menghasilkan data dari listt dari indeks 3
sampai 4 (5 tidak termasuk). Output yang akan dihasilkan adalah [“orange”,
“kiwi”] sesuai soal.
3.4.2 Buat soal pertama untuk rentang indeks negative
Untuk menampilkan orange dan kiwi namun untuk rentang indeks negative
,saya menggunakan indeks negatif ialah dengan print(thislist[-4:-2]) yang
artinya mencetak data dari thislist dari indeks -3 sampai -4.Sehingga akan
menghasilkan output [“orange”, “kiwi”] sesuai perintah soal.
3.4.3 Buat kode program untuk menampilkan kiwi, melon, mango dengan 3
alternatif rentang indeks. Sebutkan 3 rentang indeks alternatif
tersebut
Pada gambar 3.50 dibuat sebuah list mobil ["avanza", "xenia", "brio",
"innova", "bmw"] dengan menggunakan kurung siku yang berarti item di
dalamnya akan menjadi data collection list. Kemudianuntuk menampilkan
item pada list menggunakan print(listmobil) lalu akan keluar output
["avanza", "xenia", "brio", "innova", "bmw"].
3.4.5 Buat kode untuk mengubah nilai item dengan rentang positif dan
negatif
Gambar 3.51 Mengubah nilai item dengan rentang positif dan negatif
3.4.7 Buat kode untuk menambah dan mengurangi item dalam list
Pada gambar 3.33 untuk Mengurangi item dalam list juga terdapat tiga cara
yang bisa kita lakukan untuk mengurangi item dalam list.Pertama
menggunakan remove() saya menggunakan remove(0) untuk menghapus
item “MU”, kedua menggunakan pop() untuk menghapus item terakhir
yaitu “Liverpool”, ketiga menggunakan del untuk meghapus indeks 2 yaitu
“MU”.
Pada gambar 3.54 dilakukan cara untuk meghilangkan item pada list dengan
menggunakan fungsi clear().Fungsi ini digunakan untuk menghapus dan
mengosongkan semua item yang terdapat pada suatu list dengan fungsi
thislist.clear() dan output yang dihasilkan akan kosong[ ] seperti gambar
3.34.
3.4.9 Buat kode untuk menyalin dan menggabungkan dua list (list keduanya
bebas)
Pada gambar 3.55 dilakukan kode untuk menyalin dan menggabungkan dua
list. Penyalinan data dalam list bisa kita gunakan fungsi copy() dalam fungsi
ini kita bisa lihat pada gambar 3.55 bahwa ketika suatu list disalin untuk
mendefinisikan list yang baru maka akan menghasilkan suatu list yang
independen, dalam artian setiap ada perubahan dalam list yang pertama
perubahan itu tidak dialami oleh list yang baru.Selanjutnya untuk
menggabungkan dua list, kita gunakan dengan operasi penjumlahan
tepatnya tanda tambah (+) dengan catatan kita harus mendefinisikan masing
– masing list terlebih dahulu baru melakukan operasi penjumlahannya.
Dalam contoh ini kita ingin menggabungkan antara “ikanlaut” dengan
“ikanairtawar” dengan terlebih dahulu mendefinisikan “jenisikan” adalah
hasil dari operasi penjumlahan antara “ikanlaut” dengan “ikanairtawar”
maka akan menghasilkan output ['tuna', 'salmon', 'trout', 'cakalang', 'lele',
'arwana', 'mujair', 'nila'].
3.4.10 Buat kode untuk membuat list di atas dalam bentuk tuple
3.4.11 Buat kode untuk mengubah nilai tuple dengan rentang positif dan
negatif
Gambar 3.57 Mengubah nilai tuple dengan indeks positif dan negatif
Pada gambar 3.57 digunakan rentang indeks [3] untuk mengubah item ke-
3 yaitu "Inggris" dan untuk mengubah item ke-2 dari akhir yaitu "Australia"
namun terjadi error. Ini dikarenakan tipe data tuple bersifat immutable.
Gambar 3.58 Mengakses nilai tuple dengan indeks positif dan negatif
Dalam gambar 3.58 untuk mengakses item dalam tuple bisa menggunakan
print(tupaksesoris[masukkan indeksnya]). Contoh, print(tupaksesoris[4])
untuk indeks 4 dan print(tupeaksesori[-2]) untuk indeks -2.
Asisten Pembimbing:
Rayhand Aska M.
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
4.2.2 Set
Set dalam bahasa pemrograman python adalah tipe data kolektif yang
digunakan untuk menyimpan banyak nilai dalam satu variabel dengan
ketentuan:
nilai anggota yang disimpan harus unik (tidak duplikat)
nilai anggota yang sudah dimasukkan tidak bisa diubah lagi
set bersifat unordered alias tidak berurut yang artinya tidak bisa
diakses dengan indeks.
Set dapat kita buat seperti membuat variabel biasa, namun nilai
variabelnya diisi dengan tanda kurung kurawal “{ }”. Apabila set-nya berisi
lebih dari satu, maka kita bisa memisahnya dengan tanda koma.
Tabel 4.1 Fungsi dalam tipe data set
Fungsi Keterangan
4.2.3 Dictionary
Fungsi Keterangan
Pada gambar 4.3 Untuk memeriksa elemen dalam set dapat digunakan fungsi
‘if’. Kode ‘if “Bali” in setpulau’ menyatakan kondisi jika elemen “Bali” ada dalam
setpulau, maka akan ada output seperti “Pulau tertera dalam set”.Jika elemen “Bali”
tidak ada dalam setpulau maka output yang akan dihasilkan adalah “Pulau Bali tidak
tertera dalam set”.
7. Menghapus set
4.3.2 Dictonary
1. Membuat kode program dictionary
6. Menyalin dictionary
4.4 Penugasan
4.4.1 Buatlah sebuah set dan tampilkan di output terminal python
4.4.8 Buat kode untuk menghapus satu elemen dalam set (fungsi clear dan
del)
4.4.13 Buat kode untuk mengubah nilai, menampilkan dengan loop dan
mengecek dengan kondisional
4.4.17 Buatlah sebuah nested dictionary dan tampilkan dalam output terminal
python
Asisten Pembimbing:
Adeev Nidya Perdana
Nama/NIM Peserta:
Yodha Bhakti Wirandanu
A. Indentasi
Indentansi adalah sebuah pendefinisian lingkup dalam kode.
Indentansi disebut juga sebagai ‘space’ untuk mendefinisikan lingkup kode.
Penggunaan indentasi adalah untuk menghindari error.
B. Elif
Secara gampang, kondisi ‘elif’ digunakan untuk mengecek kondisi ini
apabila kondisi sebelumnya tidak benar.
C. Else
Kondisi ‘else’, menyatakan apabila semua kondisi tidak benar, maka
eksekusi pernyataan pada kondisi else.
E. And
Pernyataan ‘and’ digunakan untuk menambahkan syarat pada suatu
kondisional.
F. Nested If
Nested if adalah suatu kondisi jika suatu if statement memiliki beberapa
if statement di dalamnya.
G. Pass
Pernyataan ‘pass’ digunakan dalam suatu kondisi jika diinginkan untuk
mengosongkan lingkup if statement. Hal ini sangat krusial, karena jika
dikosongkan, maka akan terjadi error.
2. Pernyataan ‘Continue’
Pernyataan ‘continue’ digunakan untuk menghentikan perulangan
untuk sementara waktu, dan melompat ke perulangan setelahnya.
3. Pernyataan ‘Else’
Pernyataan ‘else’ adalah suatu pernyataan yang menyatakan suatu
kondisi tidak lagi bernilai benar.
2. Pernyataan ‘Break’
Pernyataan ‘break’ digunakan untuk menghentikan perulangan
dengan suatu kondisi sebelum loop dapat dijalankan.
3. Pernyataan ‘Continue’
Pernyataan ‘continue’ digunakan untuk menghentikan perulangan
pada suatu indeks kemudian melanjutkan ke indeks selanjutnya.
4. Range()
Untuk mengulang satu set kode beberapa kali, kita dapat
menggunakan fungsi range(). Fungsi range() mengembalikan urutan
angka, mulai dari 0 secara default, dan bertambah dengan 1 (secara
default), dan berakhir pada angka yang ditentukan.
5. Else
Else dalam loop berguna untuk menentukan blok kode yang akan
dieksekusi ketika loop selesai.
6. Loop Bersarang
Loop bersarang berarti dalam sebuah loop terdapat beberapa loop
di dalamnya. Loop dalam akan dieksekusi satu kali untuk setiap
perulangan pada loop luar.
7. Pass
Pernyataan ‘pass’ digunakan untuk mengosongkan loop sehingga
menjadi loop tanpa konten.
5.3 Analisis dan Pembahasan
5.3.1 Kondisional
A. If
C. Elif
D. Else
F. And
Pada Gambar 5.6 kata kunci and adalah operator logika, dan berfungsi
untuk menggabungkan persyaratan bersyarat.Pada gambar diatas saya
menggunakan if yaitu untuk menguji apakah a lebih besar dari b,dan jika c
lebih besar dari a.
G. Nested If
Break
Continue
1
Gambar 5.11 Penggunaan ‘continue’ pada while
Else
Gambar 5.12 Else pada while
Pada Gambar 5.12, bisa kita lihat bahwa L bernilai 15, dan pada
kondisi pertama while x < 8, dan kondisi else. Karena L tidak
memenuhi kondisi pertama, maka program akan menjalankan kondisi
else, yaitu print(“L tidak memenuhi syarat”).
B. For
Pada gambar 5.14, loop dapat mengeja kata yang terdapat pada
string. Pada gambar saya menulis for x in “honda”. Maka output yang
dikeluarkan adalah “h”, “o”, “n”, “d”, “a”.
Break
Pada Gambar 5.15, break dapat menghentikan loop for pada indeks
tertentu. Pada gambar saya menulis break apabila x == ‘suzuki’ dalam
list item, maka output yang dikeluarkan adalah ‘honda’ dan ‘ktm’.
Continue
Range()
Else
Pass
Pembahasan:
Pada Gambar 5.21 memiliki variabel x untuk memasukkan skor
yang akan dikonversi. Secara kondisional, jika input x kurang dari 100
dan lebih besar dari 80, kita mendapatkan nilai A. Kondisi berikut
mendapatkan nilai berikut jika input x kurang dari 80 dan lebih besar
dari 70. Mendapatkan nilai B jika x yang dimasukkan kurang dari 70
dan lebih besar dari 55, dan nilai C jika x yang dimasukkan kurang dari
55 dan lebih besar dari 40. Kemudian dapatkan nilai D jika x tidak
memenuhi kedua pernyataan tersebut. Kondisi di atas diberi nilai E dan
diterima oleh kondisi lain yang paling rendah yang perlu diulang.
Pembahasan:
Pada gambar 5.22 ditunjukkan penugasan kedua yang diminta
untuk membuat tulisan “Teknik Elektro Undip ${(index)}” sebanyak
20 baris. Pada gambar saya membuat perulangan while x<=20, maka
print(“Teknik Elektro Undip”, x) dan x+=1, nilai x awal adalah 1. Maka
output yang dihasilkan sesuai gambar.
5.4.3 Buatlah program untuk menghitung 10! (fakultif)
Pembahasan :
Pada gambar 5,23 ditunjukkan penugasan ketiga yaitu diminta
untuk membuat program untuk menghitung 10!. Terdapat variabel y
dan faktorial, dimana y adalah variabel yang akan ditentukan
faktorialnya dan faktorial adalah variabel untuk menampung hasil
perhitungan nanti.Lalu, dilakukan perulangan for dengan for w in
range(1, y+1) dimana w adalah variabel baru yang berfungsi untuk
menampung hasil perulangan dan range(1, y+1) merupakan awal nilai
yang akan dimulai perulangannya dan y+1 adalah untuk perulangan y
yang akan ditambahkan 1 yang dimulai dari 0.Di dalam perulangan for
ini terdapat operator perkalian yaitu faktorial *= w ,dimana variabel
faktorial akan dikalikan dengan variabel w, hasil dari perulangan
for.Kemudian, dilakukan print(f”Hasil dari 10 adalah = {faktorial}”}
maka output yang akan dihasilkan adalah “Hasil dari 10 adalah
3628800.
5.4.4 Buatlah / modifikasi kode Python diatas untuk menampilkan tulisan
Teknik Elektro ${index} sebanyak 6x. (fungsi range)
Pembahasan :
Untuk penugasan keempat, hampir sama pada penugasan kedua,
namun bedanya pada penugasan keempat menggunakan perulangan for.
Pada gambar saya membuat perulangan for x in range(0,6), maka
print(“Teknik Elektro Undip”, x).Maka output yang keluar adalah
perulangan dari “Teknik Elektro” sebanyak 6 kali dan juga indeksnya.
5.4.5 Perbedaan fungsi continue dan break dalam kondisional dan
perulangan
Pembahasan :
Pada gambar 5.25 ditunjukkan continue dan break.Dalam fungsi
kondisional, continue memiliki fungsi untuk menghentikan iterasi saat
ini dan melanjutkan dengan yang setelahnya.Artinya saat perulangan
dilakukan dan pada fungsi kondisional terdapat pernyataan continue,
maka iterasi tersebut tidak termasuk dalam hitungan dan lanjut iterasi
berikutnya.Sedangkan untuk break, memiliki fungsi untuk
menghentikan loop, bahkan jika kondisi while benar.Ini berarti saat
perulangan dilakukan dan pada fungsi kondisional terdapat break, maka
setelah iterasi tersebut perulangan akan berhenti, walaupun while
tersebut dalam kondisi benar.
5.4.6 Modifikasi untuk model lain dengan data yang lebih banyak (nested
loop)
Pembahasan :
Pada penugasan keenam diperintahkan untuk memodifikasi
nested loop dengan data yang lebih banyak. Pada gambar terdapat 3 list,
yaitu ukuran, warna dan pakaian. Nested for digunakan untuk
perulangan ini, yaitu for a in ukuran: for b in warna: for c in pakaian,
lalu beri perintah print(a,b,c) maka output yang dihasilkan adalah
gabungan ketiga list tersebut.
5.4.7 Buat satu skenario looping kosong dengan menggunakan fungsi pass
Pembahasan :
Pada gambar 2.7 penugasan ketujuh yaitu diperintahkan untuk
membuat loop kosong dengan fungsi pass. Disini, saya membuat list
buah terlebih dahulu, kemudian memberi perintah for x in makanan,
maka pass. Output yang dikeluarkan adalah “Selesai”, berarti loop di
atasnya adalah loop kosong.
5.5 Kesimpulan
1. Percabangan pada python terbagi menjadi dua, yaitu kondisional dan
perulangan. Kondisional merupakan tipe data percabangan yang
berfungsi untuk melakukan eksekusi jika statement yang diberikan
bernilai benar.
2. Kondisi Python dapat dibagi menjadi tiga jenis: if, elif, dan else, seperti
yang ditunjukkan pada Gambar 5.1, 5.3, dan 5.4. Perbedaan antara
kondisi Python adalah jika kondisinya benar, kode if dijalankan, jika
elif, kode dijalankan jika kondisinya benar, dan jika kondisi if dan elif
sebelumnya salah, kode akan dieksekusi. kode akan dieksekusi jika
kondisinya benar. Jika jika dan elif ada sebelum nilai yang salah.
3. Indentasi sangat penting untuk penulisan bersyarat dan berulang. Jika
Anda tidak memperhatikan lekukan, Anda akan mendapatkan
kesalahan dalam kode Anda, seperti yang ditunjukkan pada Gambar
5.2.
4. Pada kondisional maupun perulangan terdapat fungsi-fungsi yang mirip
dari kegunaannya maupun pengaplikasiannya.
5. Perulangan pada python dibagi menjadi dua, yaitu while dan for seperti
yang dapat dilihat pada Gambar 5.9 dan 5.13 While berfungsi untuk
menjalankan serangkaian pernyataan selama suatu kondisi bernilai
benar. Sementara itu, for berfungsi untuk mengulangi urutan pada list,
tuple, set, atau string
6. Kita bisa membuat nested pada kondisional dan perulangan seperti pada
Gambar 5.7 dan 5.19.
7. Loop while, dapat dijalankan ketika serangkaian pernyataan selama
suatu kondisi benar.
8. Loop for digunakan untuk mengulangi urutan (baik list, tuple,
dictionary, set, atau string). Loop ini berfungsi seperti metode iterator
seperti yang ditemukan dalam bahasa pemrograman berorientasi objek
lainnya.
9. Fungsi range() mengembalikan urutan angka, mulai dari 0 secara
default, dan bertambah dengan 1 (secara default), dan berakhir pada
angka yang ditentukan.
10. Perbedaan continue dan break yaitu dalam fungsi kondisional, continue
memiliki fungsi untuk menghentikan iterasi saat ini dan melanjutkan
dengan yang setelahnya.Artinya saat perulangan dilakukan dan pada
fungsi kondisional terdapat pernyataan continue, maka iterasi tersebut
tidak termasuk dalam hitungan dan lanjut iterasi berikutnya.Sedangkan
untuk break, memiliki fungsi untuk menghentikan loop, bahkan jika
kondisi while benar.Ini berarti saat perulangan dilakukan dan pada
fungsi kondisional terdapat break, maka setelah iterasi tersebut
perulangan akan berhenti, walaupun while tersebut dalam kondisi benar
seperti yang ditunjukkan pada gambar 5.25.
Bab VI
Numpy Python
Asisten Pembimbing:
Okrisal Reka N
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
(Okrisal Reka N)
BAB VI
PERCOBAAN V
NUMPY PYTHON
6.1 Tujuan
1. Praktikan dapat memahami cara membuat Numpy Array dalam Python.
2. Praktikan dpaat membedakan dimensi dalam array yang bekerja dalam
Numpy Array.
3. Praktikan dapat memahami penggunaan indexing dan slicing dalam
Numpy Array.
4. Praktikan dapat mengetahui karakteristik dari setiap tipe data dalam
Numpy Array.
5. Praktikan secara langsung oleh praktikan mengenai pembuatan Numpy
Array beserta tipe datanya.
Ada beberapa fungsi lagi yang dapat digunakan dalam membuat array antara lain
zeros(), ones(), arange(), linspace(), dan logspace().
Untuk memeriksa tipe data dari array, Numpy memiliki properti yang
disebut dtype yang mengembalikan tipe data array.
Ada cara cara lain untuk mengimport NumPy adalah dengan alias : numpy as
np. NumPy biasanya diimpor dengan alias np. Dalam Python alias adalah nama
alternatif untuk merujuk ke hal yang sama. Pada percobaan saya membuat alias dari
numpy, mencetak type dari numpy, mencetak versi yang digunakan.
Numpy memiliki Dimensi dalam Array. Dimensi dalam array adalah satu
tingkat kedalaman array (array bersarang/nested. nested array adalah array yang
memiliki array sebagai elemennya.
- Array 0-D
- Array 1-D
- Array 2-D
- Array 3-D
Pada gambar 1.2 adalah contoh Array 0-D, atau Skalars, adalah elemen dalam
array. Setiap nilai dalam array adalah array 0-D. Array 0-D atau yang lebih dikenal
dengan scalars merupakan elemen dari sebuah array.Disini saya melakukan
perintah num = np.array(30) maka jika kita print, output yang akan dihasilkan
adalah 30.
Pada gambar 6.4 ditunjukkan dilakukan praktikum 1-D atau uni dimensional.
Array yang elemennya terdiri dari array 0-D. Array ini menjadi array yang paling
umum dan paling banyak digunakan.Pada gambar diatas,saya mencoba melakukan
perintah num = np.array (['e', 'f', 'g', 'h', 'i']) dengan print(num) lalu akan dihasilkan
output ['e', 'f', 'g', 'h', 'i'] inilah yang dinamakan Array 1-D
6.3.4 Tipe Data dalam Numpy
Pada gambar 6.6 untuk 3-D array atau array 3 dimensi merupakan array yang
elemennya memiliki larik 2-D array atau matriks.Disini, saya menggunakan data
angka ([[[12,11,10],[9,8,7]],[[12,11,10],[9,8,7]] dengan perintah num = np.array
([[[12,11,10],[9,8,7]],[[12,11,10],[9,8,7]]] ) lalu print(num), maka output yang akan
dihasilkan adalah Array 3 dimensi seperti pada gambar.
Pada gambar 6.10 ditunjukan kegunaan indeks juga dapat dimanfaatkan untuk
operasi bilangan dengan menjabarkan nilai indeksnya saat melakukan perjumlahan.
Disini, saya melakukan perintah penjumlahan indeks [2] dan [4] yang berarti 13
ditambah 15 hasilnya yaitu 28.
6.3.10 Mengakses Array 2-D
Pada percobaan diatas yaitu gambar 6.12 praktikan melakukan percobaan untuk
mengakses array 3 dimensi. Untuk mengakses elemen dari array 3-D kita dapat
menggunakan integer yang dipisahkan koma yang mewakili dimensi dan indeks
elemen.Disini saya melakukan perintang num = np.array ([[[8,9,10], [11,12,13]],
[[14,15,16],[17,18,19]]]) print(num[0,1,2]) maka output yang dihasilkan adalah 13.
Pada numpy memiliki beberapa tipe data tambahan, dan merujuk ke tipe data
dengan satu karakter, seperti i untuk bilangan bulat, u untuk bilangan bulat tak
bertanda (unsigned), dan lain-lain. Pada library numpy terdapat argument yang
dapat digunakan untuk mengembalikan tipe data array yang digunakan pada array
tersebut yaitu dtype.Disini saya melakukan perintah num = np.array
([13,14,15,16]) dengan print(num.dtype) maka output yang akan dihasilkan adalah
int 32.
6.3.16 Menentukan Tipe Data Pada Array Numpy
Pada 6.17 ditunjukkan pembuktian bahwa numpy kita juga dapat untuk membuat
array dengan tipe data yang ditentukan saat pembuatannya. Hal ini dapat dilakukan
dengan menggunakan argument dtype=.
Pada gambar diatas 6.18 saya mencoba melakukan konversi jenis data pada
array dengan menggunakan metode astype(). Dimana metode ini adalah cara terbaik
untuk mengubah tipe data dari array yang ada dengan membuat Salinan array dan
memungkinkan untuk memenentukan tipe data sebagai parameter
6.3.18 Perbedaan Copy dan View
Pada gambar 1.19 saya mencoba melakukan copy dan view.Dari percobaan ini
saya dapat menyimpulkan bahwa perbedaan utama antara copy dan view pada
array adalah copy berupa array baru, dan view hanya berupa tampilan array asli.
Copy memiliki data dan perubahan apapun yang dilakukan pada copy tidak akan
memengaruhi array asli, dan perubahan apa pun yang dibuat pada array asli tidak
akan memengaruhi copy. View tidak memiliki data dan perubahan apapun yang
dilakukan pada view akan memengaruhi array asli, dan setiap perubahan yang
dibuat pada array asli akan memengaruhi view.
6.3.19 Slicing Numpy Array Pada 2 Dimensi
Pada percobaan diatas ditunjukkan Basic Atribut yaitu percobaan untuk memeriksa
apakan array lama dan baru memiliki basis apa tidak. Setiap array NumPy memiliki
basis atribut yang mengembalikan Tidak Ada jika array memiliki data. Jika tidak,
atribut dasar merujuk ke objek asl
6.4 Kesimpulan
1. Berdasarkan Gambar 6.1 terdapat salah satu dari library Python yaitu
Numpy. Numpy adalah pustaka Python yang digunakan untuk bekerja
dengan array.
2. Berdasarkan pada Gambar 6.3 array 0-D atau scalars adalah elemen
dalam array. Setiap nilai dalam array adalah array 0-D.
4. Berdasrkan pada Gambar 6.4 array yang memiliki array 0-D sebagai
elemen-elemennya disebut array uni-dimensional atau 1-D.
5. Berdasarkan pada Gambar 6.5 array yang memiliki array 1-D sebagai
elemen-elemennya disebut array 2-D.
6. Berdasarkan pada Gambar 6.6 array yang memiliki array 2-D (matriks)
sebagai elemen-elemennya disebut array 3-D.
7. Berdasarkan pada Gambar 6.7 terdapat cara memeriksa dimensi array
dengan menggunakan argumen ndim. Sebelum dimasukkan data yang
ingin di cek dimensinya, dilakukan import Numpy terlebih dahulu.
8. Berdasarkan Gambar 6.8 array dapat memiliki sejumlah dimensi.
Ketika array dibuat, array dapat ditentukan jumlah dimensinya dengan
menggunakan argumen ndmin.
9. Berdasarkan Gambar 6.9 pengindeksan array yaitu sama dengan
mengakses elemen array. Elemen array dapat diakses dengan merujuk
nomor indeksnya. Indeks dalam array numpy dimulai dengan 0.
10. Berdasarkan Gambar 6.10 Pada gambar 6.10 ditunjukan kegunaan
indeks juga dapat dimanfaatkan untuk operasi bilangan dengan
menjabarkan nilai indeksnya saat melakukan perjumlahan.
11. Berdasarkan pada Gambar 6.11 ketika ingin mengakses elemen dari
array 2-D dapat menggunakan integer yang dipisahkan koma yang
mewakili dimensi dan indeks elemen.
12. Berdasarkan gambar 6.13, ditunjukkan bahwa Indeks negative akan
mengakses elemen dimulai pada akhir
13. Berdasarkan Gambar 6.14 ditunjukkan tentang slicing / mengiris dalam
python berarti mengambil elemen dari satu indeks yang diberikan ke
indeks yang diberikan lainnya.
14. Berdasarkan Gambar 6.15 pecobaan untuk slicing numpy pada 2
dimensi. Diketahui dapat melakukan slicing pada kedua dimensi secara
sekaligus.
15. Berdasarkan Gambar 6.16 . Pada library numpy terdapat argument yang
dapat digunakan untuk mengembalikan tipe data array yang digunakan
pada array tersebut yaitu dtype.
16. Berdasarkan Gambar 6.17 ditunjukkan pembuktian bahwa numpy juga
dapat untuk membuat array dengan tipe data yang ditentukan saat
pembuatannya. Hal ini dapat dilakukan dengan menggunakan argument
dtype=.
17. Berdasarkan Gambar 6.18 ditunjukkan konversi jenis data pada array
dengan menggunakan metode astype(). Dimana metode ini adalah cara
terbaik untuk mengubah tipe data dari array yang ada dengan membuat
Salinan array dan memungkinkan untuk memenentukan tipe data
sebagai parameter.
18. Berdasarkan Gambar 6.20 perbedaan utama antara copy dan view pada
array adalah copy berupa array baru, dan view hanya berupa tampilan
array asli.
Bab VII
Phyton Scipy
Asisten Pembimbing:
Savero Pakavi Z
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
(Savero Pakavi Z)
BAB VII
PERCOBAAN VI
PYTHON SCIPY
7.1. Tujuan
1. Praktikan dapat memahami cara membuat Scientific Phyton atau SciPy
menggunakan aplikasi Phyton.
2. Praktikan dapat memahami dan membedakan kategori unit konstanta yang
terprogram dalam SciPy.
3. Praktikan dapat memahami dan menggunakan SciPy untuk mencari nilai
minimal fungsi.
4. Praktikan dapat mengetahui dan menggunakan sparse data dalam
pemrogaman SciPy.
5. Praktikan dapat mengetahui dan menggunakan metode komponen yang
terhubung dalam pemrogaman SciPy
6. Praktik secara langsung oleh praktikan mengenai pembuatan SciPy beserta
tipe datanya.
Roots of an Equation
NumPy mampu menemukan akar untuk polinomial dan persamaan linier,
tetapi tidak dapat menemukan akar untuk persamaan nonlinier. Maka dari itu
penggunaan fungsi “optimize.root” dalam SciPy diperlukan. Fungsi ini
memerlukan dua argumen. Argumen yang pertama adalah “fun” yang
menandakan fungsi dari sebuah persamaan dan argument yang kedua adalah
“x()” yang menandakan tebakan awal untuk sebuah akar.
Finding Minima
Untuk mengecilkan sebuah fungsi maka dapat menggunakan fungsi SciPy
yaitu “scipy.optimize.minimize()”. Sama seperti roots of an equation fungsi
minimize akan memerlukan argument-argumen. Namun argument dalam
minimize akan lebih banyak. Argumen tersebut terdiri dari “fun”, “x()”,
“method”, “callback”, dan “option”
7.2.4. Sparse Data
Sparse data adalah Data jarang adalah data yang sebagian besar memiliki
elemen yang tidak digunakan (elemen yang tidak membawa informasi apa
pun). Pengertian lain dari sparse data adalah kumpulan data di mana sebagian
besar nilai item adalah nol. Dalam pengerjaannya SciPy memiliki modul yang
bisa digunakan untuk mengolah sparse data yaitu “scipy.sparse”. Dengan
menggunakan modul ini maka akan dihasilkan dua macam matriks. Berikut
penjelasan akan dua matriks tersebut
CSC
CSC (Compressed sparse column) digunakan untuk aritmatika yang
efisien dan pemotongan kolom yang cepat.
CSR
CSR (Compressed sparse row) digunakan untuk pengirisan baris cepat,
produk vektor matriks lebih cepat.
CSR Matrix
Matriks CSR dengan melewatkan sebuah array ke dalam fungsi
“scipy.sparse.csr_matrix()”. Matriks CSR ini dapat digunakan untuk
mencari sebuah item tertentu dan menghitung ada berapa banyak item
tersebut ada dalam sebuah matriks
Sparse Matrix Methods
Sparse Matrix Methods merupakan metode yang digunakan untuk
Melihat data yang disimpan (bukan item nol). Hal ini bisa didapatkan
dengan menggunakan properti “.data”, “count_nonzeros()”,
“sum_duplicates()”, dan “toscs()”.
7.2.5. Mencari Lintasan Terpendek dari Sebuah Grafik
Untuk mencari sebuah jalur terpendek dari sebuah grafik maka dapat
menggunakan beberapa metode. Penjelasan akan metode tersebut adalah
sebagai berikut.
Dijkstra
Metode dijkstra digunakan untuk mencari lintasan terpendek dalam suatu
graf dari satu elemen ke elemen lainnya. Argument yang dibutuhkan untuk
menjalankan metode ini adalah “return_predecessors”, “indices”, dan
“limit”.
Floyd Warshall
Metode “floyd_warshall()” digunakan untuk menemukan jalur terpendek
antara semua pasangan elemen.
Bellman Ford
Metode “bellman_ford()” dapat menemukan jalur terpendek antara semua
pasangan elemen, tetapi metode ini juga dapat menangani bobot negatif.
Depth First Order
Metode “depth_first_order()” mengembalikan kedalaman traversal pertama
dari sebuah node. Fungsi ini mengambil argumen yaitu grafik dan elemen
awal untuk melintasi grafik.
Breadth First Order
Metode “breadth_first_order()” mengembalikan traversal pertama yang
luas dari sebuah node. Fungsi ini mengambil argumen yaitu grafik dan
elemen awal untuk melintasi grafik.
7.2.6. Triangulation
Triangulasi poligon adalah membagi poligon menjadi beberapa
segitiga yang dengannya kita dapat menghitung luas poligon. Triangulasi
dengan titik-titik berarti membuat segitiga-segitiga yang tersusun atas
permukaan di mana semua titik yang diberikan berada pada setidaknya satu
titik sudut dari sembarang segitiga di permukaan.
7.2.7. Convex Hull
Convex hull adalah poligon terkecil yang mencakup semua titik yang
diberikan. Metode yang akan digunakan untuk membuat convex hull adalah
”ConvexHull()”.
7.2.8. KDTrees
KD Trees adalah struktur data yang dioptimalkan untuk kueri tetangga
terdekat. Dalam sekumpulan titik, menggunakan KDTrees dapat secara efisien
menanyakan titik mana yang paling dekat dengan titik tertentu. Metode
“KDTree()” digunakan mengembalikan objek KDTree. Metode “query()”
mengembalikan jarak ke tetangga terdekat dan lokasi tetangga.
Gambarb7.3 Konstanta pi
Pada gambar diatas, yaitu gambar 7.3 dilakukan percobaan Konstanta yang
ada di Scipy.Karena SciPy lebih fokus pada implementasi ilmiah, SciPy
menyediakan banyak konstanta ilmiah bawaan. Pada percobaan ini, praktikan
mencoba untuk menerapkan constants pada Pustaka scipy. Constants yang
dipakai pada percobaan kali ini adalah pi dengan memberi perintah
“print(constants.pi)” dimana hasilnya ialah 3.141592653589793. Lalu
menggunakan konstanta planck dengan memberi perintah
“print(constants.Planck)” yang hasilnya 6.62607015e-34.Constants pada
Pustaka ini bertujuan untuk memberikan konstanta sains dan akan sangat
membantu pada pengerjaan data science.
7.3.4. Konstanta Unit
7.3.7. Mass
Pada Gambar 7.7 ditunjukkan terdapat konstanta kategori mass. Apabila kita ingin
menampilkan konstanta kategori mass dalam kilo gram, maka dapat dilakukan
perintah print(constants.x). x merupakan ukuran massa yang terdapat dalam konstanta
kategori mass dan akan menghasilkan output seperti pada Gambar 7.7. Konstanta dari
kategori mass dapat dilihat pada Tabel 7.8.
7.3.8. Angle
Pada Gambar 7.9 terdapat konstanta kategori time. Apabila ingin menampilkan konstanta
kategori time dalam seconds, maka dapat dilakukan perintah print(constants.x). x
merupakan unit-unit kategori time yang terdapat dalam konstanta kategori time dan akan
menghasilkan output seperti pada Gambar 7.9. Konstanta dari kategori time dapat dilihat
pada Tabel 7.10.
7.3.10. Kategori Lenght
Gambar
7.26 Dijkstra
Pada gambar 7.28 dilakukan metode breadth first order yaitu akan
mengembalikan transversal luas pertama dari sebuag node.Fungsi ini
mengambil argument graph dan elemen awal untuk melintasi graph.
7.3.27. Trigulation
Asisten Pembimbing:
Adeev NP
Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
(Adeev NP)
BAB VIII
Percobaan 7
Machine Learning
8.1. Tujuan
1. Praktikan dapat mengetahui definisi dari machine learning pada
phyton.
2. Praktikan dapat memahami cara penggunaan dan manfaat dari
machine learning.
3. Praktikan dapat memahami dan membedakan tipe data yang akan
dianalisis oleh machine learning.
4. Praktikan dapat memahami dan menggunakan data untuk
menghasilkan nilai-nilai yang terdapat pada machine learning
pada python.
5. Praktikan dapat memahami macam-macam distribusi data dalam
machine learning pada python.
6. Praktikan dapat mengetahui bagaimana proses melakukan
machine learning pada python.
7. Praktikan dapat mengetahui dan memahami cara kerja regresi
dalam machine learning pada python.
8. Praktikan dapat mempraktikkan machine learning pada python.
Gambar 8.1
8.3.2. Median
Nilai median merupakan nilai tengah dari suatu array atau data
setelah Anda mengurutkan semua nilai secara berurutan dari kecil ke besar.
Modul NumPy memiliki metode untuk menemukan median tanpa harus
menghitungnya secara manual.
a) Median Biasa
Gambar 8.2.1
Gambar 1.2.2
8.3.3. Mode
Gambar 8.3.
Gambar 8.4.
Gambar 8.5.
Pada gambar 8.5 dilakukan percobaan varians. Varians adalah angka lain
yang menunjukkan seberapa tersebar nilainilainya. Varians adalah jumlah
rata-rata dari perbedaan kuadrat. Apabila menggunakan machine learning
dalam menghitung varians dapat menggunakan program seperti pada Gambar
1.5 dengan mengaplikasikan fungsi var pada pemrograman tersebut. Untuk
menghitung varians, dapat menggunakan numpy pada python.Fungsi untuk
mencari Ivarians yaitu [x = numpy.var(kecepatanmobil)] setelah itu lakukan
menuliskan [print("nilai variance yaitu x= ",x)], output adalah 131.25
8.3.6. Percentile
Gambar 8.6.
Persentil digunakan dalam statistik untuk memberikan angka yang
menggambarkan nilai bahwa persentase tertentu dari nilai lebih rendah dari.
Gambar 8.6 merupakan contoh dari pemrograman untuk mengetahui nilai
persentase dari 95 dan 65.Untuk mencari precentile dapat menggunakan fungsi
[x=numpy.percentile(variabel, nilai persentil)],yaitu f =
numpy.percentile(perc, 95) dan l = numpy.percentile(perc, 65) setelah itu
tuliskan print(X) untuk mencetak hasil persentil yang sudah di hitung. Pada
program yang sudah dibuat, persentil dari 95 adalah 98,25 dan persentil dari 65
adalah 87,75.
Gambar 8.7.
Gambar8.8.
Gambar 8.9.
Pada gambar Gambar 8.9 merupakan contoh dari distribusi big data
dengan menggunakan parameter pada array yang berisi nilai 400000 angka
acak dan akan ditampilkan dengan histogram 100 bar.
Gambar 8.10.
Gambar 8.11.
Gambar 8.12.
Gambar 8.13.
Gambar 8.14.
Gambar 8.15.
Dengan menggunakan informasi yang telah dikumpulkan untuk
memprediksi dimasa depan. Contoh prediksi nilai mahasiswa yang berusia 23
tahun dengan menggunakan fungsi def fungsi(Umur) seperti pada Gambar
8.15.Sekarang kita dapat menggunakan informasi yang telah dikumpulkan
untuk memprediksi nilai masa depan menggunakan regresi linear. Untuk
memprediksi nilai masa depan, tambahkan [umurnilai = fungsinih(23) pada
program sebelumnya, lalu lakukan print (umurnilai) maka nilai yang keluar
adalah nilai ketika x=23 yaitu 73.03010033444815 atau 73.
Gambar 8.16.
Gambar 8.17.
Gambar 8.18.
Gambar 8.19.
Gambar 8.20.1
Gambar 8.20.2
Gambar 8.21.
Gambar 1.22.
Gambar 8.23.
Gambar 8.24.
Pada gambar 8.24 ditunjukkan bahwa tugas pada Multiple
Regression adalah memprediksi emisi CO2 dari sebuah mobil ketika kita hanya
mengetahui berat dan volumenya. Saat kumpulan data diskalakan, kita harus
menggunakan skala saat memprediksi nilai. pada program diatas adalah
program untuk memprediksi emisi CO2 dari mobil 1,2 liter yang memiliki
berat 1.400 kilogram yang memiliki output [90.27541178]
.
Gambar 8.25.
Gambar 8.26.1.
Gambar 8.26.2.
Gambar 8.27.
Gambar 8.28.1
Gambar 8.28.2
Gambar 8.29.
Pada gambar 8.29 Melalui evaluasi yang telah dilakukan, model baik-
baik saja sehingga dapat digunakan untuk memprediksi nilai-nilai baru.Pada
gambar 29, terdapat program untuk menghitung Berapa banyak uang yang
akan dihabiskan oleh seorang pembeli, jika dia tetap berada di toko selama 6
menit? Contoh tersebut memperkirakan pelanggan menghabiskan
189.86407011263668 atau 189,8dolar seperti pada gambar.
8.4. Kesimpulan
1. Modul NumPy memiliki metode untuk menemukan mean, median, tanpa
harus menghitung secara manual.
2. Modul SciPy pada python memiliki metode untuk mencari mode.
3. Fungsi std() dapat digunakan untuk mencari standar deviasi pada python.
4. NumPy dilengkapi dengan sejumlah metode untuk membuat kumpulan
data acak (data distribution).
5. Regresi linier merupakan garis yang menggunakaan hubungan antara titik-
titik data untuk menggambar garis lurus melalui semuanya.
6. Regresi polynomial, sama seperti regresi linier, menggunakan hubungan
antara variabel x dan y menemukan cara terbaik untuk menarik garis
melalui titik-titik data.
7. Multiple Regression menggunakan lebih dari satu nilai independen saat
mengekseskusi program.
8. Koefisien merupakan faktor yang menggambarkan hubugan dengan
variabel yang tidak diketahui (biasanya variabel x).
9. Train / Test adalah metode untuk mengukur tingkat akurasi dari model
yang sudah dibuat.
10. Training set harus berupa pilihan acak 80% dari data asli. Test Set harus
20% sisanya.
Bab IX
Pandas
Asisten Pembimbing:
Albertus Jalu & Nama/NIM Peserta:
Yodha Bhakti Wirandanu/21060121140173
(Albertus Jalu)
BAB IX
PERCOBAAN VIII
PANDAS
9.1 Tujuan
1. Praktikan dapat memahami cara menggunakan Pandas dengan struktur
array NumPy pada bahasa Python.
2. Praktikan dapat memahami macam-macam dan mekanisme objek
Series dan DataFrame dalam Pandas.
3. Praktikan dapat memahami macam-macam dan mekanisme objek
indeks dalam Pandas.
4. Praktikan secara langsung oleh praktikan mengenai pembuatan
mekanisme objek dalam Pandas.
Pada Gambar 9.1,apabila ingin menginstal Pandas pada sistem Python, NumPy harus
diinstal terlebih dahulu. Apabila sudah membuat pustaka dari sumber, diperlukan alat
yang sesuai untuk mengkompilasi C dan sumber Python tempat Pandas dibangun. Detail
tentang instalasi ini bisa ditemukan di dokumentasi Pandas. Perintah yang dijalankan
dalam menginstal Pandas adalah “import Pandas as pd” seperti pada Gambar 1.1.
Setelah Pandas diinstal, Pandas dapat dilakukan pengecekan terkat versi Pandas yang
digunakan dengan menggunakan perintah print(“Versi dari Pandas adalah”) dan output
yang akan dihasilkan adalah Versi dari Pandas yang diimpor adalah 1.3.4. Pada Gambar
1.2 terdapat contoh program dari pengecekan versu Pandas.
9.3.2. Mengenal Objek Pandas
Pada Gambar 9.4 ditunjukkan series dalam Pandas adalah array satu
dimensi dari data yang diindeks. Series dapat dibuat dari list atau array
seperti Gambar 9.4. Pada Gambar tersebut terdapat dari list pengukuran.
Pada program tersebut menggunakan pd.Series sehingga output yang
dihasilkan dari data pada list tersebut adalah satu dimensi dan memiliki
indeks seperti pada Gambar 91.4 yaitu sebagai berikut:
0 0.10
1 0.15
2 0.20
3 0.25
4 0.30
5 0.35
6 0.40
7 0.45 dtype: float64
9.3.4. Find a Values
Pada Gambar 9.5 , dilakukan percobaan untuk find a values, nilai dari
list pengukuran hanyalah array NumPy yang sudah ada pada sebelum
menggunakan tool pd.series. Sehingga apabila dilakukan perintah
Pengukuran.values seperti pada Gambar 1.5, maka output yang dihasilkan
adalah array([0.1 , 0.15, 0.2 , 0.25, 0.3 , 0.35, 0.4 , 0.45])
Apabila ingin menampilkan data pada indeks 0 sampai indeks ke-6, maka dapat dilakukan
perintah print("urutan data pada indeks 0 sampai 6 adalah" urutan[:6]). Output yang
dihasilkan dari perintah tersebut dapat dilihat pada Gambar 9.7. Apabila ingin
menampilkan data pada indeks ke3 sampai ke-6, maka dapat dilakukan perintah
print("Urutan data antara indeks ke-3 sampai ke-6 adalah")urutan[3:6].Output yang
dihasilkan dari perintah tersebut dapat dilihat pada Gambar 9.7.
Pada Gambar 9.11 terdapat contoh dari series yang akan dibuat dimana
indeks diambil dari kunci yang diurutkan. Apabila perintah print("Jumlah
peminat olahraga golf adalah",Jumlah_Peminat_Olahraga["Golf"]) dan
akan menghasilkan output Jumlah peminat olahraga golf adalah 1207
Pada Gambar 9.15 terdapat contoh series dengan menggunakan pd.Series pada data yang
berupa skalar. Maksud skalar tersebut adalah dengan menggunakan nilai yang diulang-
ulang untuk memenuhi indeks yang telah ditentukan. Pada Gambar 9.15 menggunakan
skalar 20 yang artinya nilai 7 akan diulang-ulang sampai semua indeks terpenuhi.
Pada Gambar 9.16 terdapat data series dengan menggunakan pd.Series yang berupa
kamus (dictionary). Indeks default ke kunci kamus yang diurutkan seperti output yang
dihasilkan pada Gambar 9.16.
Gambar 9.18 Series with explisit index
Bahkan jika beberapa kunci dalam kamus tidak ada, Pandas akan
mengisinya dengan nilai NaN (Not a Number atau “Bukan angka”). Hal
tersebut dapat dibuktikan dengan program yang dapat dilihat pada Gambar
9.25. Kata kunci z pada indeks 0 tidak memiliki nilai sehingga output yang
dihasilkan NaN sedangkan kunci m pada indeks 1 tidak memiliki nilai
sehingga output yang dihasilkan adalah NaN.
DataFrame dapat dibangun dari kamus objek seri. Gambar 9.26 merupakan program dari
DataFrame dengan kamus objek seri.
Gambar 9.28 DataFrame dari array dua dimensi
Diberikan array data dua dimensi. Dari data tersebut bisa dibuat dari
DataFrame dengan nama kolom dan indeks yang ditentukan. Jika
dihilangkan, indeks integer akan digunakan untuk masing-masing. Pada
Gambar 9.27 terdapat contoh dari DataFrame dari array dua dimensi. Nama
kolom dari data tersebut adalah foo dan bar. Indeks yang digunakan dalam
DataFrame tersebut adalah string dengan huruf m-t. Sedangkan isi dari
DataFrame tersebut adalah random data.
Satu perbedaan antara objek indeks dan array NumPy adalah bahwa
indeks tidak dapat diubah yaitu mereka tidak dapat dimodifikasi melalui
cara normal. Apabila nilai dari indeks akan diubah maka akan menghasilkan
output error seperti pada Gambar 9.32. Kekekalan ini membuatnya lebih
aman untuk berbagi indeks antara beberapa DataFrames dan array, tanpa
potensi efek samping dari modifikasi indeks yang tidak disengaja.
9.3.15. Indeks sebagai set yang dipesan
Objek series bahkan dapat dimodifikasi dengan sintaksis seperti kamus. Cara yang dapat
dilakukan adalah dengan menetapkan ke kunci baru dan dapat memperluas seri dengan
menetapkan ke nilai indeks baru. Pada Gambar 9.36 terdapat contoh dari modifikasi data
dari series dengan menambahkan itemnya dan indeks yaitu indeks a dengan nilai 2.3.
Tipe data pada series yang dimodifikasi tersebut adalah float64.
9.3.17. Series sebagai Array Satu Dimensi
Atribut nilai dapat digunakan untuk memeriksa nilai dari data array.
Apabila dilakukan perintah Olahraga_Data.values maka akan menghasilkan
output seperti pada Gambar 9.47.