DSDataLabPRAKTIKUM PHP NATIVE Lihat semua soal ↗
MODUL PRAKTIKUM · SOAL 04

Statistik Deskriptif & ASCII Chart

Menghitung ukuran pemusatan dan penyebaran data serta menampilkan distribusi frekuensi dalam diagram teks.

04/ 05

Dataset nilai

Contoh kumpulan nilai numerik yang dipakai untuk demonstrasi perhitungan.

657072757578808282828588909295100

Jumlah data: 16 nilai · Diurutkan dari yang terkecil ke terbesar.

Hasil statistik deskriptif

Standar deviasi dihitung sebagai populasi, yaitu varians dibagi jumlah seluruh data (N).

Mean81,94rata-rata
Median82,00nilai tengah
Modus82frekuensi tertinggi: 3×
Varians populasi84,56rata-rata kuadrat selisih
Standar deviasi9,20akar dari varians
Jumlah data16rekaman numerik

Visualisasi frekuensi ASCII

Setiap karakter # mewakili satu nilai pada rentang tersebut.

60–69 # 1
70–79 ##### 5
80–89 ###### 6
90–100 #### 4

Kode PHP Native

Perhitungan mean, median, modus, standar deviasi, dan frekuensi rentang nilai.

$data = [65,70,72,75,75,78,80,82,82,82,85,88,90,92,95,100]; sort($data); $n = count($data); $mean = array_sum($data) / $n; // Median $median = ($n % 2) ? $data[(int)($n / 2)] : ($data[$n/2 - 1] + $data[$n/2]) / 2; // Modus $frekuensi = array_count_values($data); $modus = array_keys($frekuensi, max($frekuensi)); // Standar deviasi populasi $variance = 0; foreach ($data as $x) $variance += ($x - $mean) ** 2; $stdDev = sqrt($variance / $n); // Frekuensi kelompok, lalu tampilkan str_repeat("#", jumlah) $rentang = ["60-69"=>0, "70-79"=>0, "80-89"=>0, "90-100"=>0];
Catatan: Jika beberapa nilai memiliki frekuensi tertinggi yang sama, semuanya dapat menjadi modus. Diagram ASCII ini merupakan visualisasi berbasis teks, bukan grafik eksternal.