🛠️

Whiz Tools

Build • Create • Innovate

Z-Score Calculator for Statistical Analysis and Data Standardization

Kokotoa z-score (alama ya kawaida) kwa data yoyote, ikitathmini nafasi yake kulinganisha na wastani kwa kutumia kiwango cha kawaida. Inafaa kwa uchambuzi wa takwimu na viwango vya data.

📚

Hati

Z-Score Calculator

Introduction

z-score (au kiwango cha kawaida) ni kipimo cha takwimu kinachoelezea uhusiano wa thamani na wastani wa kundi la thamani. Inaonyesha ni viwango vingapi vya kawaida kipengele kimoja kipo mbali na wastani. Z-score ni chombo muhimu katika takwimu, kinachoruhusu kiwango sawa kati ya seti tofauti za data na kubaini viashiria vya mbali.

Formula

Z-score inakokotolewa kwa kutumia formula ifuatayo:

z=xμσz = \frac{x - \mu}{\sigma}

Ambapo:

  • zz = z-score
  • xx = kipengele cha data binafsi
  • μ\mu = wastani wa dataset
  • σ\sigma = kiwango cha kawaida cha dataset

Formula hii inakokotolea idadi ya viwango vya kawaida kipengele cha data kipo mbali na wastani.

Calculation

Ili kukokotoa z-score ya kipengele cha data:

  1. Kokotoa Wastani (μ\mu):

    Jumlisha vipengele vyote vya data na ugawanye kwa idadi ya vipengele vya data.

    μ=i=1nxin\mu = \frac{\sum_{i=1}^{n} x_i}{n}
  2. Kokotoa Kiwango cha Kawaida (σ\sigma):

    • Kiwango cha Kawaida (σ2\sigma^2):

      σ2=i=1n(xiμ)2n\sigma^2 = \frac{\sum_{i=1}^{n} (x_i - \mu)^2}{n}
    • Kiwango cha Kawaida:

      σ=σ2\sigma = \sqrt{\sigma^2}
  3. Kokotoa Z-Score:

    Badilisha thamani katika formula ya z-score.

    z=xμσz = \frac{x - \mu}{\sigma}

Edge Cases

  • Kiwango cha Kawaida Sifuri (σ=0\sigma = 0):

    Wakati vipengele vyote vya data ni sawa, kiwango cha kawaida ni sifuri, na kufanya z-score isijulikane kwa sababu huwezi kugawanya kwa sifuri. Katika hali hii, dhana ya z-score haiwezi kutumika.

  • Kipengele cha Data Sawa na Wastani (x=μx = \mu):

    Ikiwa kipengele cha data ni sawa na wastani, z-score ni sifuri, ikionyesha kuwa ni wastani kamili.

  • Ingizo Lisilo la Nambari:

    Hakikisha kuwa ingizo zote ni za nambari. Ingizo zisizo za nambari zitapelekea makosa ya kukokotoa.

Cumulative Probability

Uwezekano wa jumla unaohusishwa na z-score unawakilisha uwezekano kwamba kigezo cha nasibu kutoka kwa usambazaji wa kawaida wa kiwango cha chini kitakuwa kidogo au sawa na thamani iliyotolewa. Ni eneo chini ya curve ya usambazaji wa kawaida upande wa kushoto wa z-score iliyotolewa.

Kihesabu, uwezekano wa jumla PP unakokotolewa kwa kutumia kazi ya usambazaji wa kawaida (CDF) wa usambazaji wa kawaida wa kiwango cha chini:

P(Zz)=Φ(z)=12πzet2/2dtP(Z \leq z) = \Phi(z) = \frac{1}{\sqrt{2\pi}} \int_{-\infty}^{z} e^{-t^2/2} \, dt

Ambapo:

  • Φ(z)\Phi(z) = CDF ya usambazaji wa kawaida wa kiwango cha chini katika zz

Uwezekano wa jumla ni muhimu katika takwimu kwa kubaini uwezekano wa thamani kutokea ndani ya eneo fulani. Inatumika sana katika maeneo kama udhibiti wa ubora, fedha, na sayansi za kijamii.

SVG Diagram

Hapa chini kuna mchoro wa SVG unaoonyesha curve ya usambazaji wa kawaida wa kiwango cha chini na z-score:

μ x z

Usambazaji wa Kawaida wa Kiwango cha Chini

Picha: Curve ya Usambazaji wa Kawaida na Z-Score Iliyopigwa Kivuli

Mchoro huu unaonyesha curve ya usambazaji wa kawaida na wastani μ\mu katikati. Eneo lililopigwa kivuli linawakilisha uwezekano wa jumla hadi kipengele cha data xx, kinachohusiana na z-score.

Use Cases

