Kursus Pengembangan Python Lanjutan
Bab
>
Tingkat
Modul Matematika
Modul Statistik
Tujuan
Turunlah ke kantor dan catat beberapa data statistik untuk metrik pertanian menggunakan modul statistik.
Di bawah tangga dari loteng terdapat sebuah kantor, di sana berkas-berkas disimpan yang berisi data penting untuk pertanian. Akan sangat berguna untuk memproses data tersebut dan mendokumentasikannya guna memproyeksikan pertumbuhan masa depan pertanian. Untuk melakukan ini kita akan mengimplementasikan penggunaan Modul statistik. Modul memungkinkan kita mengimpor alat seperti fungsi, kelas, dan lainnya yang memungkinkan memperluas fungsionalitas Python. Untuk mengatur sebuah modul, Anda menulis import di depan nama modul, betul, Anda telah menggunakan modul untuk mengontrol pemain sepanjang waktu ini!
import statistics
Modul ini menambahkan beberapa fungsi untuk menghitung statistik, berikut adalah beberapa yang akan kita gunakan untuk memproses data statistik di kantor:
statistics.mean(): Menghitung rata-rata dari satu set datastatistics.median(): Menghitung nilai tengah dari satu set datastatistics.median_low(): Menghitung nilai median terendah dari satu set datastatistics.median_high(): Menghitung nilai median tertinggi dari satu set datastatistics.mode(): Menghitung kecenderungan sentral dari satu set data, dengan kata lain nilai yang paling banyak muncul dalam sampel data.statistics.variance(): Menghitung varians dari nilai-nilai dalam satu set data. Angka yang tinggi berarti nilai-nilai tersebar, angka yang rendah berarti nilai-nilai berdekatan.
Mulailah dengan berjalan ke tanda X berwarna terang di depan lemari arsip, gunakan fungsi read() untuk memeriksa berkas dan membaca datanya. Ada tiga (3) laporan untuk dibaca di lapangan, buat tiga (3) list untuk menyimpan data untuk masing-masing: weather_report, export_report dan harvest_report. Data dalam setiap laporan memuat enam (6) nilai yang mewakili data yang berkaitan dengan enam (6) bulan pertama tahun ini. Catat dan simpan enam (6) nilai di setiap list saat Anda membacanya.
Setelah Anda mencatat dan menyimpan data dalam list, berjalanlah ke tanda X gelap di atas karpet biru. Buat lima variabel dengan nama: mean, median, low, high dan variance. Variabel-variabel ini akan menyimpan nilai dari fungsi statistik yang telah kita paparkan sebelumnya. Yang akan kita lakukan adalah menambahkan list laporan yang ingin kita dapatkan statistiknya, ini akan menghasilkan statistik untuk data yang diberikan.
mean = statistics.mean( report list ) median = statistics.median( report list ) low = statistics.median_low( report list ) high = statistics.median_high( report list ) variance = statistics.variance( report list )
Dengan data statistik ini kita akan menggunakan fungsi write() untuk mencatat data dalam memo, pengedit kode akan memiliki urutan yang sudah ditulis sebelumnya. Di tanda X karpet biru, garis bawahi variabel-variabel untuk export_report dan catat. Di tanda X karpet hijau, garis bawahi variabel-variabel untuk harvest_report dan catat. Di tanda X karpet merah, garis bawahi variabel-variabel untuk weather_report dan catat. Anda harus mengisi variabel-variabel untuk setiap laporan terlebih dahulu sebelum menuliskannya agar data statistik yang sesuai tercatat untuk masing-masing.
Setelah semua data statistik telah dicatat, berjalanlah ke tanda X emas dan buat sebuah list baru bernama group_report. Pada list ini Anda akan menambahkan export_report dan harvest_report dalam urutan tersebut. Ini akan membuat list bertingkat yang tidak dapat digunakan dengan fungsi statistik, untuk mengatasinya gunakan pemahaman List (List comprehension) untuk meratakan list bertingkat tersebut, seperti ini: group_report= [item for sublist in group_report for item in sublist]
Siapkan dua variabel lagi: variance dan mode dengan fungsi statistik masing-masing. Tambahkan list group_report ke fungsi statistik variance, dan tambahkan list weather_report ke fungsi statistik mode, seperti ini: variance = statistics.variance( group_report ), mode = statistics.mode( weather_report ). Eksekusi fungsi write() yang telah disiapkan di pengedit kode untuk variabel-variabel ini guna menyelesaikan level.