Utför alla typer av t-tester: enstickprov, tvåstickprov och parade t-tester. Denna kalkylator gör det möjligt för dig att genomföra statistisk hypotesprövning för medelvärden, vilket hjälper till med dataanalys och tolkning av resultat.
t-testet är ett grundläggande statistiskt verktyg som används för att avgöra om det finns en signifikant skillnad mellan medelvärdena av grupper. Det tillämpas i olika områden som psykologi, medicin och företagande för hypotesprövning. Denna kalkylator låter dig utföra alla typer av t-tester:
Välj typ av T-Test:
Ange nödvändiga indata:
För Ett-sample T-Test:
För Två-sample T-Test:
För Parat T-Test:
Ställ in signifikansnivån ():
Välj testinriktning:
Klicka på "Beräkna"-knappen:
Kalkylatorn kommer att visa:
Innan du använder t-testet, se till att följande antaganden är uppfyllda:
T-statistiken beräknas som:
Pooled standardavvikelse ():
Kalkylatorn utför följande steg:
Även om t-tester är kraftfulla, har de antaganden som kanske inte alltid uppfylls. Alternativ inkluderar:
T-testet utvecklades av William Sealy Gosset 1908, som publicerade under pseudonymen "Student" medan han arbetade på Guinness Brewery i Dublin. Testet utformades för att övervaka kvaliteten på stout genom att avgöra om provbatcher var konsekventa med bryggeriets standarder. På grund av sekretessavtal använde Gosset pseudonymen "Student", vilket ledde till termen "Student's t-test."
Över tid har t-testet blivit en hörnsten inom statistisk analys, allmänt undervisad och tillämpad inom olika vetenskapliga discipliner. Det banade väg för utvecklingen av mer komplexa statistiska metoder och är grundläggande inom inferentiell statistik.
Här är kodexempel för att utföra ett Ett-sample T-Test i olika programmeringsspråk:
1' Ett-sample T-Test i Excel VBA
2Sub OneSampleTTest()
3 Dim sampleData As Range
4 Set sampleData = Range("A1:A9") ' Ersätt med ditt dataintervall
5 Dim hypothesizedMean As Double
6 hypothesizedMean = 50 ' Ersätt med ditt antagna medel
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
1## Ett-sample T-Test i 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## Ett-sample T-Test i 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-Värde: {p_value:.4f}")
8
1// Ett-sample T-Test i 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// Exempelanvändning:
11const sampleData = [51, 49, 52, 48, 50, 47, 53, 49, 51];
12const tStatistic = oneSampleTTest(sampleData, 50);
13console.log(`T-Statistik: ${tStatistic.toFixed(2)}`);
14
1% Ett-sample T-Test i 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-Värde: ', 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-Statistik: %.2f%n", tStatistic);
11 System.out.printf("P-Värde: %.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-Statistik: {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-Statistik: %.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-Statistik: %.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-Statistik: " . number_format($tStatistic, 2);
15?>
16
1## Ett-sample T-Test i 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
1// Ett-sample T-Test i 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
Problem: En tillverkare påstår att den genomsnittliga livslängden på ett batteri är 50 timmar. En konsumentgrupp testar 9 batterier och registrerar följande livslängder (i timmar):
Finns det bevis på 0.05 signifikansnivå för att antyda att den genomsnittliga batterilivslängden skiljer sig från 50 timmar?
Lösning:
Ange hypoteserna:
Beräkna provmedel ():
Beräkna provstandardavvikelse ():
Beräkna T-Statistik:
Frihetsgrader:
Bestäm P-Värde:
Slutsats:
Upptäck fler verktyg som kan vara användbara för din arbetsflöde