Applications

  • Kiwango sawa kati ya Mifumo tofauti:

    Z-scores inaruhusu kulinganisha kati ya data kutoka kwa mifumo tofauti kwa kiwango sawa cha datasets.

  • Kubaini Viashiria vya Mbali:

    Kubaini vipengele vya data ambavyo viko mbali sana na wastani (kwa mfano, z-scores chini ya -3 au zaidi ya 3).

  • Kujaribu Takwimu:

    Inatumika katika majaribio ya dhana, ikiwa ni pamoja na z-tests, kubaini ikiwa wastani wa sampuli unatofautiana kwa kiasi kikubwa na wastani wa idadi inayojulikana.

  • Udhibiti wa Ubora:

    Katika utengenezaji, z-scores husaidia kufuatilia michakato ili kuhakikisha matokeo yanabaki ndani ya mipaka inayokubalika.

  • Fedha na Uwekezaji:

    Kutathmini utendaji wa hisa kwa kulinganisha kurudi kulingana na utendaji wa wastani wa soko.

Alternatives

  • T-Score:

    Inafanana na z-score lakini inatumika wakati ukubwa wa sampuli ni mdogo na kiwango cha kawaida cha idadi hakijulikani.

  • Kiwango cha asilimia:

    Inaonyesha asilimia ya alama katika usambazaji wake wa mara kwa mara ambazo ni sawa na au chini yake.

  • Vitengo vya Kiwango cha Kawaida:

    Kutumia thamani za kiwango cha kawaida bila kiwango sawa kama z-scores.

History

Dhana ya z-score inatokana na kazi juu ya usambazaji wa kawaida na Carl Friedrich Gauss katika karne ya 19. Usambazaji wa kawaida wa kiwango cha chini, ambao ni muhimu kwa z-scores, ulitengenezwa zaidi na takwimu kama Abraham de Moivre na Pierre-Simon Laplace. Matumizi ya z-scores yalienea kwa wingi na maendeleo ya mbinu za takwimu katika karne ya 20, hasa katika majaribio ya kisaikolojia na udhibiti wa ubora.

Examples

Excel

1## Hesabu z-score katika Excel
2## Ikiwa kipengele cha data kiko katika seli A2, wastani katika seli B2, kiwango cha kawaida katika seli C2
3=(A2 - B2) / C2
4

R

1## Hesabu z-score katika R
2calculate_z_score <- function(x, mean, sd) {
3  if (sd == 0) {
4    stop("Kiwango cha kawaida hakiwezi kuwa sifuri.")
5  }
6  z <- (x - mean) / sd
7  return(z)
8}
9
10## Matumizi ya mfano:
11x <- 85
12mu <- 75
13sigma <- 5
14z_score <- calculate_z_score(x, mu, sigma)
15print(paste("Z-score:", z_score))
16

MATLAB

1% Hesabu z-score katika MATLAB
2function z = calculate_z_score(x, mu, sigma)
3    if sigma == 0
4        error('Kiwango cha kawaida hakiwezi kuwa sifuri.');
5    end
6    z = (x - mu) / sigma;
7end
8
9% Matumizi ya mfano:
10x = 90;
11mu = 80;
12sigma = 8;
13z = calculate_z_score(x, mu, sigma);
14fprintf('Z-score: %.2f\n', z);
15

JavaScript

1// Hesabu z-score katika JavaScript
2function calculateZScore(x, mu, sigma) {
3  if (sigma === 0) {
4    throw new Error('Kiwango cha kawaida hakiwezi kuwa sifuri.');
5  }
6  return (x - mu) / sigma;
7}
8
9// Matumizi ya mfano:
10const x = 100;
11const mu = 85;
12const sigma = 7;
13try {
14  const z = calculateZScore(x, mu, sigma);
15  console.log(`Z-score: ${z.toFixed(2)}`);
16} catch (error) {
17  console.error(error.message);
18}
19

Python

1## Hesabu z-score katika Python
2def calculate_z_score(x, mu, sigma):
3    if sigma == 0:
4        raise ValueError("Kiwango cha kawaida hakiwezi kuwa sifuri.")
5    return (x - mu) / sigma
6
7## Matumizi ya mfano:
8x = 95
9mu = 88
10sigma = 4
11try:
12    z = calculate_z_score(x, mu, sigma)
13    print("Z-score:", round(z, 2))
14except ValueError as e:
15    print(e)
16

Java

1// Hesabu z-score katika Java
2public class ZScoreCalculator {
3    public static double calculateZScore(double x, double mu, double sigma) {
4        if (sigma == 0) {
5            throw new IllegalArgumentException("Kiwango cha kawaida hakiwezi kuwa sifuri.");
6        }
7        return (x - mu) / sigma;
8    }
9
10    public static void main(String[] args) {
11        double x = 110;
12        double mu = 100;
13        double sigma = 5;
14
15        try {
16            double z = calculateZScore(x, mu, sigma);
17            System.out.printf("Z-score: %.2f%n", z);
18        } catch (IllegalArgumentException e) {
19            System.err.println(e.getMessage());
20        }
21    }
22}
23

