šŸ› ļø

Whiz Tools

Build • Create • Innovate

Kihesabu cha T-Test: Fanya Aina Zote za T-Tests

Fanya aina zote za t-tests: t-test ya sampuli moja, t-test ya sampuli mbili, na t-test zilizounganishwa. Kihesabu hiki kinakuruhusu kufanya upimaji wa nadharia ya takwimu kwa maana, kusaidia katika uchambuzi wa data na tafsiri ya matokeo.

Kikokotoo cha T-Test

sampleDataDescription
šŸ“š

Hati

Kihesabu cha T-Test

Utangulizi

t-test ni chombo muhimu cha takwimu kinachotumika kubaini ikiwa kuna tofauti muhimu kati ya maana za vikundi. Inatumika sana katika nyanja mbalimbali kama vile saikolojia, tiba, na biashara kwa ajili ya kupima dhana. Kihesabu hiki kinakuruhusu kufanya aina zote za t-tests:

  • T-Test ya Sampuli Moja: Inapima ikiwa maana ya kundi moja inatofautiana na thamani inayojulikana.
  • T-Test ya Sampuli Mbili (Sampuli Huru): Inalinganisha maana za vikundi viwili huru.
  • T-Test ya Kulinganisha: Inalinganisha maana kutoka kundi moja katika nyakati tofauti (mfano, kabla na baada ya matibabu).

Aina za T-Tests

Data ya Sampuli Maana ya Idadi T-Test ya Sampuli Moja Sampuli 1 Sampuli 2 Tofauti ya Maana T-Test ya Sampuli Mbili Kabla Baada Tofauti T-Test ya Kulinganisha

Jinsi ya Kutumia Kihesabu Hiki

  1. Chagua Aina ya T-Test:

    • T-Test ya Sampuli Moja
    • T-Test ya Sampuli Mbili
    • T-Test ya Kulinganisha
  2. Ingiza Maingizo Yanayohitajika:

    • Kwa T-Test ya Sampuli Moja:

      • Maana ya Sampuli (xˉ\bar{x})
      • Kiwango cha Kawaida cha Sampuli (ss)
      • Ukubwa wa Sampuli (nn)
      • Maana ya Idadi (μ0\mu_0)
    • Kwa T-Test ya Sampuli Mbili:

      • Maana ya Sampuli 1 (xˉ1\bar{x}_1)
      • Kiwango cha Kawaida cha Sampuli 1 (s1s_1)
      • Ukubwa wa Sampuli 1 (n1n_1)
      • Maana ya Sampuli 2 (xˉ2\bar{x}_2)
      • Kiwango cha Kawaida cha Sampuli 2 (s2s_2)
      • Ukubwa wa Sampuli 2 (n2n_2)
      • Dhamira ya Tofauti: Chagua ikiwa tofauti zinadhaniwa kuwa sawa au zisizo sawa.
    • Kwa T-Test ya Kulinganisha:

      • Data za Tofauti: Ingiza tofauti za pare.
      • Vinginevyo, ingiza Maana ya Tofauti (dˉ\bar{d}), Kiwango cha Kawaida cha Tofauti (sds_d), na Ukubwa wa Sampuli (nn).
  3. Weka Kiwango cha Muhimu (α\alpha):

    • Chaguo maarufu ni 0.05 kwa kiwango cha kuaminika cha 95% au 0.01 kwa kiwango cha kuaminika cha 99%.
  4. Chagua Mwelekeo wa Jaribio:

    • Jaribio la Pande Mbili: Linapima tofauti yoyote.
    • Jaribio la Pande Moja: Linapima tofauti ya mwelekeo (eleza ikiwa unajaribu kwa zaidi au chini).
  5. Bonyeza Kitufe cha "Hesabu":

    • Kihesabu kitaonyesha:

      • T-Statistiki
      • Hali za Uhuru
      • P-Thamani
      • Hitimisho: Ikiwa kukataa au kushindwa kukataa dhana ya msingi.

Dhamira

Kabla ya kutumia t-test, hakikisha kuwa dhamira zifuatazo zimekamilika:

  • Uhalisia: Data inapaswa kuwa na usambazaji wa kawaida.
  • Uhuru: Ujumbe lazima uwe huru kutoka kwa kila mmoja.
    • Kwa T-Test ya Sampuli Mbili, vikundi viwili vinapaswa kuwa huru.
    • Kwa T-Test ya Kulinganisha, tofauti zinapaswa kuwa huru.
  • Usawa wa Kiwango:
    • Kwa T-Test ya Sampuli Mbili na Kiwango Sawa, viwango vya idadi ya watu viwili vinapaswa kuwa sawa (homoscedasticity).
    • Ikiwa dhamira hii haikukamilika, tumia T-Test ya Welch (viwango visivyo sawa).

