# Statistical Functions Part Five

## Contents

- 1 WEIBULL.DIST
- 2 WEIBULL
- 3 VARPA
- 4 VARP
- 5 VAR.S
- 6 VAR.P
- 7 VARA
- 8 VAR
- 9 TTEST
- 10 TINV
- 11 T.TEST
- 12 T.INV.2T
- 13 T.INV
- 14 T.DIST.RT
- 15 T.DIST.2T
- 16 T.DIST
- 17 TDIST
- 18 STEYX
- 19 STDEVPA
- 20 STDEVP
- 21 STDEV.S
- 22 STDEV.P
- 23 STDEVA
- 24 STDEV
- 25 STANDARDIZE
- 26 SLOPE
- 27 SKEWP
- 28 SKEW
- 29 RANK.EQ
- 30 RANK.AVG
- 31 RANK
- 32 PROB
- 33 PERMUTATIONA
- 34 PERMUT
- 35 NORMSINV
- 36 NORMSDIST
- 37 NORM.S.INV
- 38 NORM.S.DIST
- 39 FORECAST.LINEAR
- 40 FORECAST
- 41 DEVSQ
- 42 Related Topics

## WEIBULL.DIST

Returns the values of the Weibull distribution.

The Weibull distribution is a continuous probability distribution, with parameters Alpha > 0 (shape) and Beta > 0 (scale).

If C is 0, WEIBULL.DIST calculates the probability density function.

If C is 1, WEIBULL.DIST calculates the cumulative distribution function.

### Syntax

`WEIBULL.DIST(Number; Alpha; Beta; C)`

**Number** is the value at which to calculate the Weibull distribution.

**Alpha** is the shape parameter of the Weibull distribution.

**Beta** is the scale parameter of the Weibull distribution.

**C** indicates the type of function.

### Example

`=WEIBULL.DIST(2;1;1;1)`

returns 0.8646647168.

See also the Wiki page.

## WEIBULL

Returns the values of the Weibull distribution.

The Weibull distribution is a continuous probability distribution, with parameters Alpha > 0 (shape) and Beta > 0 (scale).

If C is 0, WEIBULL calculates the probability density function.

If C is 1, WEIBULL calculates the cumulative distribution function.

### Syntax

`WEIBULL(Number; Alpha; Beta; C)`

**Number** is the value at which to calculate the Weibull distribution.

**Alpha** is the shape parameter of the Weibull distribution.

**Beta** is the scale parameter of the Weibull distribution.

**C** indicates the type of function.

### Example

`=WEIBULL(2;1;1;1)`

returns 0.86.

See also the Wiki page.

## VARPA

Calculates the variance based on the entire population. The value of text is 0.

### Syntax

`VARPA(Value1; Value2; ...Value30)`

**Value1,value2,...Value30** are values or ranges representing an entire population.

### Example

`=VARPA(A1:A50)`

## VARP

Calculates a variance based on the entire population.

### Syntax

`VARP(Number1; Number2; ...Number30)`

**Number1, Number2, ...Number30** are numerical values or ranges representing an entire population.

### Example

`=VARP(A1:A50)`

## VAR.S

Estimates the variance based on a sample.

### Syntax

`VAR.S(Number1; Number2; ...Number30)`

**Number1, Number2, ...Number30** are numerical values or ranges representing a sample based on an entire population.

### Example

`=VAR.S(A1:A50)`

## VAR.P

Calculates a variance based on the entire population.

### Syntax

`VAR.P(Number1; Number2; ...Number30)`

**Number1, Number2, ...Number30** are numerical values or ranges representing an entire population.

### Example

`=VAR.P(A1:A50)`

## VARA

Estimates a variance based on a sample. The value of text is 0.

### Syntax

`VARA(Value1; Value2; ...Value30)`

**Value1, Value2,...Value30** are values or ranges representing a sample derived from an entire population. Text has the value 0.

### Example

`=VARA(A1:A50)`

## VAR

Estimates the variance based on a sample.

### Syntax

`VAR(Number1; Number2; ...Number30)`

**Number1, Number2, ...Number30** are numerical values or ranges representing a sample based on an entire population.

### Example

`=VAR(A1:A50)`

## TTEST

Returns the probability associated with a Student's t-Test.

### Syntax

`TTEST(Data1; Data2; Mode; Type)`

**Data1** is the dependent array or range of data for the first record.

**Data2** is the dependent array or range of data for the second record.

**Mode** = 1 calculates the one-tailed test, **Mode** = 2 the two- tailed test.

