🛠️

Whiz Tools

Build • Create • Innovate

Calculator T-Test pentru Analiza Statistica a Datelor

Efectuează toate tipurile de t-testuri: t-test cu un eșantion, t-test cu două eșantioane și t-test pereche. Acest calculator îți permite să efectuezi teste statistice de ipoteză pentru medii, ajutând la analiza datelor și interpretarea rezultatelor.

Calculator T-Test

sampleDataDescription
📚

Documentație

Calculator T-Test

Introducere

t-testul este un instrument statistic fundamental folosit pentru a determina dacă există o diferență semnificativă între mediile grupurilor. Este aplicat pe scară largă în diverse domenii, cum ar fi psihologia, medicina și afacerile pentru testarea ipotezelor. Acest calculator vă permite să efectuați toate tipurile de t-testuri:

  • T-Test cu un singur eșantion: Testează dacă media unui singur grup diferă de o valoare cunoscută.
  • T-Test cu două eșantioane (eșantioane independente): Compară mediile a două grupuri independente.
  • T-Test pereche: Compară mediile din același grup în momente diferite (de exemplu, înainte și după tratament).

Tipuri de T-Testuri

Date eșantion Media populației T-Test cu un singur eșantion Eșantion 1 Eșantion 2 Diferența medie T-Test cu două eșantioane Înainte După Diferențe T-Test pereche

Cum să utilizați acest calculator

  1. Selectați tipul de T-Test:

    • T-Test cu un singur eșantion
    • T-Test cu două eșantioane
    • T-Test pereche
  2. Introduceți datele necesare:

    • Pentru T-Test cu un singur eșantion:

      • Media eșantionului (xˉ\bar{x})
      • Deviația standard a eșantionului (ss)
      • Dimensiunea eșantionului (nn)
      • Media populației (μ0\mu_0)
    • Pentru T-Test cu două eșantioane:

      • Media Eșantionului 1 (xˉ1\bar{x}_1)
      • Deviația standard a Eșantionului 1 (s1s_1)
      • Dimensiunea Eșantionului 1 (n1n_1)
      • Media Eșantionului 2 (xˉ2\bar{x}_2)
      • Deviația standard a Eșantionului 2 (s2s_2)
      • Dimensiunea Eșantionului 2 (n2n_2)
      • Presupunerea varianței: Selectați dacă varianțele sunt presupuse egale sau inegale.
    • Pentru T-Test pereche:

      • Datele diferențelor: Introduceți diferențele pe perechi.
      • Alternativ, introduceți Media diferențelor (dˉ\bar{d}), Deviația standard a diferențelor (sds_d) și Dimensiunea eșantionului (nn).
  3. Setați nivelul de semnificație (α\alpha):

    • Alegerile comune sunt 0.05 pentru un nivel de încredere de 95% sau 0.01 pentru un nivel de încredere de 99%.
  4. Alegeți direcția testului:

    • Test bilateral: Testează pentru orice diferență.
    • Test unidirecțional: Testează pentru o diferență direcțională (specificați dacă testați pentru mai mult sau mai puțin).
  5. Faceți clic pe butonul "Calculați":

    • Calculatorul va afișa:

      • T-Statistic
      • Grade de libertate
      • P-Valoare
      • Concluzie: Dacă să respingeți sau să nu respingeți ipoteza nulă.

Presupuneri

Înainte de a utiliza t-testul, asigurați-vă că următoarele presupuneri sunt îndeplinite:

  • Normalitate: Datele ar trebui să fie aproximativ distribuite normal.
  • Independență: Observațiile trebuie să fie independente una de cealaltă.
    • Pentru T-Testul cu două eșantioane, cele două grupuri ar trebui să fie independente.
    • Pentru T-Testul pereche, diferențele ar trebui să fie independente.
  • Egalitatea varianțelor:
    • Pentru T-Testul cu două eșantioane cu varianțe egale, varianțele celor două populații ar trebui să fie egale (homoscedasticitate).
    • Dacă această presupunere nu este îndeplinită, utilizați T-Testul Welch (varianțe inegale).

Formula

T-Test cu un singur eșantion

Statisticul t se calculează ca:

