Izvedite vse vrste t-testov: enovzorec, dvovzorec in povezan t-test. Ta kalkulator vam omogoča izvajanje statističnega hipoteznega testiranja za povprečja, kar pomaga pri analizi podatkov in interpretaciji rezultatov.
T-test je temeljno statistično orodje, ki se uporablja za določitev, ali obstaja pomembna razlika med srednjimi vrednostmi skupin. Široko se uporablja na različnih področjih, kot so psihologija, medicina in poslovanje za testiranje hipotez. Ta kalkulator vam omogoča izvajanje vseh vrst t-testov:
Izberite vrsto T-testa:
Vnesite zahtevane podatke:
Za T-test za eno skupino:
Za T-test za dve skupini:
Za Parni T-test:
Nastavite nivo pomembnosti ():
Izberite smer testa:
Kliknite gumb "Izračunaj":
Kalkulator bo prikazal:
Pred uporabo t-testa se prepričajte, da so izpolnjene naslednje predpostavke:
T-statistika se izračuna kot:
Pooled standardni odklon ():
Kalkulator izvede naslednje korake:
Čeprav so t-testi močni, imajo predpostavke, ki morda ne bodo vedno izpolnjene. Alternativne metode vključujejo:
T-test je razvil William Sealy Gosset leta 1908, ki je objavil pod psevdonimom "Student" med delom v pivovarni Guinness v Dublinu. Test je bil zasnovan za spremljanje kakovosti stouta z določanjem, ali so vzorčni seriji skladni s standardi pivovarne. Zaradi zaupnosti je Gosset uporabil psevdonim "Student", kar je pripeljalo do izraza "Studentov t-test."
Sčasoma je t-test postal temelj statistične analize, široko poučevan in uporabljen v različnih znanstvenih disciplinah. Utrdil je pot razvoju bolj kompleksnih statističnih metod in je temelj na področju inferenčne statistike.
Tukaj so primeri kode za izvajanje T-testa za eno skupino v različnih programskih jezikih:
1' T-test za eno skupino v Excel VBA
2Sub OneSampleTTest()
3 Dim sampleData As Range
4 Set sampleData = Range("A1:A9") ' Zamenjajte z obsegom vaših podatkov
5 Dim hypothesizedMean As Double
6 hypothesizedMean = 50 ' Zamenjajte z vašo predpostavljeno srednjo vrednost
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-statistika: " & Format(tStat, "0.00")
20End Sub
21
1## T-test za eno skupino v 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
1import numpy as np
2from scipy import stats
3
4## T-test za eno skupino v Pythonu
5sample_data = [51, 49, 52, 48, 50, 47, 53, 49, 51]
6t_statistic, p_value = stats.ttest_1samp(sample_data, 50)
7print(f"T-statistika: {t_statistic:.2f}, P-vrednost: {p_value:.4f}")
8
1// T-test za eno skupino v JavaScriptu
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// Primer uporabe:
11const sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
12const tStatistic = oneSampleTTest(sampleData, 50);
13console.log(`T-statistika: ${tStatistic.toFixed(2)}`);
14
1% T-test za eno skupino v MATLAB-u
2sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
3[h, p, ci, stats] = ttest(sampleData, 50);
4disp(['T-statistika: ', num2str(stats.tstat)]);
5disp(['P-vrednost: ', num2str(p)]);
6
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-statistika: %.2f%n", tStatistic);
11 System.out.printf("P-vrednost: %.4f%n", pValue);
12 }
13}
14
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-statistika: {tStatistic:F2}");
15 }
16}
17
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-statistika: %.2f\n", tStatistic)
30}
31
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-statistika: %.2f", tStatistic))
14
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-statistika: " . number_format($tStatistic, 2);
15?>
16
1## T-test za eno skupino v 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-statistika: %.2f", t_statistic)
13
1// T-test za eno skupino v Rustu
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-statistika: {:.2}", t_statistic);
14}
15
Problem: Proizvajalec trdi, da je povprečna življenjska doba baterije 50 ur. Potrošniška skupina testira 9 baterij in zabeleži naslednje življenjske dobe (v urah):
Ali obstajajo dokazi na 0.05 ravni pomembnosti, ki kažejo, da se povprečna življenjska doba baterij razlikuje od 50 ur?
Rešitev:
Določite hipoteze:
Izračunajte srednjo vrednost vzorca ():
Izračunajte standardni odklon vzorca ():
Izračunajte T-statistiko:
Stopinje svobode:
Določite P-vrednost:
Zaključek:
Odkrijte več orodij, ki bi lahko bila koristna za vaš delovni proces