šŸ› ļø

Whiz Tools

Build • Create • Innovate

Comprehensive T-Test Calculator for Statistical Analysis

Lakukan semua jenis t-test: t-test sampel tunggal, t-test sampel dua, dan t-test berpasangan. Kalkulator ini membolehkan anda menjalankan ujian hipotesis statistik untuk purata, membantu dalam analisis data dan tafsiran hasil.

Kalkulator T-Test

sampleDataDescription
šŸ“š

Dokumentasi

Kalkulator T-Test

Pengenalan

T-test adalah alat statistik asas yang digunakan untuk menentukan sama ada terdapat perbezaan yang signifikan antara purata kumpulan. Ia digunakan secara meluas dalam pelbagai bidang seperti psikologi, perubatan, dan perniagaan untuk pengujian hipotesis. Kalkulator ini membolehkan anda melakukan semua jenis t-test:

  • T-Test Satu Sampel: Menguji sama ada purata satu kumpulan berbeza dari nilai yang diketahui.
  • T-Test Dua Sampel (Sampel Bebas): Membandingkan purata dua kumpulan bebas.
  • T-Test Berpasangan: Membandingkan purata dari kumpulan yang sama pada masa yang berbeza (contohnya, sebelum dan selepas rawatan).

Jenis T-Test

Data Sampel Purata Populasi T-Test Satu Sampel Sampel 1 Sampel 2 Perbezaan Purata T-Test Dua Sampel Sebelum Selepas Perbezaan T-Test Berpasangan

Cara Menggunakan Kalkulator Ini

  1. Pilih Jenis T-Test:

    • T-Test Satu Sampel
    • T-Test Dua Sampel
    • T-Test Berpasangan
  2. Masukkan Input yang Diperlukan:

    • Untuk T-Test Satu Sampel:

      • Purata Sampel (xˉ\bar{x})
      • Penyimpangan Piawai Sampel (ss)
      • Saiz Sampel (nn)
      • Purata Populasi (μ0\mu_0)
    • Untuk T-Test Dua Sampel:

      • Purata Sampel 1 (xˉ1\bar{x}_1)
      • Penyimpangan Piawai Sampel 1 (s1s_1)
      • Saiz Sampel 1 (n1n_1)
      • Purata Sampel 2 (xˉ2\bar{x}_2)
      • Penyimpangan Piawai Sampel 2 (s2s_2)
      • Saiz Sampel 2 (n2n_2)
      • Andaian Varians: Pilih sama ada varians dianggap sama atau tidak sama.
    • Untuk T-Test Berpasangan:

      • Data Perbezaan: Masukkan perbezaan berpasangan.
      • Atau, masukkan Purata Perbezaan (dˉ\bar{d}), Penyimpangan Piawai Perbezaan (sds_d), dan Saiz Sampel (nn).
  3. Tetapkan Tahap Signifikansi (α\alpha):

    • Pilihan biasa adalah 0.05 untuk tahap keyakinan 95% atau 0.01 untuk tahap keyakinan 99%.
  4. Pilih Arah Ujian:

    • Ujian Dua Arah: Menguji untuk sebarang perbezaan.
    • Ujian Satu Arah: Menguji untuk perbezaan arah (nyatakan jika menguji untuk lebih besar atau lebih kecil).
  5. Klik Butang "Kira":

    • Kalkulator akan memaparkan:

      • T-Statistik
      • Darjah Kebebasan
      • P-Nilai
      • Kesimpulan: Sama ada untuk menolak atau tidak menolak hipotesis nol.

Andaian

Sebelum menggunakan t-test, pastikan bahawa andaian berikut dipenuhi:

  • Normaliti: Data harus diedarkan secara normal.
  • Independensi: Pemerhatian mesti bebas antara satu sama lain.
    • Untuk T-Test Dua Sampel, dua kumpulan harus bebas.
    • Untuk T-Test Berpasangan, perbezaan harus bebas.
  • Kesamaan Varians:
    • Untuk T-Test Dua Sampel dengan Varians Sama, varians kedua populasi harus sama (homoscedasticity).
    • Jika andaian ini tidak dipenuhi, gunakan T-Test Welch (varians tidak sama).