t=xˉμ0snt = \frac{\bar{x} - \mu_0}{\frac{s}{\sqrt{n}}}
  • xˉ\bar{x}: Media eșantionului
  • μ0\mu_0: Media populației sub ipoteza nulă
  • ss: Deviația standard a eșantionului
  • nn: Dimensiunea eșantionului

T-Test cu două eșantioane (eșantioane independente)

Varianțe egale presupuse
t=xˉ1xˉ2sp1n1+1n2t = \frac{\bar{x}_1 - \bar{x}_2}{s_p \sqrt{\frac{1}{n_1} + \frac{1}{n_2}}}

Deviația standard combinată (sps_p):

sp=(n11)s12+(n21)s22n1+n22s_p = \sqrt{\frac{(n_1 - 1)s_1^2 + (n_2 - 1)s_2^2}{n_1 + n_2 - 2}}
Varianțe inegale (T-Test Welch)
t=xˉ1xˉ2s12n1+s22n2t = \frac{\bar{x}_1 - \bar{x}_2}{\sqrt{\frac{s_1^2}{n_1} + \frac{s_2^2}{n_2}}}

T-Test pereche

t=dˉsdnt = \frac{\bar{d}}{\frac{s_d}{\sqrt{n}}}
  • dˉ\bar{d}: Media diferențelor
  • sds_d: Deviația standard a diferențelor
  • nn: Numărul de perechi

Grade de libertate

T-Test cu un singur eșantion și T-Test pereche:
df=n1df = n - 1
T-Test cu două eșantioane cu varianțe egale:
df=n1+n22df = n_1 + n_2 - 2
T-Test Welch:
df=(s12n1+s22n2)2(s12n1)2n11+(s22n2)2n21df = \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}}

Calcul

Calculatorul efectuează următorii pași:

  1. Calculează T-Statisticul folosind formula corespunzătoare pe baza testului selectat.
  2. Determină gradele de libertate (df).
  3. Calculează P-Valoarea corespunzătoare statisticii t și df:
    • Folosește distribuția t pentru a găsi probabilitatea.
  4. Compară P-Valoarea cu nivelul de semnificație (α\alpha):
    • Dacă pαp \leq \alpha, respingeți ipoteza nulă.
    • Dacă p>αp > \alpha, nu respingeți ipoteza nulă.
  5. Interpretează rezultatele:
    • Oferiți o concluzie în contextul testului.

Cazuri de utilizare

T-Test cu un singur eșantion

  • Testarea eficacității unui nou medicament:
    • Determinați dacă timpul mediu de recuperare cu un nou medicament diferă de timpul mediu de recuperare cunoscut.
  • Controlul calității:
    • Verificați dacă lungimea medie a pieselor fabricate deviază de la standardul specificat.

T-Test cu două eșantioane

  • Testare A/B în marketing:
    • Comparați ratele de conversie între două designuri diferite de pagină web.
  • Cercetare educațională:
    • Evaluați dacă există o diferență în notele de test între două metode de predare.

T-Test pereche

  • Studii înainte și după:
    • Evaluați pierderea în greutate înainte și după un program de dietă.
  • Subiecți potriviți:
    • Comparați măsurătorile tensiunii arteriale înainte și după administrarea medicamentului la aceiași subiecți.

Alternative

Deși t-testurile sunt puternice, ele au presupuneri care s-ar putea să nu fie întotdeauna îndeplinite. Alternativele includ:

  • Testul Mann-Whitney U:
    • Alternativă non-parametrică la t-testul cu două eșantioane atunci când datele nu urmează o distribuție normală.
  • Testul Wilcoxon pe ranguri semnate:
    • Echivalent non-parametric al t-testului pereche.
  • ANOVA (Analiza varianței):
    • Folosit atunci când se compară mediile între mai mult de două grupuri.

Istorie

T-testul a fost dezvoltat de William Sealy Gosset în 1908, care a publicat sub pseudonimul "Student" în timp ce lucra la fabrica de bere Guinness din Dublin. Testul a fost conceput pentru a monitoriza calitatea stout-ului determinând dacă loturile de eșantion erau conforme cu standardele fabricii. Din cauza acordurilor de confidențialitate, Gosset a folosit pseudonimul "Student", ceea ce a dus la termenul "t-testul Student".

În timp, t-testul a devenit o piatră de temelie în analiza statistică, fiind pe scară largă predat și aplicat în diverse discipline științifice. A deschis calea pentru dezvoltarea unor metode statistice mai complexe și este fundamental în domeniul statisticii inferențiale.