C/C++

1// Hesabu z-score katika C++
2#include <iostream>
3#include <stdexcept>
4
5double calculate_z_score(double x, double mu, double sigma) {
6    if (sigma == 0) {
7        throw std::invalid_argument("Kiwango cha kawaida hakiwezi kuwa sifuri.");
8    }
9    return (x - mu) / sigma;
10}
11
12int main() {
13    double x = 130;
14    double mu = 120;
15    double sigma = 10;
16
17    try {
18        double z = calculate_z_score(x, mu, sigma);
19        std::cout << "Z-score: " << z << std::endl;
20    } catch (const std::exception &e) {
21        std::cerr << e.what() << std::endl;
22    }
23
24    return 0;
25}
26

Ruby

1## Hesabu z-score katika Ruby
2def calculate_z_score(x, mu, sigma)
3  raise ArgumentError, "Kiwango cha kawaida hakiwezi kuwa sifuri." if sigma == 0
4  (x - mu) / sigma
5end
6
7## Matumizi ya mfano:
8x = 105
9mu = 100
10sigma = 5
11begin
12  z = calculate_z_score(x, mu, sigma)
13  puts "Z-score: #{z.round(2)}"
14rescue ArgumentError => e
15  puts e.message
16end
17

PHP

1<?php
2// Hesabu z-score katika PHP
3function calculate_z_score($x, $mu, $sigma) {
4  if ($sigma == 0) {
5    throw new Exception("Kiwango cha kawaida hakiwezi kuwa sifuri.");
6  }
7  return ($x - $mu) / $sigma;
8}
9
10// Matumizi ya mfano:
11$x = 115;
12$mu = 110;
13$sigma = 5;
14
15try {
16  $z = calculate_z_score($x, $mu, $sigma);
17  echo "Z-score: " . round($z, 2);
18} catch (Exception $e) {
19  echo $e->getMessage();
20}
21?>
22

Rust

1// Hesabu z-score katika Rust
2fn calculate_z_score(x: f64, mu: f64, sigma: f64) -> Result<f64, String> {
3    if sigma == 0.0 {
4        return Err("Kiwango cha kawaida hakiwezi kuwa sifuri.".to_string());
5    }
6    Ok((x - mu) / sigma)
7}
8
9fn main() {
10    let x = 125.0;
11    let mu = 115.0;
12    let sigma = 5.0;
13
14    match calculate_z_score(x, mu, sigma) {
15        Ok(z) => println!("Z-score: {:.2}", z),
16        Err(e) => println!("{}", e),
17    }
18}
19

C#

1// Hesabu z-score katika C#
2using System;
3
4public class ZScoreCalculator
5{
6    public static double CalculateZScore(double x, double mu, double sigma)
7    {
8        if (sigma == 0)
9            throw new ArgumentException("Kiwango cha kawaida hakiwezi kuwa sifuri.");
10        return (x - mu) / sigma;
11    }
12
13    public static void Main()
14    {
15        double x = 135;
16        double mu = 125;
17        double sigma = 5;
18
19        try
20        {
21            double z = CalculateZScore(x, mu, sigma);
22            Console.WriteLine($"Z-score: {z:F2}");
23        }
24        catch (ArgumentException e)
25        {
26            Console.WriteLine(e.Message);
27        }
28    }
29}
30

Go

1// Hesabu z-score katika Go
2package main
3
4import (
5    "errors"
6    "fmt"
7)
8
9func calculateZScore(x, mu, sigma float64) (float64, error) {
10    if sigma == 0 {
11        return 0, errors.New("kiwango cha kawaida hakiwezi kuwa sifuri")
12    }
13    return (x - mu) / sigma, nil
14}
15
16func main() {
17    x := 140.0
18    mu := 130.0
19    sigma := 5.0
20
21    z, err := calculateZScore(x, mu, sigma)
22    if err != nil {
23        fmt.Println(err)
24    } else {
25        fmt.Printf("Z-score: %.2f\n", z)
26    }
27}
28

Swift

1// Hesabu z-score katika Swift
2func calculateZScore(x: Double, mu: Double, sigma: Double) throws -> Double {
3    if sigma == 0 {
4        throw NSError(domain: "Kiwango cha kawaida hakiwezi kuwa sifuri.", code: 1, userInfo: nil)
5    }
6    return (x - mu) / sigma
7}
8
9// Matumizi ya mfano:
10let x = 120.0
11let mu = 110.0
12let sigma = 5.0
13
14do {
15    let z = try calculateZScore(x: x, mu: mu, sigma: sigma)
16    print("Z-score: \(String(format: "%.2f", z))")
17} catch let error as NSError {
18    print(error.domain)
19}
20