Formula

T-Test Satu Sampel

Statistik t dikira sebagai:

t=xĖ‰āˆ’Ī¼0snt = \frac{\bar{x} - \mu_0}{\frac{s}{\sqrt{n}}}
  • xˉ\bar{x}: Purata sampel
  • μ0\mu_0: Purata populasi di bawah hipotesis nol
  • ss: Penyimpangan piawai sampel
  • nn: Saiz sampel

T-Test Dua Sampel (Sampel Bebas)

Varians Sama Dianggap
t=xˉ1āˆ’xˉ2sp1n1+1n2t = \frac{\bar{x}_1 - \bar{x}_2}{s_p \sqrt{\frac{1}{n_1} + \frac{1}{n_2}}}

Penyimpangan piawai terkumpul (sps_p):

sp=(n1āˆ’1)s12+(n2āˆ’1)s22n1+n2āˆ’2s_p = \sqrt{\frac{(n_1 - 1)s_1^2 + (n_2 - 1)s_2^2}{n_1 + n_2 - 2}}
Varians Tidak Sama (T-Test Welch)
t=xˉ1āˆ’xˉ2s12n1+s22n2t = \frac{\bar{x}_1 - \bar{x}_2}{\sqrt{\frac{s_1^2}{n_1} + \frac{s_2^2}{n_2}}}

T-Test Berpasangan

t=dˉsdnt = \frac{\bar{d}}{\frac{s_d}{\sqrt{n}}}
  • dˉ\bar{d}: Purata perbezaan
  • sds_d: Penyimpangan piawai perbezaan
  • nn: Bilangan pasangan

Darjah Kebebasan

T-Test Satu Sampel dan T-Test Berpasangan:
df=nāˆ’1df = n - 1
T-Test Dua Sampel dengan Varians Sama:
df=n1+n2āˆ’2df = n_1 + n_2 - 2
T-Test Welch:
df=(s12n1+s22n2)2(s12n1)2n1āˆ’1+(s22n2)2n2āˆ’1df = \frac{\left( \frac{s_1^2}{n_1} + \frac{s_2^2}{n_2} \right)^2}{\frac{\left( \frac{s_1^2}{n_1} \right)^2}{n_1 -1} + \frac{\left( \frac{s_2^2}{n_2} \right)^2}{n_2 -1}}

Pengiraan

Kalkulator melakukan langkah-langkah berikut:

  1. Kira T-Statistik menggunakan formula yang sesuai berdasarkan ujian yang dipilih.
  2. Tentukan Darjah Kebebasan (df).
  3. Kira P-Nilai yang sepadan dengan statistik t dan df:
    • Menggunakan taburan t untuk mencari kebarangkalian.
  4. Bandingkan P-Nilai dengan Tahap Signifikansi (α\alpha):
    • Jika p≤αp \leq \alpha, tolak hipotesis nol.
    • Jika p>αp > \alpha, gagal menolak hipotesis nol.
  5. Tafsirkan Keputusan:
    • Berikan kesimpulan dalam konteks ujian.

Kes Penggunaan

T-Test Satu Sampel

  • Menguji Keberkesanan Ubat Baru:
    • Menentukan sama ada purata masa pemulihan dengan ubat baru berbeza dari masa pemulihan purata yang diketahui.
  • Kawalan Kualiti:
    • Memeriksa sama ada purata panjang bahagian yang dihasilkan menyimpang dari standard yang ditetapkan.

T-Test Dua Sampel

  • Ujian A/B dalam Pemasaran:
    • Membandingkan kadar penukaran antara dua reka bentuk halaman web yang berbeza.
  • Penyelidikan Pendidikan:
    • Menilai sama ada terdapat perbezaan dalam skor ujian antara dua kaedah pengajaran.