**Type** is the kind of t-test to perform. Type 1 means paired. Type 2 means two samples, equal variance (homoscedastic). Type 3 means two samples, unequal variance (heteroscedastic).

### Example

`=TTEST(A1:A50;B1:B50;2;2)`

## TINV

Returns the inverse of the t-distribution.

### Syntax

`TINV(Number; DegreesFreedom)`

**Number** is the probability associated with the two-tailed t-distribution.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

### Example

`=TINV(0.1;6)`

returns 1.94

## T.TEST

Returns the probability associated with a Student's t-Test.

### Syntax

`T.TEST(Data1; Data2; Mode; Type)`

**Data1** is the dependent array or range of data for the first record.

**Data2** is the dependent array or range of data for the second record.

**Mode** = 1 calculates the one-tailed test, **Mode** = 2 the two- tailed test.

**Type** is the kind of t-test to perform. Type 1 means paired. Type 2 means two samples, equal variance (homoscedastic). Type 3 means two samples, unequal variance (heteroscedastic).

### Example

`=T.TEST(A1:A50;B1:B50;2;2)`

## T.INV.2T

Calculates the inverse of the two-tailed Student's T Distribution , which is a continuous probability distribution that is frequently used for testing hypotheses on small sample data sets.

### Syntax

`T.INV.2T(Number; DegreesFreedom)`

**Number** is the probability associated with the two-tailed t-distribution.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

### Example

`=T.INV.2T(0.25; 10)`

returns 1.221255395.

## T.INV

Returns the one tailed inverse of the t-distribution.

### Syntax

`T.INV(Number; DegreesFreedom)`

**Number** is the probability associated with the one-tailed t-distribution.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

### Example

`=T.INV(0.1;6)`

returns -1.4397557473.

## T.DIST.RT

Calculates the right-tailed Student's T Distribution, which is a continuous probability distribution that is frequently used for testing hypotheses on small sample data sets.

### Syntax

`T.DIST.RT(Number; DegreesFreedom)`

**Number** is the value for which the t-distribution is calculated.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

### Example

`=T.DIST.RT(1; 10)`

returns 0.1704465662.

## T.DIST.2T

Calculates the two-tailed Student's T Distribution, which is a continuous probability distribution that is frequently used for testing hypotheses on small sample data sets.

### Syntax

`T.DIST.2T(Number; DegreesFreedom)`

**Number** is the value for which the t-distribution is calculated.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

### Example

`=T.DIST.2T(1; 10)`

returns 0.3408931323.

## T.DIST

Returns the t-distribution.

### Syntax

`T.DIST(Number; DegreesFreedom; Cumulative)`

**Number** is the value for which the t-distribution is calculated.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

**Cumulative** = 0 or FALSE returns the probability density function, 1 or TRUE returns the cumulative distribution function.

### Example

`=T.DIST(1; 10; TRUE)`

returns 0.8295534338

## TDIST

Returns the t-distribution.

### Syntax

`TDIST(Number; DegreesFreedom; Mode)`

**Number** is the value for which the t-distribution is calculated.

**DegreesFreedom** is the number of degrees of freedom for the t-distribution.

**Mode** = 1 returns the one-tailed test, **Mode** = 2 returns the two-tailed test.

### Example

`=TDIST(12;5;1)`

## STEYX

Returns the standard error of the predicted y value for each x in the regression.

### Syntax

`STEYX(DataY; DataX)`

**DataY** is the array or matrix of Y data.

**DataX** is the array or matrix of X data.

### Example

`=STEYX(A1:A50;B1:B50)`

## STDEVPA

Calculates the standard deviation based on the entire population.

### Syntax

`STDEVPA(Value1;Value2;...Value30)`

**Value1,value2,...value30** are values or ranges representing an entire population. Text has the value 0.

### Example

`=STDEVPA(A1:A50)`

returns the standard deviation of the data referenced.

## STDEVP

Calculates the standard deviation based on the entire population.

### Syntax

`STDEVP(Number1;Number2;...Number30)`

**Number 1,Number 2,...Number 30** are numerical values or ranges representing an entire population.

### Example

`=STDEVP(A1:A50)`

returns a standard deviation of the data referenced.

## STDEV.S

Calculates the standard deviation based on sample of the population.

### Syntax

`STDEV.S(Number1;Number2;...Number30)`

**Number 1,Number 2,...Number 30** are numerical values or ranges representing a sample of the population.

### Example

`=STDEV.S(A1:A50)`

returns a standard deviation of the data referenced.

## STDEV.P