Fomula

T-Test ya Sampuli Moja

T-statistiki inakokotolewa kama:

t=xĖ‰āˆ’Ī¼0snt = \frac{\bar{x} - \mu_0}{\frac{s}{\sqrt{n}}}
  • xˉ\bar{x}: Maana ya Sampuli
  • μ0\mu_0: Maana ya Idadi chini ya dhana ya msingi
  • ss: Kiwango cha Kawaida cha Sampuli
  • nn: Ukubwa wa Sampuli

T-Test ya Sampuli Mbili (Sampuli Huru)

Dhamira ya Kiwango Sawa
t=xˉ1āˆ’xˉ2sp1n1+1n2t = \frac{\bar{x}_1 - \bar{x}_2}{s_p \sqrt{\frac{1}{n_1} + \frac{1}{n_2}}}

Kiwango cha pamoja (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}}
Kiwango Kisicho Sawa (T-Test ya 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 ya Kulinganisha

t=dˉsdnt = \frac{\bar{d}}{\frac{s_d}{\sqrt{n}}}
  • dˉ\bar{d}: Maana ya tofauti
  • sds_d: Kiwango cha Kawaida cha tofauti
  • nn: Idadi ya pare

Hali za Uhuru

T-Test ya Sampuli Moja na T-Test ya Kulinganisha:
df=nāˆ’1df = n - 1
T-Test ya Sampuli Mbili na Kiwango Sawa:
df=n1+n2āˆ’2df = n_1 + n_2 - 2
T-Test ya 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}}

Hesabu

Kihesabu kinafanya hatua zifuatazo:

  1. Kukadiria T-Statistiki kwa kutumia fomula inayofaa kulingana na jaribio lililochaguliwa.
  2. Kujua Hali za Uhuru (df).
  3. Kukadiria P-Thamani inayohusiana na t-statistiki na df:
    • Inatumia usambazaji wa t kupata uwezekano.
  4. Linganishi P-Thamani na Kiwango cha Muhimu (α\alpha):
    • Ikiwa p≤αp \leq \alpha, kataa dhana ya msingi.
    • Ikiwa p>αp > \alpha, shindwa kukataa dhana ya msingi.
  5. Fasiri Matokeo:
    • Toa hitimisho katika muktadha wa jaribio.

Matumizi

T-Test ya Sampuli Moja

  • Kupima Ufanisi wa Dawa Mpya:
    • Kuamua ikiwa wastani wa muda wa kupona na dawa mpya unapingana na wastani unaojulikana wa muda wa kupona.
  • Udhibiti wa Ubora:
    • Kuangalia ikiwa wastani wa urefu wa sehemu zinazotengenezwa unapingana na kiwango kilichowekwa.

T-Test ya Sampuli Mbili

  • Upimaji wa A/B katika Masoko:
    • Linganisha viwango vya kubadilisha kati ya muundo wa tovuti mbili tofauti.
  • Utafiti wa Elimu:
    • Kukadiria ikiwa kuna tofauti katika alama za mtihani kati ya mbinu mbili za ufundishaji.

T-Test ya Kulinganisha

  • Masomo ya Kabla na Baada:
    • Kutathmini kupungua kwa uzito kabla na baada ya mpango wa lishe.
  • Vichwa Vilivyolinganishwa:
    • Linganisha vipimo vya shinikizo la damu kabla na baada ya kutoa dawa kwa washiriki wale wale.

Mbadala

Ingawa t-tests ni zenye nguvu, zina dhamira ambazo huenda zisikamilike kila wakati. Mbadala zinajumuisha:

  • Mann-Whitney U Test:
    • Mbadala isiyo ya parametric kwa t-test ya sampuli mbili wakati data haifuati usambazaji wa kawaida.
  • Wilcoxon Signed-Rank Test:
    • Mbadala isiyo ya parametric kwa t-test ya kulinganisha.
  • ANOVA (Uchambuzi wa Tofauti):
    • Inatumika wakati wa kulinganisha maana kati ya vikundi zaidi ya viwili.

Historia

T-test ilitengenezwa na William Sealy Gosset mwaka 1908, ambaye alichapisha chini ya jina la utani "Student" wakati akifanya kazi katika kiwanda cha Guinness huko Dublin. Jaribio hili lilipangwa kufuatilia ubora wa stout kwa kubaini ikiwa sampuli za kundi zilikuwa zinafanana na viwango vya kiwanda. Kutokana na makubaliano ya siri, Gosset alitumia jina la utani "Student," na kusababisha neno "t-test ya mwanafunzi."