T-Test Berpasangan

  • Kajian Sebelum dan Selepas:
    • Menilai penurunan berat badan sebelum dan selepas program diet.
  • Subjek Sepadan:
    • Membandingkan pengukuran tekanan darah sebelum dan selepas pemberian ubat kepada subjek yang sama.

Alternatif

Walaupun t-test adalah kuat, ia mempunyai andaian yang mungkin tidak selalu dipenuhi. Alternatif termasuk:

  • Ujian Mann-Whitney U:
    • Alternatif bukan parametrik kepada t-test dua sampel apabila data tidak mengikuti taburan normal.
  • Ujian Wilcoxon Signed-Rank:
    • Setara bukan parametrik kepada t-test berpasangan.
  • ANOVA (Analisis Varians):
    • Digunakan apabila membandingkan purata di lebih dari dua kumpulan.

Sejarah

T-test dibangunkan oleh William Sealy Gosset pada tahun 1908, yang menerbitkan di bawah nama samaran "Student" semasa bekerja di Kilang Guinness di Dublin. Ujian ini direka untuk memantau kualiti stout dengan menentukan sama ada kumpulan sampel konsisten dengan standard kilang. Disebabkan perjanjian kerahsiaan, Gosset menggunakan nama samaran "Student," yang membawa kepada istilah "t-test Student."

Seiring waktu, t-test telah menjadi asas dalam analisis statistik, diajar dan digunakan secara meluas dalam pelbagai disiplin sains. Ia membuka jalan untuk pengembangan kaedah statistik yang lebih kompleks dan adalah asas dalam bidang statistik inferensial.

Contoh

Berikut adalah contoh kod untuk melakukan T-Test Satu Sampel dalam pelbagai bahasa pengaturcaraan:

Excel

1' T-Test Satu Sampel dalam Excel VBA
2Sub OneSampleTTest()
3    Dim sampleData As Range
4    Set sampleData = Range("A1:A9") ' Gantikan dengan julat data anda
5    Dim hypothesizedMean As Double
6    hypothesizedMean = 50 ' Gantikan dengan purata yang diandaikan
7
8    Dim sampleMean As Double
9    Dim sampleStdDev As Double
10    Dim sampleSize As Integer
11    Dim tStat As Double
12
13    sampleMean = Application.WorksheetFunction.Average(sampleData)
14    sampleStdDev = Application.WorksheetFunction.StDev_S(sampleData)
15    sampleSize = sampleData.Count
16
17    tStat = (sampleMean - hypothesizedMean) / (sampleStdDev / Sqr(sampleSize))
18
19    MsgBox "T-Statistik: " & Format(tStat, "0.00")
20End Sub
21

R

1## T-Test Satu Sampel dalam R
2sample_data <- c(51, 49, 52, 48, 50, 47, 53, 49, 51)
3t_test_result <- t.test(sample_data, mu = 50)
4print(t_test_result)
5

Python

1import numpy as np
2from scipy import stats
3
4## T-Test Satu Sampel dalam Python
5sample_data = [51, 49, 52, 48, 50, 47, 53, 49, 51]
6t_statistic, p_value = stats.ttest_1samp(sample_data, 50)
7print(f"T-Statistik: {t_statistic:.2f}, P-Nilai: {p_value:.4f}")
8

JavaScript

1// T-Test Satu Sampel dalam JavaScript
2function oneSampleTTest(sample, mu0) {
3  const n = sample.length;
4  const mean = sample.reduce((a, b) => a + b) / n;
5  const sd = Math.sqrt(sample.map(x => (x - mean) ** 2).reduce((a, b) => a + b) / (n - 1));
6  const t = (mean - mu0) / (sd / Math.sqrt(n));
7  return t;
8}
9
10// Contoh penggunaan:
11const sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
12const tStatistic = oneSampleTTest(sampleData, 50);
13console.log(`T-Statistik: ${tStatistic.toFixed(2)}`);
14

MATLAB

