Whiz Tools

Z-Score Calculator

Introduction

z-рахунок (або стандартний рахунок) є статистичним вимірюванням, яке описує відношення значення до середнього значення групи значень. Він вказує, скільки стандартних відхилень елемент від середнього. Z-рахунок є важливим інструментом у статистиці, що дозволяє стандартизувати різні набори даних та виявляти викиди.

Формула

Z-рахунок розраховується за допомогою наступної формули:

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

Де:

  • zz = z-рахунок
  • xx = окреме значення даних
  • μ\mu = середнє значення набору даних
  • σ\sigma = стандартне відхилення набору даних

Ця формула розраховує кількість стандартних відхилень, на які дані відхиляються від середнього.

Розрахунок

Щоб обчислити z-рахунок даного значення:

  1. Розрахуйте середнє (μ\mu):

    Сумуйте всі дані та поділіть на кількість даних.

    μ=i=1nxin\mu = \frac{\sum_{i=1}^{n} x_i}{n}
  2. Розрахуйте стандартне відхилення (σ\sigma):

    • Дисперсія (σ2\sigma^2):

      σ2=i=1n(xiμ)2n\sigma^2 = \frac{\sum_{i=1}^{n} (x_i - \mu)^2}{n}
    • Стандартне відхилення:

      σ=σ2\sigma = \sqrt{\sigma^2}
  3. Обчисліть Z-рахунок:

    Підставте значення у формулу z-рахунку.

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

Крайні випадки

  • Нульове стандартне відхилення (σ=0\sigma = 0):

    Коли всі дані однакові, стандартне відхилення дорівнює нулю, що робить z-рахунок невизначеним, оскільки ви не можете ділити на нуль. У цьому випадку концепція z-рахунку не застосовується.

  • Дані, що дорівнюють середньому (x=μx = \mu):

    Якщо дані дорівнюють середньому, z-рахунок дорівнює нулю, що вказує на те, що він є точно середнім.

  • Ненумеричні введення:

    Переконайтеся, що всі введення є числовими. Ненумеричні введення призведуть до помилок у розрахунках.

Кумулятивна ймовірність

Кумулятивна ймовірність, пов'язана з z-рахунком, представляє ймовірність того, що випадкова змінна з стандартного нормального розподілу буде меншою або рівною заданому значенню. Це площа під кривою нормального розподілу зліва від заданого z-рахунку.

Математично кумулятивна ймовірність PP розраховується за допомогою функції кумулятивного розподілу (CDF) стандартного нормального розподілу:

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

Де:

  • Φ(z)\Phi(z) = CDF стандартного нормального розподілу при zz

Кумулятивна ймовірність є важливою в статистиці для визначення ймовірності того, що значення відбудеться в певному діапазоні. Вона широко використовується в таких сферах, як контроль якості, фінанси та соціальні науки.

SVG Діаграма

Нижче наведена SVG-діаграма, що ілюструє криву стандартного нормального розподілу та z-рахунок:

μ x z

Стандартний нормальний розподіл

Рисунок: Крива стандартного нормального розподілу з затіненням Z-рахунку

Ця діаграма показує криву нормального розподілу з середнім μ\mu у центрі. Затінена область представляє кумулятивну ймовірність до даного значення xx, що відповідає z-рахунку.

Використання

Застосування

  • Стандартизація через різні шкали:

    Z-рахунки дозволяють порівнювати дані з різних шкал, стандартизуючи набори даних.

  • Виявлення викидів:

    Виявлення даних, що значно віддалені від середнього (наприклад, z-рахунки менше -3 або більше 3).

  • Статистичне тестування:

    Використовується в тестуванні гіпотез, включаючи z-тести, для визначення, чи значно відрізняється середнє значення вибірки від відомого середнього значення популяції.

  • Контроль якості:

    У виробництві z-рахунки допомагають контролювати процеси, щоб забезпечити, що результати залишаються в межах прийнятних обмежень.

  • Фінанси та інвестиції:

    Оцінка продуктивності акцій шляхом порівняння доходів відносно середньої продуктивності ринку.

Альтернативи

  • T-рахунок:

    Схожий на z-рахунок, але використовується, коли розмір вибірки малий, а стандартне відхилення популяції невідоме.

  • Перцентильний ранг:

    Вказує на відсоток балів у його частотному розподілі, які є рівними або нижчими за нього.

  • Одиниці стандартного відхилення:

    Використання сирих значень стандартного відхилення без стандартизації як z-рахунків.

Історія

Концепція z-рахунку виникає з роботи над нормальним розподілом Карла Фрідріха Гауса на початку 19 століття. Стандартний нормальний розподіл, що є фундаментальним для z-рахунків, був подальше розроблений статистиками, такими як Абрахам де Мувр і П'єр-Сімон Лаплас. Використання z-рахунків стало поширеним з розвитком статистичних методів у 20 столітті, особливо в психологічному тестуванні та контролі якості.

Приклади

Excel

## Розрахунок z-рахунку в Excel
## Припустимо, що дані в комірці A2, середнє в комірці B2, стандартне відхилення в комірці C2
=(A2 - B2) / C2

R

## Розрахунок z-рахунку в R
calculate_z_score <- function(x, mean, sd) {
  if (sd == 0) {
    stop("Стандартне відхилення не може бути нулем.")
  }
  z <- (x - mean) / sd
  return(z)
}