Kwa muda, t-test imekuwa msingi katika uchambuzi wa takwimu, inafundishwa sana na kutumika katika nyanja mbalimbali za kisayansi. Ilifungua njia kwa maendeleo ya mbinu za takwimu zenye ugumu zaidi na ni msingi katika uwanja wa takwimu za uhamasishaji.

Mifano

Hapa kuna mifano ya msimbo kwa ajili ya kufanya T-Test ya Sampuli Moja katika lugha mbalimbali za programu:

Excel

1' T-Test ya Sampuli Moja katika Excel VBA
2Sub OneSampleTTest()
3    Dim sampleData As Range
4    Set sampleData = Range("A1:A9") ' Badilisha na eneo lako la data
5    Dim hypothesizedMean As Double
6    hypothesizedMean = 50 ' Badilisha na maana yako inayodhaniwa
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-Statistiki: " & Format(tStat, "0.00")
20End Sub
21

R

1## T-Test ya Sampuli Moja katika 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 ya Sampuli Moja katika 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-Statistiki: {t_statistic:.2f}, P-Thamani: {p_value:.4f}")
8

JavaScript

1// T-Test ya Sampuli Moja katika 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// Matumizi ya mfano:
11const sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
12const tStatistic = oneSampleTTest(sampleData, 50);
13console.log(`T-Statistiki: ${tStatistic.toFixed(2)}`);
14

MATLAB

1% T-Test ya Sampuli Moja katika MATLAB
2sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
3[h, p, ci, stats] = ttest(sampleData, 50);
4disp(['T-Statistiki: ', num2str(stats.tstat)]);
5disp(['P-Thamani: ', 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-Statistiki: %.2f%n", tStatistic);
11        System.out.printf("P-Thamani: %.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-Statistiki: {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    sample_data := []float64{51, 49, 52, 48, 50, 47, 53, 49, 51}
28    tStatistic := oneSampleTTest(sample_data, 50.0)
29    fmt.Printf("T-Statistiki: %.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-Statistiki: %.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-Statistiki: " . number_format($tStatistic, 2);
15?>
16

Ruby

1## T-Test ya Sampuli Moja katika 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-Statistiki: %.2f", t_statistic)
13

Rust

1// T-Test ya Sampuli Moja katika 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-Statistiki: {:.2}", t_statistic);
14}
15

Mfano wa Nambari

Tatizo: Mtengenezaji anadai kuwa maisha ya wastani ya betri ni masaa 50. Kikundi cha watumiaji kinajaribu betri 9 na kurekodi maisha yafuatayo (katika masaa):

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

Je, kuna ushahidi katika kiwango cha umuhimu 0.05 kuonyesha kwamba maisha ya wastani ya betri yanatofautiana na masaa 50?

Suluhisho:

  1. Tangaza Dhana:

    • Dhana ya Msingi (H0H_0): μ=50\mu = 50
    • Dhana ya Mbali (HaH_a): μ≠50\mu \neq 50
  2. Hesabu Maana ya Sampuli (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. Hesabu Kiwango cha Kawaida cha Sampuli (ss):

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

    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. Hali za Uhuru:

    df=nāˆ’1=8df = n - 1 = 8
  6. Pata P-Thamani:

    • Kwa t=0.00t = 0.00 na df=8df = 8, p-thamani ni 1.00.
  7. Hitimisho:

    • Kwa kuwa p-thamani (1.00) > \alpha (0.05), tunashindwa kukatisha dhana ya msingi.
    • Fasiri: Hakuna ushahidi wa kutosha kuonyesha kwamba maisha ya wastani ya betri yanatofautiana na masaa 50.

Marejeo

  1. Gosset, W. S. (1908). "Makosa Yanayoweza Kutokea ya Maana". Biometrika, 6(1), 1–25. JSTOR.
  2. T-test ya Mwanafunzi. Wikipedia. https://en.wikipedia.org/wiki/Student%27s_t-test
  3. Mwongozo wa Takwimu wa GraphPad: Kuelewa t-tests. Kiungo
  4. Takriban Takwimu: T-Test ya Huru. Kiungo

Rasilimali Zaidi

  • Ukaguzi wa Dhamira:
    • Tumia Jaribio la Shapiro-Wilk kwa uhalisia.
    • Tumia Jaribio la Levene kwa usawa wa viwango.
  • Zana za Programu:
    • SPSS, SAS, Stata, na R kwa uchambuzi wa takwimu wa juu.
  • Kusoma Zaidi:
    • "Utangulizi kwa Ujifunzaji wa Takwimu" na Gareth James, Daniela Witten, Trevor Hastie, na Robert Tibshirani.
    • "Mbinu za Takwimu" na George W. Snedecor na William G. Cochran.