1% T-Test Satu Sampel dalam MATLAB
2sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
3[h, p, ci, stats] = ttest(sampleData, 50);
4disp(['T-Statistik: ', num2str(stats.tstat)]);
5disp(['P-Nilai: ', num2str(p)]);
6

Java

1import org.apache.commons.math3.stat.inference.TTest;
2
3public class OneSampleTTest {
4    public static void main(String[] args) {
5        double[] sampleData = {51, 49, 52, 48, 50, 47, 53, 49, 51};
6        TTest tTest = new TTest();
7        double mu = 50;
8        double tStatistic = tTest.t(mu, sampleData);
9        double pValue = tTest.tTest(mu, sampleData);
10        System.out.printf("T-Statistik: %.2f%n", tStatistic);
11        System.out.printf("P-Nilai: %.4f%n", pValue);
12    }
13}
14

C#

1using System;
2using MathNet.Numerics.Statistics;
3
4class OneSampleTTest
5{
6    static void Main()
7    {
8        double[] sampleData = {51, 49, 52, 48, 50, 47, 53, 49, 51};
9        double mu0 = 50;
10        int n = sampleData.Length;
11        double mean = Statistics.Mean(sampleData);
12        double stdDev = Statistics.StandardDeviation(sampleData);
13        double tStatistic = (mean - mu0) / (stdDev / Math.Sqrt(n));
14        Console.WriteLine($"T-Statistik: {tStatistic:F2}");
15    }
16}
17

Go

1package main
2
3import (
4    "fmt"
5    "math"
6)
7
8func oneSampleTTest(sample []float64, mu0 float64) float64 {
9    n := float64(len(sample))
10    var sum, mean, sd float64
11
12    for _, v := range sample {
13        sum += v
14    }
15    mean = sum / n
16
17    for _, v := range sample {
18        sd += math.Pow(v - mean, 2)
19    }
20    sd = math.Sqrt(sd / (n - 1))
21
22    t := (mean - mu0) / (sd / math.Sqrt(n))
23    return t
24}
25
26func main() {
27    sampleData := []float64{51, 49, 52, 48, 50, 47, 53, 49, 51}
28    tStatistic := oneSampleTTest(sampleData, 50)
29    fmt.Printf("T-Statistik: %.2f\n", tStatistic)
30}
31

Swift

1import Foundation
2
3func oneSampleTTest(sample: [Double], mu0: Double) -> Double {
4    let n = Double(sample.count)
5    let mean = sample.reduce(0, +) / n
6    let sd = sqrt(sample.map { pow($0 - mean, 2) }.reduce(0, +) / (n - 1))
7    let t = (mean - mu0) / (sd / sqrt(n))
8    return t
9}
10
11let sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51]
12let tStatistic = oneSampleTTest(sample: sampleData, mu0: 50)
13print(String(format: "T-Statistik: %.2f", tStatistic))
14

PHP

1<?php
2function oneSampleTTest($sample, $mu0) {
3    $n = count($sample);
4    $mean = array_sum($sample) / $n;
5    $sd = sqrt(array_sum(array_map(function($x) use ($mean) {
6        return pow($x - $mean, 2);
7    }, $sample)) / ($n - 1));
8    $t = ($mean - $mu0) / ($sd / sqrt($n));
9    return $t;
10}
11
12$sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
13$tStatistic = oneSampleTTest($sampleData, 50);
14echo "T-Statistik: " . number_format($tStatistic, 2);
15?>
16

Ruby

1## T-Test Satu Sampel dalam Ruby
2def one_sample_t_test(sample, mu0)
3  n = sample.size
4  mean = sample.sum(0.0) / n
5  sd = Math.sqrt(sample.map { |x| (x - mean)**2 }.sum / (n - 1))
6  t = (mean - mu0) / (sd / Math.sqrt(n))
7  t
8end
9
10sample_data = [51, 49, 52, 48, 50, 47, 53, 49, 51]
11t_statistic = one_sample_t_test(sample_data, 50)
12puts format("T-Statistik: %.2f", t_statistic)
13