## Приклад використання:
x <- 85
mu <- 75
sigma <- 5
z_score <- calculate_z_score(x, mu, sigma)
print(paste("Z-рахунок:", z_score))

MATLAB

% Розрахунок z-рахунку в MATLAB
function z = calculate_z_score(x, mu, sigma)
    if sigma == 0
        error('Стандартне відхилення не може бути нулем.');
    end
    z = (x - mu) / sigma;
end

% Приклад використання:
x = 90;
mu = 80;
sigma = 8;
z = calculate_z_score(x, mu, sigma);
fprintf('Z-рахунок: %.2f\n', z);

JavaScript

// Розрахунок z-рахунку в JavaScript
function calculateZScore(x, mu, sigma) {
  if (sigma === 0) {
    throw new Error('Стандартне відхилення не може бути нулем.');
  }
  return (x - mu) / sigma;
}

// Приклад використання:
const x = 100;
const mu = 85;
const sigma = 7;
try {
  const z = calculateZScore(x, mu, sigma);
  console.log(`Z-рахунок: ${z.toFixed(2)}`);
} catch (error) {
  console.error(error.message);
}

Python

## Розрахунок z-рахунку в Python
def calculate_z_score(x, mu, sigma):
    if sigma == 0:
        raise ValueError("Стандартне відхилення не може бути нулем.")
    return (x - mu) / sigma

## Приклад використання:
x = 95
mu = 88
sigma = 4
try:
    z = calculate_z_score(x, mu, sigma)
    print("Z-рахунок:", round(z, 2))
except ValueError as e:
    print(e)

Java

// Розрахунок z-рахунку в Java
public class ZScoreCalculator {
    public static double calculateZScore(double x, double mu, double sigma) {
        if (sigma == 0) {
            throw new IllegalArgumentException("Стандартне відхилення не може бути нулем.");
        }
        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-рахунок: %.2f%n", z);
        } catch (IllegalArgumentException e) {
            System.err.println(e.getMessage());
        }
    }
}

C/C++

// Розрахунок z-рахунку в C++
#include <iostream>
#include <stdexcept>

double calculate_z_score(double x, double mu, double sigma) {
    if (sigma == 0) {
        throw std::invalid_argument("Стандартне відхилення не може бути нулем.");
    }
    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-рахунок: " << z << std::endl;
    } catch (const std::exception &e) {
        std::cerr << e.what() << std::endl;
    }

    return 0;
}

Ruby

## Розрахунок z-рахунку в Ruby
def calculate_z_score(x, mu, sigma)
  raise ArgumentError, "Стандартне відхилення не може бути нулем." if sigma == 0
  (x - mu) / sigma
end

## Приклад використання:
x = 105
mu = 100
sigma = 5
begin
  z = calculate_z_score(x, mu, sigma)
  puts "Z-рахунок: #{z.round(2)}"
rescue ArgumentError => e
  puts e.message
end

PHP

<?php
// Розрахунок z-рахунку в PHP
function calculate_z_score($x, $mu, $sigma) {
  if ($sigma == 0) {
    throw new Exception("Стандартне відхилення не може бути нулем.");
  }
  return ($x - $mu) / $sigma;
}

// Приклад використання:
$x = 115;
$mu = 110;
$sigma = 5;

try {
  $z = calculate_z_score($x, $mu, $sigma);
  echo "Z-рахунок: " . round($z, 2);
} catch (Exception $e) {
  echo $e->getMessage();
}
?>

Rust

// Розрахунок z-рахунку в Rust
fn calculate_z_score(x: f64, mu: f64, sigma: f64) -> Result<f64, String> {
    if sigma == 0.0 {
        return Err("Стандартне відхилення не може бути нулем.".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-рахунок: {:.2}", z),
        Err(e) => println!("{}", e),
    }
}

C#

// Розрахунок z-рахунку в C#
using System;

public class ZScoreCalculator
{
    public static double CalculateZScore(double x, double mu, double sigma)
    {
        if (sigma == 0)
            throw new ArgumentException("Стандартне відхилення не може бути нулем.");
        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-рахунок: {z:F2}");
        }
        catch (ArgumentException e)
        {
            Console.WriteLine(e.Message);
        }
    }
}

Go

// Розрахунок z-рахунку в Go
package main

import (
    "errors"
    "fmt"
)

func calculateZScore(x, mu, sigma float64) (float64, error) {
    if sigma == 0 {
        return 0, errors.New("стандартне відхилення не може бути нулем")
    }
    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-рахунок: %.2f\n", z)
    }
}

Swift

// Розрахунок z-рахунку в Swift
func calculateZScore(x: Double, mu: Double, sigma: Double) throws -> Double {
    if sigma == 0 {
        throw NSError(domain: "Стандартне відхилення не може бути нулем.", code: 1, userInfo: nil)
    }
    return (x - mu) / sigma
}

// Приклад використання:
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-рахунок: \(String(format: "%.2f", z))")
} catch let error as NSError {
    print(error.domain)
}

Посилання

  1. Стандартний рахунок - Вікіпедія

    https://en.wikipedia.org/wiki/Standard_score

  2. Розуміння Z-рахунків - Statistics Solutions

    https://www.statisticssolutions.com/understanding-z-scores/

  3. Нормальний розподіл та Z-рахунки - Khan Academy

    https://www.khanacademy.org/math/statistics-probability/modeling-distributions-of-data/z-scores/a/z-scores-review

Додаткові ресурси

Loading related tools...
Feedback