Dengan ini, saya menyatakan bahwa saya mengerjakan ujian ini secara jujur, tanpa bantuan yang tidak dibenarkan. Jika
nantinya terbukti bahwa pernyataan saya ini tidak benar, maka saya bersedia menerima semua konsekuensinya sesuai
aturan kuliah dan peraturan ITB.
Nama:
NIM:
Print
>>print(df)
Country Capital Population
0 Belgium Brussel 11190846
1 India New Delhi 1303171035
2 Brazil Brasilia 207847528
Selection
>>df[1:]
Country Capital Population
1 India New Delhi 1303171035
2 Brazil Brasilia 207847528
>>df.loc[[0],["Country"]]
"Belgium"
>>df.ix(1,"Capital")
"New Delhi"
Sort
>>df.sort_values(["Country"], ascending=[1]) #sort ascending by Country
Statistic
>>df.sum() #sum of values
>>df.min() #minimum values
>>df.max() #maximum values
>>df.std() #standard deviation values
>>df.mean() #mean values
>>df.count() #number of non-NA values
>>df.describe() #summary statistics
>>df["Country"].value_counts() #frequency distribution of Country
Correlation
>>df1["valuesX"].corr(df1["valuesY"]) #correlation between valuesX and valuesY
Plotting
>>df.plot(kind="bar", x="Country", y="Population", title="Population per Country",
color="red") #plot bar char dengan batang berwarna merah
>>plt.show()
>>df2[["age"]].plot(kind="hist",bins=[0,20,40,60,80,100],rwidth=0.8) #histogram
>>plt.show()
Keterangan:
kind dapat bernilai bar, barh, pie, hist, line, scatter, area, dll.
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 3 dari 8 Kelas: _________________________________
1.b. Dunia pendidikan dewasa ini tidak terlepas dari pemanfaatan teknologi computing. Uraikan 3 (tiga) buah contoh
pemanfaatan teknologi computing dalam meningkatkan kualitas pendidikan, khususnya di Indonesia.
Tuliskan jawaban soal 1 di bawah ini atau di halaman kosong di balik hlm. 3 secara singkat, padat, tapi dengan
argumen/deskripsi yang jelas. Gunakan Bahasa Indonesia yang baik dan benar. Jangan lupa memberikan nomor
soal dengan jelas.
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 4 dari 8 Kelas: _________________________________
import pandas as pd
df = pd.read_csv("D:/datanilai.csv")
Tuliskan hasil dari program jika kode 2.a s.d. 2.e berikut dieksekusi.
Tuliskan jawaban tiap butir soal 2.a. s.d. 2.e di sisa halaman ini atau di halaman kosong di balik hlm. 4 dan 5
(jangan lupa memberikan nomor soal dengan jelas).
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 5 dari 8 Kelas: _________________________________
import pandas as pd
df = pd.read_csv("D:/datanilai.csv")
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
2.g. Menampilkan nilai_tes_1 dan nilai_tes_2 setiap mahasiswa dalam 1 grafik vertical bar chart. Berikan juga
judul “Daftar Nilai Kursus” untuk grafik yang Anda buat.
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv("D:/datanilai.csv")
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
plt.show()
2.h. Menampilkan komposisi banyaknya siswa berdasarkan jenis_kelamin menggunakan grafik pie chart.
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv("D:/datanilai.csv")
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
plt.show()
2.i. Menampilkan distribusi perolehan nilai_akhir dalam sebuah histogram dengan kelompok nilai sbb: 0-40, 41-
60, 61-80, 81-100 dengan batang berwarna hijau (green).
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv("D:/datanilai.csv")
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
plt.show()
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 6 dari 8 Kelas: _________________________________
Perhatikan data penjualan sebuah perusahaan dalam file bernama “sales.csv” sbb.:
Asumsikan data ini telah di-load dalam suatu dataframe bernama df misalnya dengan perintah sbb.:
import pandas as pd
df = pd.read_csv("D:/sales.csv")
UnitsSold
count 20
mean 1703.75
std 831.39
min 345.00
25% 944.75
50% 1716.50
75% 2444.25
max 2945.00
Berikan penjelasan apa makna dari: mean, std, min, max, dan percentile 25%, 50%, dan 75%. Penjelasan harus
mencakup tidak hanya arti dari setiap fungsi statistik, tetapi apa yang bisa dibaca/dipahami terkait data di atas.
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 7 dari 8 Kelas: _________________________________
i. Membandingkan total Sales dan total Profit untuk tiap jenis Product pada tahun 2014.
ii. Menampilkan komposisi (persentase) berapa total UnitsSold untuk tiap jenis Product.
iii. Menampilkan perkembangan jumlah Sales dari bulan ke bulan selama tahun 2013 dan 2014.
iv. Mengetahui hubungan/korelasi antara kolom Sales dengan Profit.
d. Perusahaan ingin mengetahui 3 (tiga) Product yang memberikan total Profit paling tinggi. Berikan usulan teknik
analisis data yang dapat digunakan untuk menghasilkan pengetahuan tersebut.
Bonus: Buatlah program dalam Python (hanya dinilai jika pertanyaan utama sudah dijawab).
Tuliskan jawaban di sisa halaman 7 dan di balik kosong di balik hlm. 6 dan 7.
UAS KU1072/Pengenalan Teknologi Informasi B NIM: _________________________________
Tanggal: 13 Desember 2018 Waktu: 120 menit Nama: _________________________________
Halaman 8 dari 8 Kelas: _________________________________
# KAMUS LOKAL
# Tuliskan dalam komentar nama-nama variabel yang dibutuhkan dan type-nya di bawah ini
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………
# ALGORITMA
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………
Soal 4.b. Root Mean Square Deviation [Bobot : 20% + Bonus: 10%]
Root Mean Square Deviation (RMSD) adalah salah satu jenis pengukuran yang sering digunakan untuk mengetahui
kualitas sebuah model/estimator dalam memberikan prediksi nilai data. RMSD akan mengukur perbedaan antara nilai
yang teramati (dari suatu populasi atau sampel) dengan nilai hasil prediksi yang diberikan oleh model komputasi yang
dibuat. Semakin kecil nilai RMSD, menunjukkan semakin baik model komputasi yang dibangun. Formula dari RMSD
adalah sebagai berikut.
∑𝑛𝑖=1(𝑦𝑡 − 𝑦𝑜 )2
𝑅𝑀𝑆𝐷 = √
𝑛
dengan: n : banyaknya data,
𝑦𝑡 : nilai sebuah data yang teramati,
𝑦𝑜 : nilai hasil prediksi model komputasi.
Buatlah sebuah program Python yang menerima masukan dari user banyaknya data yang akan dipelajari, misalnya n.
Jika n ≤ 0, maka program memberikan pesan: “Tidak ada data yang tersedia”.
Jika n > 0, program akan meminta masukan dari user berupa 2 (dua) buah array dengan elemen bilangan riil, masing-
masing berukuran n, misalnya T1 dan T0. T1 merepresentasikan data yang teramati, sedangkan T0 merepresentasikan
data hasil prediksi model komputasi. Selanjutnya, program menghitung nilai RMSD berdasarkan masukan T0 dan T1
sesuai rumus di atas dan menuliskan hasilnya ke layar.
Bonus: Buatlah flowchart untuk program yang diminta (hanya dinilai jika program di atas sudah dibuat).
Petunjuk: Untuk menghitung 𝑥 2 gunakan: 𝑥 ∗∗ 2, sedangkan untuk menghitung √𝑥 gunakan: 𝑥 ∗∗ (0.5).
Tuliskan jawaban butir 4.b. di halaman kosong di balik hlm. 8. Jika masih kurang, gunakan halaman kosong di
balik hlm. 2 dengan memberikan petunjuk dan nomor soal yang jelas.