Rust

1// T-Test Satu Sampel dalam Rust
2fn one_sample_t_test(sample: &Vec<f64>, mu0: f64) -> f64 {
3    let n = sample.len() as f64;
4    let mean: f64 = sample.iter().sum::<f64>() / n;
5    let sd = (sample.iter().map(|x| (x - mean).powi(2)).sum::<f64>() / (n - 1.0)).sqrt();
6    let t = (mean - mu0) / (sd / n.sqrt());
7    t
8}
9
10fn main() {
11    let sample_data = vec![51.0, 49.0, 52.0, 48.0, 50.0, 47.0, 53.0, 49.0, 51.0];
12    let t_statistic = one_sample_t_test(&sample_data, 50.0);
13    println!("T-Statistik: {:.2}", t_statistic);
14}
15

Contoh Numerik

Masalah: Seorang pengeluar mendakwa bahawa purata hayat bateri adalah 50 jam. Sekumpulan pengguna menguji 9 bateri dan merekodkan hayat berikut (dalam jam):

51,Ā 49,Ā 52,Ā 48,Ā 50,Ā 47,Ā 53,Ā 49,Ā 5151,\ 49,\ 52,\ 48,\ 50,\ 47,\ 53,\ 49,\ 51

Adakah terdapat bukti pada tahap signifikansi 0.05 untuk mencadangkan bahawa purata hayat bateri berbeza dari 50 jam?

Penyelesaian:

  1. Nyatakan Hipotesis:

    • Hipotesis Nol (H0H_0): μ=50\mu = 50
    • Hipotesis Alternatif (HaH_a): μ≠50\mu \neq 50
  2. Kira Purata Sampel (xˉ\bar{x}):

    xˉ=51+49+52+48+50+47+53+49+519=50.00\bar{x} = \frac{51 + 49 + 52 + 48 + 50 + 47 + 53 + 49 + 51}{9} = 50.00
  3. Kira Penyimpangan Piawai Sampel (ss):

    s=āˆ‘(xiāˆ’xˉ)2nāˆ’1=2.0s = \sqrt{\frac{\sum (x_i - \bar{x})^2}{n - 1}} = 2.0
  4. Kira T-Statistik:

    t=xĖ‰āˆ’Ī¼0sn=50.00āˆ’502.09=0.00t = \frac{\bar{x} - \mu_0}{\frac{s}{\sqrt{n}}} = \frac{50.00 - 50}{\frac{2.0}{\sqrt{9}}} = 0.00
  5. Darjah Kebebasan:

    df=nāˆ’1=8df = n - 1 = 8
  6. Tentukan P-Nilai:

    • Untuk t=0.00t = 0.00 dan df=8df = 8, p-nilai adalah 1.00.
  7. Kesimpulan:

    • Memandangkan p-nilai (1.00) > α\alpha (0.05), kita gagal menolak hipotesis nol.
    • Tafsiran: Tiada bukti yang mencukupi untuk mencadangkan bahawa purata hayat bateri berbeza dari 50 jam.

Rujukan

  1. Gosset, W. S. (1908). "The Probable Error of a Mean". Biometrika, 6(1), 1–25. JSTOR.
  2. Ujian t Student. Wikipedia. https://en.wikipedia.org/wiki/Student%27s_t-test
  3. Panduan Statistik GraphPad: Memahami t-test. Link
  4. Statistik Laerd: T-test bebas. Link

Sumber Tambahan

  • Pemeriksaan Andaian:
    • Gunakan Ujian Shapiro-Wilk untuk normaliti.
    • Gunakan Ujian Levene untuk kesamaan varians.
  • Alat Perisian:
    • SPSS, SAS, Stata, dan R untuk analisis statistik lanjut.
  • Bacaan Lanjut:
    • "Introduction to Statistical Learning" oleh Gareth James, Daniela Witten, Trevor Hastie, dan Robert Tibshirani.
    • "Statistical Methods" oleh George W. Snedecor dan William G. Cochran.