Cara menggunakan STDEV pada Python

Cara menggunakan STDEV pada Python

Nurul Huda 19 April 2021


  1. Beranda
  2. Python
  3. Latihan Logika
  4. Python: Program Menghitung Standar Deviasi (Simpangan Baku) 🐍

Cara menggunakan STDEV pada Python

  • Python
  • Latihan Logika

Daftar Isi

    • Apa itu Standar Deviasi?
    • Rumus Standar Deviasi atau Simpangan Baku
    • Contoh Perhitungan
    • Sebelum Mulai
    • 1. Menghitung Standar Deviasi Secara Manual
    • 2. Menghitung Standar Deviasi Menggunakan Fungsi statistics.stdev()
    • Kode Program Lengkap
    • Pertemuan Selanjutnya
    • Referensi

Apa itu Standar Deviasi?

Standar deviasi atau biasa disebut simpangan baku merupakan nilai statistik yang menjelaskan tingkat homogenitas (atau keseragamanan) dari suatu data kelompok [1].

Nilai simpangan baku bisa berupa angka 0 atau selainnya:

  • Jika simpangan baku bernilai 0, itu menandakan setiap elemen dari suatu data kelompok bersifat indentik satu sama lain.
  • Dan jika tidak sama dengan 0 (bisa negatif atau positif), itu menunjukkan bahwa titik data individu lebih kecil atau lebih besar dari rata-rata.

Rumus Standar Deviasi atau Simpangan Baku

Ada dua rumus untuk menghitung standar deviasi. Rumus yang pertama adalah untuk data populasi, dan yang kedua adalah untuk data sampel [2].

Berikut ini rumusnya:

Perbedaan dari kedua rumus tersebut hanya terletak pada angka pembagi. Dimana pembagi untuk data populasi adalah jumlah semua data (n), dan data pembagi untuk data sampel adalah jumlah semua data dikurangi satu (n-1).

Contoh Perhitungan

Mari kita simulasikan cara menghitungnya. Karena jika kita bisa menghitungnya di atas kertas (secara manual), berarti kita juga bisa menghitungnya menggunakan bahasa pemrograman.

Sebagai contoh kita memiliki data seperti ini:

data = [90, 84, 88, 83, 87, 85, 83, 71]

Langkah pertama, hitung mean atau rata-rata dari data tersebut:

===== Hitung Rata-Rata =====
rerata = (90 + 84 + 88 + 83 + 87 + 85 + 83 + 71) / 8
rerata = 83.875

Setelah mendapatkan nilai rata-rata, kita bisa mulai menghitung nilai variannya:

===== Hitung varian =====
(90 - 83.875) ^ 2 = 37.515625
(84 - 83.875) ^ 2 = 0.015625
(88 - 83.875) ^ 2 = 17.015625
(83 - 83.875) ^ 2 = 0.765625
(87 - 83.875) ^ 2 = 9.765625
(85 - 83.875) ^ 2 = 1.265625
(83 - 83.875) ^ 2 = 0.765625
(71 - 83.875) ^ 2 = 165.765625

total = 37.515625 + 0.015625 + 17.015625
        + 0.765625 + 9.765625 + 1.265625
        + 0.765625 + 165.765625
total = 232.875

varian = 232.875 / (7) <-- Kita pakai n-1
varian = 33.267857142857146

Dari situ, kita kemudian bisa menghitung simpangan bakunya dengan meng-akarkuadrat-kan nilai varian:

===== Simpangan Baku =====
s = akar kuadrat dari varian
s = akar kuadrat dari (33.267857142857146)
s = 5.767829500154902

Sebelum Mulai

Sebelum mulai ngoding, saya asumsikan teman-teman di sini telah familiar dengan materi dasar-dasar python, terlebih 3 materi berikut:

  • Operator
  • List
  • Perulangan For

Karena program yang akan kita buat akan sangat berkaitan dengan materi 3 di atas.

1. Menghitung Standar Deviasi Secara Manual

Dari simulasi yang telah kita lakukan, kita punya gambaran alur dari program yang akan kita tulis:

  1. Yang pertama hitung dulu rata-ratanya
  2. Kemudian cari variannya
  3. Yang terakhir kita akar-kuadratkan (sqrt) nilai varian

Begini kira-kira kode programnya untuk langkah pertama:

import statistics

data = [90, 84, 88, 83, 87, 85, 83, 71]

rerata = statistics.mean(data)

Langkah berikutnya, hitung varian:

list_varian = []
for bilangan in data:
  list_varian.append(
    (bilangan - rerata) ** 2
  )

varian = sum(list_varian) / (len(data) - 1)

Atau kalau teman-teman lebih suka versi satu baris, kode di atas bisa diganti seperti ini:

list_varian = [(bilangan - rerata) ** 2 for bilangan in data]
varian = sum(list_varian) / (len(data) - 1)

Langkah terakhir, kita hitung standar deviasinya dengan fungsi statistics.sqrt() (untuk mencari akar kuadrat):

simpangan_baku = statistics.sqrt(varian)

print(f'data \t\t -> {data}')
print(f'simpangan baku \t -> {simpangan_baku}')

Output:

data             -> [90, 84, 88, 83, 87, 85, 83, 71]
simpangan baku   -> 5.767829500154902

2. Menghitung Standar Deviasi Menggunakan Fungsi statistics.stdev()

Untuk cara kedua cukup mudah, kita hanya perlu memanggil fungsi yang sudah disediakan dalam modul statistics. Kedua fungsi tersebut adalah:

  • fungsi statistics.stdev(): untuk menghitung standar deviasi dari data sampel
  • fungsi statistics.pstdev(): untuk menghitung standar deviasi dari data populasi

Berikut ini kode programnya:

import statistics

data = [90, 84, 88, 83, 87, 85, 83, 71]

simpangan_baku = statistics.stdev(data)
simpangan_baku_populasi = statistics.pstdev(data)

print(simpangan_baku)
print(simpangan_baku_populasi)

Output:

5.767829500154902
5.395310463726809

Kode Program Lengkap

Jika kalian ingin mendapatkan kode program lengkap dari pertemuan kali ini, kalian bisa mendapatkannya pada repositori python-latihan-logika di github.

Jangan lupa kasih star ya!⭐🌟

Pertemuan Selanjutnya

Insyaallah pada pertemuan yang akan datang kita akan membuat program kalkulator sederhana.

Gimana caranya?

Simak terus tutorial latihan logika python di jagongoding!

Jika ada pertanyaan atau sesuatu yang ingin didiskusikan, atau bahkan request tutorial, jangan sungkan-sungkan untuk berkomentar, ya! 😁

Terima kasih banyak!

Referensi

[1] https://gurubelajarku.com/simpangan-baku/ - diakses tanggal 24 April 2021
[2] https://stackabuse.com/calculating-variance-and-standard-deviation-in-python/ - diakses tanggal 24 April 2021

Mengangkangi Python: Level 1

Ikuti Kursus Cara Paling Cepat Menguasai Bahasa Python.