Calculates the standard deviation based on the entire population.

### Syntax

`STDEV.P(Number1;Number2;...Number30)`

**Number 1,Number 2,...Number 30** are numerical values or ranges representing an entire population.

### Example

`=STDEV.P(A1:A50)`

returns a standard deviation of the data referenced.

## STDEVA

Calculates the standard deviation of an estimation based on a sample.

### Syntax

`STDEVA(Value1;Value2;...Value30)`

**Value1, Value2, ...Value30** are values or ranges representing a sample derived from an entire population. Text has the value 0.

### Example

`=STDEVA(A1:A50)`

returns the estimated standard deviation based on the data referenced.

## STDEV

Estimates the standard deviation based on a sample.

### Syntax

`STDEV(Number1; Number2; ...Number30)`

**Number1, Number2, ... Number30** are numerical values or ranges representing a sample based on an entire population.

### Example

`=STDEV(A1:A50)`

returns the estimated standard deviation based on the data referenced.

## STANDARDIZE

Converts a random variable to a normalized value.

### Syntax

`STANDARDIZE(Number; Mean; StDev)`

**Number** is the value to be standardized.

**Mean** is the arithmetic mean of the distribution.

**StDev** is the standard deviation of the distribution.

### Example

`=STANDARDIZE(11;10;1)`

returns 1. The value 11 in a normal distribution with a mean of 10 and a standard deviation of 1 is as much above the mean of 10, as the value 1 is above the mean of the standard normal distribution.

## SLOPE

Returns the slope of the linear regression line. The slope is adapted to the data points set in the y and x values.

### Syntax

`SLOPE(DataY; DataX)`

**DataY** is the array or matrix of Y data.

**DataX** is the array or matrix of X data.

### Example

`=SLOPE(A1:A50;B1:B50)`

## SKEWP

Calculates the skewness of a distribution using the population of a random variable.

`SKEWP(Number1; Number2;..., Number30)`

**Number1, Number2, ..., Number30** are up to 30 numerical values or ranges.

Calculates the skewness of a distribution using the population, i.e. the possible outcomes, of a random variable. The sequence shall contain three numbers at least.

`SKEWP(2;3;1;6;8;5)`

returns 0.2828158928

`SKEWP(A1:A6)`

returns 0.2828158928, when the range A1:A6 contains {2;3;1;6;8;5}

`SKEWP(Number1;Number2)`

returns zero always, if Number1 and Number2 results in two numbers.

`SKEWP(Number1)`

returns Err:502 (Invalid argument) if Number1 results in one number, because SKEWP cannot be calculated with one value.

## SKEW

Returns the skewness of a distribution.

### Syntax

`SKEW(Number1; Number2; ...Number30)`

**Number1, Number2...Number30** are numerical values or ranges.

### Example

`=SKEW(A1:A50)`

calculates the value of skew for the data referenced.

## RANK.EQ

Returns the statistical rank of a given value, within a supplied array of values. If there are duplicate values in the list, these are given the same rank.

### Syntax

`RANK.EQ(Value; Data; Type)`

**Value** is the value, whose rank is to be determined.

**Data** is the array or range of data in the sample.

**Type** (optional) is the sequence order.

Type = 0 means descending from the last item of the array to the first (this is the default),

Type = 1 means ascending from the first item of the range to the last.

### Example

`=RANK.EQ(A10;A1:A50)`

returns the ranking of the value in A10 in value range A1:A50. If `Value`

does not exist within the range an error message is displayed.

## RANK.AVG

Returns the statistical rank of a given value, within a supplied array of values. If there are duplicate values in the list, the average rank is returned.

### Syntax

`RANK.AVG(Value; Data; Type)`

**Value** is the value, whose rank is to be determined.

**Data** is the array or range of data in the sample.

**Type** (optional) is the sequence order.

Type = 0 means descending from the last item of the array to the first (this is the default),

Type = 1 means ascending from the first item of the range to the last.

### Example

`=RANK.AVG(A10;A1:A50)`

returns the ranking of the value in A10 in value range A1:A50. If `Value`

does not exist within the range an error message is displayed.

## RANK

Returns the rank of a number in a sample.

### Syntax

`RANK(Value; Data; Type)`

**Value** is the value, whose rank is to be determined.

**Data** is the array or range of data in the sample.

**Type** (optional) is the sequence order.

Type = 0 means descending from the last item of the array to the first (this is the default),

Type = 1 means ascending from the first item of the range to the last.

### Example

`=RANK(A10;A1:A50)`

returns the ranking of the value in A10 in value range A1:A50. If `Value`