Exemple

Iată exemple de cod pentru realizarea unui T-Test cu un singur eșantion în diverse limbaje de programare:

Excel

1' T-Test cu un singur eșantion în Excel VBA
2Sub OneSampleTTest()
3    Dim sampleData As Range
4    Set sampleData = Range("A1:A9") ' Înlocuiți cu intervalul dvs. de date
5    Dim hypothesizedMean As Double
6    hypothesizedMean = 50 ' Înlocuiți cu media dvs. ipotetică
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-Statistic: " & Format(tStat, "0.00")
20End Sub
21

R

1## T-Test cu un singur eșantion în 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 cu un singur eșantion în 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-Statistic: {t_statistic:.2f}, P-Value: {p_value:.4f}")
8

JavaScript

1// T-Test cu un singur eșantion în 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// Exemplu de utilizare:
11const sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
12const tStatistic = oneSampleTTest(sampleData, 50);
13console.log(`T-Statistic: ${tStatistic.toFixed(2)}`);
14

MATLAB

1% T-Test cu un singur eșantion în MATLAB
2sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
3[h, p, ci, stats] = ttest(sampleData, 50);
4disp(['T-Statistic: ', num2str(stats.tstat)]);
5disp(['P-Value: ', 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-Statistic: %.2f%n", tStatistic);
11        System.out.printf("P-Value: %.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-Statistic: {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-Statistic: %.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-Statistic: %.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-Statistic: " . number_format($tStatistic, 2);
15?>
16

Ruby

1## T-Test cu un singur eșantion în 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-Statistic: %.2f", t_statistic)
13

Rust

1// T-Test cu un singur eșantion în 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-Statistic: {:.2}", t_statistic);
14}
15

Exemplu numeric

Problemă: Un producător susține că durata medie de viață a unei baterii este de 50 de ore. Un grup de consumatori testează 9 baterii și înregistrează următoarele durate de viață (în ore):

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

Există dovezi la nivelul de semnificație 0.05 pentru a sugera că durata medie de viață a bateriei diferă de 50 de ore?

Soluție:

  1. Stabiliți ipotezele:

    • Ipoteza nulă (H0H_0): μ=50\mu = 50
    • Ipoteza alternativă (HaH_a): μ50\mu \neq 50
  2. Calculați media eșantionului (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. Calculați deviația standard a eșantionului (ss):

    s=(xixˉ)2n1=2.0s = \sqrt{\frac{\sum (x_i - \bar{x})^2}{n - 1}} = 2.0
  4. Calculați T-Statisticul:

    t=xˉμ0sn=50.00502.09=0.00t = \frac{\bar{x} - \mu_0}{\frac{s}{\sqrt{n}}} = \frac{50.00 - 50}{\frac{2.0}{\sqrt{9}}} = 0.00
  5. Grade de libertate:

    df=n1=8df = n - 1 = 8
  6. Determinați P-Valoarea:

    • Pentru t=0.00t = 0.00 și df=8df = 8, p-valoarea este 1.00.
  7. Concluzie:

    • Deoarece p-valoarea (1.00) > α\alpha (0.05), nu respingem ipoteza nulă.
    • Interpretare: Nu există suficiente dovezi pentru a sugera că durata medie de viață a bateriei diferă de 50 de ore.

Referințe

  1. Gosset, W. S. (1908). "Probabilitatea unei medii". Biometrika, 6(1), 1–25. JSTOR.
  2. Testul t al Studentului. Wikipedia. https://en.wikipedia.org/wiki/Student%27s_t-test
  3. Ghidul de statistici GraphPad: Înțelegerea t-testurilor. Link
  4. Statistica Laerd: T-test independent. Link

Resurse suplimentare

  • Verificări ale presupunerilor:
    • Utilizați Testul Shapiro-Wilk pentru normalitate.
    • Utilizați Testul Levene pentru egalitatea varianțelor.
  • Instrumente software:
    • SPSS, SAS, Stata și R pentru analize statistice avansate.
  • Lecturi suplimentare:
    • "Introducere în învățarea statistică" de Gareth James, Daniela Witten, Trevor Hastie și Robert Tibshirani.
    • "Metode statistice" de George W. Snedecor și William G. Cochran.