Z-Score Kalkylator
Introduktion
z-poäng (eller standardpoäng) är en statistisk mätning som beskriver ett värdes relation till medelvärdet av en grupp värden. Det indikerar hur många standardavvikelser ett element ligger från medelvärdet. Z-poängen är ett avgörande verktyg inom statistiken, som möjliggör standardisering av olika dataset och identifiering av avvikare.
Formel
Z-poängen beräknas med följande formel:
Där:
- = z-poäng
- = individuellt datapunkt
- = medelvärde för datasetet
- = standardavvikelse för datasetet
Denna formel beräknar antalet standardavvikelser ett datapunkt ligger från medelvärdet.
Beräkning
För att beräkna z-poängen för en datapunkt:
-
Beräkna Medelvärdet ():
Summera alla datapunkter och dela med antalet datapunkter.
-
Beräkna Standardavvikelsen ():
-
Varians ():
-
Standardavvikelse:
-
-
Beräkna Z-Poängen:
Sätt in värdena i z-poängens formel.
Gränsfall
-
Noll Standardavvikelse ():
När alla datapunkter är identiska är standardavvikelsen noll, vilket gör z-poängen odefinierad eftersom man inte kan dela med noll. I detta fall gäller inte konceptet av en z-poäng.
-
Datapunkt Lika Med Medelvärdet ():
Om datapunkten är lika med medelvärdet är z-poängen noll, vilket indikerar att den är exakt genomsnittlig.
-
Icke-numeriska Indata:
Se till att alla indatan är numeriska. Icke-numeriska indatan kommer att resultera i beräkningsfel.
Kumulativ Sannolikhet
Den kumulativa sannolikheten kopplad till en z-poäng representerar sannolikheten att en slumpmässig variabel från en standardnormalfördelning kommer att vara mindre än eller lika med det angivna värdet. Det är området under normalfördelningskurvan till vänster om den angivna z-poängen.
Matematiskt beräknas den kumulativa sannolikheten med hjälp av den kumulativa fördelningsfunktionen (CDF) för standardnormalfördelningen:
Där:
- = CDF för standardnormalfördelningen vid
Den kumulativa sannolikheten är avgörande inom statistiken för att bestämma sannolikheten för att ett värde inträffar inom ett visst intervall. Den används ofta inom områden som kvalitetskontroll, finans och samhällsvetenskap.
SVG Diagram
Nedan finns ett SVG-diagram som illustrerar standardnormalfördelningskurvan och z-poängen:
Figur: Standard Normal Fördelning Kurva med Z-Poäng Skuggad
Detta diagram visar normalfördelningskurvan med medelvärdet i centrum. Det skuggade området representerar den kumulativa sannolikheten upp till datapunkt , som motsvarar z-poängen.
Användningsfall
Tillämpningar
-
Standardisering över Olika Skala:
Z-poäng möjliggör jämförelse mellan data från olika skalor genom att standardisera dataset.
-
Avvikardetektering:
Identifiering av datapunkter som ligger avsevärt långt från medelvärdet (t.ex. z-poäng mindre än -3 eller större än 3).
-
Statistisk Testning:
Används i hypotesprövning, inklusive z-tester, för att avgöra om ett urvalsmedelvärde avviker signifikant från ett känt populationsmedelvärde.
-
Kvalitetskontroll:
Inom tillverkning hjälper z-poäng att övervaka processer för att säkerställa att utdata förblir inom acceptabla gränser.
-
Finans och Investeringar:
Bedömning av aktieprestanda genom att jämföra avkastningar i förhållande till det genomsnittliga marknadsresultatet.
Alternativ
-
T-Poäng:
Liknande z-poäng men används när urvalsstorleken är liten och populationsstandardavvikelsen är okänd.
-
Percentil Rang:
Indikerar procentandelen poäng i dess frekvensfördelning som är lika med eller lägre än den.
-
Standardavvikelse Enheter:
Använda råa standardavvikelsevärden utan att standardisera som z-poäng.
Historia
Konceptet med z-poäng härstammar från arbetet med normalfördelningen av Carl Friedrich Gauss i början av 1800-talet. Den standardnormalfördelning som är grundläggande för z-poäng utvecklades ytterligare av statistiker som Abraham de Moivre och Pierre-Simon Laplace. Användningen av z-poäng blev utbredd med framstegen inom statistiska metoder under 1900-talet, särskilt inom psykologisk testning och kvalitetskontroll.
Exempel
Excel
## Beräkna z-poäng i Excel
## Anta att datapunkt finns i cell A2, medelvärde i cell B2, standardavvikelse i cell C2
=(A2 - B2) / C2
R
## Beräkna z-poäng i R
calculate_z_score <- function(x, mean, sd) {
if (sd == 0) {
stop("Standardavvikelse kan inte vara noll.")
}
z <- (x - mean) / sd
return(z)
}
## Exempelanvändning:
x <- 85
mu <- 75
sigma <- 5
z_score <- calculate_z_score(x, mu, sigma)
print(paste("Z-poäng:", z_score))
MATLAB
% Beräkna z-poäng i MATLAB
function z = calculate_z_score(x, mu, sigma)
if sigma == 0
error('Standardavvikelse kan inte vara noll.');
end
z = (x - mu) / sigma;
end
% Exempelanvändning:
x = 90;
mu = 80;
sigma = 8;
z = calculate_z_score(x, mu, sigma);
fprintf('Z-poäng: %.2f\n', z);
JavaScript
// Beräkna z-poäng i JavaScript
function calculateZScore(x, mu, sigma) {
if (sigma === 0) {
throw new Error('Standardavvikelse kan inte vara noll.');
}
return (x - mu) / sigma;
}
// Exempelanvändning:
const x = 100;
const mu = 85;
const sigma = 7;
try {
const z = calculateZScore(x, mu, sigma);
console.log(`Z-poäng: ${z.toFixed(2)}`);
} catch (error) {
console.error(error.message);
}
Python
## Beräkna z-poäng i Python
def calculate_z_score(x, mu, sigma):
if sigma == 0:
raise ValueError("Standardavvikelse kan inte vara noll.")
return (x - mu) / sigma
## Exempelanvändning:
x = 95
mu = 88
sigma = 4
try:
z = calculate_z_score(x, mu, sigma)
print("Z-poäng:", round(z, 2))
except ValueError as e:
print(e)
Java
// Beräkna z-poäng i Java
public class ZScoreCalculator {
public static double calculateZScore(double x, double mu, double sigma) {
if (sigma == 0) {
throw new IllegalArgumentException("Standardavvikelse kan inte vara noll.");
}
return (x - mu) / sigma;
}
public static void main(String[] args) {
double x = 110;
double mu = 100;
double sigma = 5;
try {
double z = calculateZScore(x, mu, sigma);
System.out.printf("Z-poäng: %.2f%n", z);
} catch (IllegalArgumentException e) {
System.err.println(e.getMessage());
}
}
}
C/C++
// Beräkna z-poäng i C++
#include <iostream>
#include <stdexcept>
double calculate_z_score(double x, double mu, double sigma) {
if (sigma == 0) {
throw std::invalid_argument("Standardavvikelse kan inte vara noll.");
}
return (x - mu) / sigma;
}
int main() {
double x = 130;
double mu = 120;
double sigma = 10;
try {
double z = calculate_z_score(x, mu, sigma);
std::cout << "Z-poäng: " << z << std::endl;
} catch (const std::exception &e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
Ruby
## Beräkna z-poäng i Ruby
def calculate_z_score(x, mu, sigma)
raise ArgumentError, "Standardavvikelse kan inte vara noll." if sigma == 0
(x - mu) / sigma
end
## Exempelanvändning:
x = 105
mu = 100
sigma = 5
begin
z = calculate_z_score(x, mu, sigma)
puts "Z-poäng: #{z.round(2)}"
rescue ArgumentError => e
puts e.message
end
PHP
<?php
// Beräkna z-poäng i PHP
function calculate_z_score($x, $mu, $sigma) {
if ($sigma == 0) {
throw new Exception("Standardavvikelse kan inte vara noll.");
}
return ($x - $mu) / $sigma;
}
// Exempelanvändning:
$x = 115;
$mu = 110;
$sigma = 5;
try {
$z = calculate_z_score($x, $mu, $sigma);
echo "Z-poäng: " . round($z, 2);
} catch (Exception $e) {
echo $e->getMessage();
}
?>
Rust
// Beräkna z-poäng i Rust
fn calculate_z_score(x: f64, mu: f64, sigma: f64) -> Result<f64, String> {
if sigma == 0.0 {
return Err("Standardavvikelse kan inte vara noll.".to_string());
}
Ok((x - mu) / sigma)
}
fn main() {
let x = 125.0;
let mu = 115.0;
let sigma = 5.0;
match calculate_z_score(x, mu, sigma) {
Ok(z) => println!("Z-poäng: {:.2}", z),
Err(e) => println!("{}", e),
}
}
C#
// Beräkna z-poäng i C#
using System;
public class ZScoreCalculator
{
public static double CalculateZScore(double x, double mu, double sigma)
{
if (sigma == 0)
throw new ArgumentException("Standardavvikelse kan inte vara noll.");
return (x - mu) / sigma;
}
public static void Main()
{
double x = 135;
double mu = 125;
double sigma = 5;
try
{
double z = CalculateZScore(x, mu, sigma);
Console.WriteLine($"Z-poäng: {z:F2}");
}
catch (ArgumentException e)
{
Console.WriteLine(e.Message);
}
}
}
Go
// Beräkna z-poäng i Go
package main
import (
"errors"
"fmt"
)
func calculateZScore(x, mu, sigma float64) (float64, error) {
if sigma == 0 {
return 0, errors.New("standardavvikelse kan inte vara noll")
}
return (x - mu) / sigma, nil
}
func main() {
x := 140.0
mu := 130.0
sigma := 5.0
z, err := calculateZScore(x, mu, sigma)
if err != nil {
fmt.Println(err)
} else {
fmt.Printf("Z-poäng: %.2f\n", z)
}
}
Swift
// Beräkna z-poäng i Swift
func calculateZScore(x: Double, mu: Double, sigma: Double) throws -> Double {
if sigma == 0 {
throw NSError(domain: "Standardavvikelse kan inte vara noll.", code: 1, userInfo: nil)
}
return (x - mu) / sigma
}
// Exempelanvändning:
let x = 120.0
let mu = 110.0
let sigma = 5.0
do {
let z = try calculateZScore(x: x, mu: mu, sigma: sigma)
print("Z-poäng: \(String(format: "%.2f", z))")
} catch let error as NSError {
print(error.domain)
}
Referenser
-
Standardpoäng - Wikipedia
-
Förstå Z-Poäng - Statistics Solutions
-
Normalfördelning och Z-Poäng - Khan Academy
Ytterligare Resurser
-
Interaktiv Z-Poäng Kalkylator
https://www.socscistatistics.com/pvalues/normaldistribution.aspx
-
Visualisering av Normalfördelningen
https://seeing-theory.brown.edu/normal-distribution/index.html