does not exist within the range an error message is displayed.

## PROB

Returns the probability that values in a range are between two limits. If there is no `End`

value, this function calculates the probability based on the principle that the Data values are equal to the value of `Start`

.

### Syntax

`PROB(Data; Probability; Start; End)`

**Data** is the array or range of data in the sample.

**Probability** is the array or range of the corresponding probabilities.

**Start** is the start value of the interval whose probabilities are to be summed.

**End** (optional) is the end value of the interval whose probabilities are to be summed. If this parameter is missing, the probability for the **Start** value is calculated.

### Example

`=PROB(A1:A50;B1:B50;50;60)`

returns the probability with which a value within the range of A1:A50 is also within the limits between 50 and 60. Every value within the range of A1:A50 has a probability within the range of B1:B50.

## PERMUTATIONA

Returns the number of permutations for a given number of objects (repetition allowed).

### Syntax

`PERMUTATIONA(Count1; Count2)`

**Count1** is the total number of objects.

**Count2** is the number of objects in each permutation.

### Example

How often can 2 objects be selected from a total of 11 objects?

`=PERMUTATIONA(11;2)`

returns 121.

`=PERMUTATIONA(6;3)`

returns 216. There are 216 different possibilities to put a sequence of 3 playing cards together out of six playing cards if every card is returned before the next one is drawn.

## PERMUT

Returns the number of permutations for a given number of objects.

### Syntax

`PERMUT(Count1; Count2)`

**Count1** is the total number of objects.

**Count2** is the number of objects in each permutation.

### Example

`=PERMUT(6;3)`

returns 120. There are 120 different possibilities, to pick a sequence of 3 playing cards out of 6 playing cards.

## NORMSINV

Returns the inverse of the standard normal cumulative distribution.

### Syntax

`NORMSINV(Number)`

**Number** is the probability to which the inverse standard normal distribution is calculated.

### Example

`=NORMSINV(0.908789)`

returns 1.3333.

## NORMSDIST

Returns the standard normal cumulative distribution function. The distribution has a mean of zero and a standard deviation of one.

It is GAUSS(x)=NORMSDIST(x)-0.5

### Syntax

`NORMSDIST(Number)`

**Number** is the value to which the standard normal cumulative distribution is calculated.

### Example

`=NORMSDIST(1)`

returns 0.84. The area below the standard normal distribution curve to the left of X value 1 is 84% of the total area.

## NORM.S.INV

Returns the inverse of the standard normal cumulative distribution.

### Syntax

`NORM.S.INV(Number)`

**Number** is the probability to which the inverse standard normal distribution is calculated.

### Example

`=NORM.S.INV(0.908789)`

returns 1.333334673.

## NORM.S.DIST

Returns the standard normal cumulative distribution function. The distribution has a mean of zero and a standard deviation of one.

### Syntax

`NORM.S.DIST(Number; Cumulative)`

**Number** is the value to which the standard normal cumulative distribution is calculated.

**Cumulative** 0 or FALSE calculates the probability density function. Any other value or TRUE calculates the cumulative distribution function.

### Examples

`=NORM.S.DIST(1;0)`

returns 0.2419707245.

`=NORM.S.DIST(1;1)`

returns 0.8413447461. The area below the standard normal distribution curve to the left of X value 1 is 84% of the total area.

## FORECAST.LINEAR

Extrapolates future values based on existing x and y values.

### Syntax

`FORECAST.LINEAR(Value; DataY; DataX)`

**Value** is the x value, for which the y value on the linear regression is to be returned.

**DataY** is the array or range of known y's.

**DataX** is the array or range of known x's.

### Example

`=FORECAST.LINEAR(50;A1:A50;B1;B50)`

returns the Y value expected for the X value of 50 if the X and Y values in both references are linked by a linear trend.

## FORECAST

Extrapolates future values based on existing x and y values.

### Syntax

`FORECAST(Value; DataY; DataX)`

**Value** is the x value, for which the y value on the linear regression is to be returned.

**DataY** is the array or range of known y's.

**DataX** is the array or range of known x's.

### Example

`=FORECAST(50;A1:A50;B1;B50)`

returns the Y value expected for the X value of 50 if the X and Y values in both references are linked by a linear trend.

## DEVSQ

Returns the sum of squares of deviations based on a sample mean.

### Syntax

`DEVSQ(Number1; Number2; ...Number30)`

**Number1, Number2, ...Number30** numerical values or ranges representing a sample.

### Example

`=DEVSQ(A1:A50)`