20.2
20.1
19.2
19.1
18.2
18.1
17.2

# Statistical Functions

This document briefly describes statistical functions implemented in the XtraSpreadsheet.

*Standard Options means the following:

The arguments 'number1', '[number2]', etc., are numerical values or references to cells containing numbers. You can enter up to 255 number arguments. The arguments can be logical values or text representations of numbers. You can also use a reference to a cell array instead of separate numbers. Text, logical values, or empty cells within an array are ignored.

Name

Description

Syntax

AVEDEV

Calculates the average deviation of a set of values.

AVEDEV( number1, [number2], ... )

*Standard Options

AVERAGE

Returns the average (arithmetic mean) of a list of numbers.

AVERAGE( number1, [number2], ... )

*Standard Options

AVERAGEA

Returns the average (arithmetic mean) of a list of numbers.

AVERAGEA( number1, [number2], ... )

The difference compared to the AVERAGE function is that within arrays or reference arguments logical values are counted as 1 or 0 and text is counted as zero.

AVERAGEIF

Returns the average (arithmetic mean) of the cells in a range that meet a given criteria.

AVERAGEIF(range, criteria, [average_range])

The range is an array of values (or range of cells containing values) that is tested against the given criteria. If the average_range argument is omitted, the values in the initial range argument are used to calculate an average. Otherwise, the corresponding cells in the average_range array is used for calculation.

AVERAGEIFS

Finds entries in one or more arrays, that satisfy the respective supplied criteria, and returns the average (arithmetic mean) of the corresponding values in an array supplied as the first argument.

AVERAGEIFS( average_range, criteria_range1, criteria1, [criteria_range2, criteria2], ... )

The average_range is the range for calculation. Criteria_range1, [criteria_range2], … - are the arrays to be tested against supplied criteria. Criteria1, [criteria2], … - are the respective conditions to be tested.

BETA.INV

Returns the inverse of the beta cumulative probability density function (BETA.DIST).

BETA.INV(probability,alpha,beta,[A],[B])

BETA.DIST

Returns the beta distribution.

BETA.DIST(x,alpha,beta,cumulative,[A],[B])

BINOM.DIST

Returns the individual term binomial distribution probability.

BINOM.DIST(number_s,trials,probability_s,cumulative)

BINOM.INV

Returns the smallest value for which the cumulative binomial distribution is greater than or equal to a criterion value.

BINOM.INV(trials,probability_s,alpha)

BINOM.DIST.RANGE

Returns the probability of a trial result using a binomial distribution.

BINOM.DIST.RANGE(trials,probability_s,number_s,[number_s2])

CHISQ.DIST

Returns the chi-squared distribution.

CHISQ.DIST(x,deg_freedom,cumulative)

X - Required. The value at which you want to evaluate the distribution. Deg_freedom - Required. The number of degrees of freedom. Cumulative - Required. A logical value that determines the form of the function.

CHISQ.DIST.RT

Returns the right-tailed probability of the chi-squared distribution.

CHISQ.DIST.RT(x,deg_freedom)

CHISQ.INV

Returns the inverse of the left-tailed probability of the chi-squared distribution.

CHISQ.INV(probability,deg_freedom)

CHISQ.INV.RT

Returns the inverse of the right-tailed probability of the chi-squared distribution.

CHISQ.INV.RT(probability,deg_freedom)

CHISQ.TEST

Returns the test for independence as the value from the chi-squared distribution for the statistic and the appropriate degrees of freedom.

CHISQ.TEST(actual_range,expected_range)

CONFIDENCE.NORM

Returns the confidence interval for a population mean, using a normal distribution.

CONFIDENCE.NORM(alpha,standard_dev,size)

Alpha is the significance level used to compute the confidence level. The confidence level equals 100*(1 - alpha)%, or in other words, an alpha of 0.05 indicates a 95 percent confidence level. Standard_dev is the population standard deviation for the data range and is assumed to be known. Size is the sample size.

CONFIDENCE.T

Returns the confidence interval for a population mean, using a Student's t distribution.

CONFIDENCE.T (alpha,standard_dev,size)

CORREL

Calculates the correlation coefficient for two sets of values.

CORREL( array1, array2 )

The arrays should be of equal length.

COUNT

Returns the number of numeric values in a set of cells or values.

COUNT( value1, [value2], ... )

Numbers and dates are always counted as numeric values. Text representations of numbers and logical values are counted only if supplied directly as function arguments.

COUNTA

Returns a number of non-blank cells or values within a specified set.

COUNTA( value1, [value2], ... )

COUNTBLANK

Returns the number of blank cells in a range of cells.

COUNTBLANK( range )

COUNTIF

Returns the number of cells that satisfy a given criteria in a specified range.

COUNTIF( range, criteria )

COUNTIFS

Returns the number of entries that satisfy all specified criteria in specified ranges.

COUNTIFS( criteria_range1, criteria1, [criteria_range2, criteria2], ... )

Each additional range must have the same number of rows and columns as the criteria_range1 argument. The ranges do not have to be adjacent to each other. Criteria is applied to the associated range and the logical matrix (true/false) is calculated. Resulting matrices are added using AND operator and the number of True entries is counted.

COVARIANCE.P

Returns population covariance, the average of the products of deviations for each data point pair in two data sets.

COVARIANCE.P(array1,array2)

COVARIANCE.S

Returns the sample covariance, the average of the products of deviations for each data point pair in two data sets.

COVARIANCE.S(array1,array2)

DEVSQ

Returns the sum of squares of deviations of data points from their sample mean.

DEVSQ(number1, [number2], ...)

EXPON.DIST

Returns the exponential distribution.

EXPON.DIST(x,lambda,cumulative)

F.DIST

Returns the F probability distribution.

F.DIST(x,deg_freedom1,deg_freedom2,cumulative)

F.DIST.RT

Returns the (right-tailed) F probability distribution (degree of diversity) for two data sets.

F.DIST.RT(x,deg_freedom1,deg_freedom2)

F.INV

Returns the inverse of the F probability distribution.

F.INV(probability,deg_freedom1,deg_freedom2)

F.INV.RT

Returns the inverse of the (right-tailed) F probability distribution.

F.INV.RT(probability,deg_freedom1,deg_freedom2)

F.TEST

Returns the result of an F-test, the two-tailed probability that the variances in array1 and array2 are not significantly different.

F.TEST(array1,array2)

FISHER

Returns the Fisher transformation at x.

FISHER(x)

FISHERINV

Returns the inverse of the Fisher transformation.

FISHERINV(y)

FORECAST

Performs a linear regression to fit a straight line using least squares criterion to the specified arrays of values. Returns a new value for the specified X data point.

FORECAST(x,known_y's,known_x's)

X is the data point for which you want to predict a value. Known_y's is the set of y-values for the relationship y = mx + b. Known_x's is a set of x-values for the relationship.

FREQUENCY

Calculates how often values occur within a range of values, and then returns a vertical array of numbers.

FREQUENCY(data_array, bins_array)

Data_array is an array of or reference to a set of values for which you want to count frequencies. If data_array contains no values, FREQUENCY returns an array of zeros. Bins_array is an array of or reference to intervals into which you want to group the values in data_array. If bins_array contains no values, FREQUENCY returns the number of elements in data_array.

GAMMA

Return the gamma function value.

GAMMA(number)

GAMMA.DIST

Returns the gamma distribution.

GAMMA.DIST(x,alpha,beta,cumulative)

GAMMA.INV

Returns the inverse of the gamma cumulative distribution.

GAMMA.INV(probability,alpha,beta)

GAMMALN

Returns the natural logarithm of the gamma function.

GAMMALN(x)

GAMMALN.PRECISE

Returns the natural logarithm of the gamma function (new version).

GAMMALN.PRECISE(x)

GAUSS

Calculates the probability that a member of a standard normal population will fall between the mean and z standard deviations from the mean.

GAUSS(z)

GEOMEAN

Returns the geometric mean of a list of numbers.

GEOMEAN( number1, [number2], ... )

*Standard Options

GROWTH

Calculates an exponential curve that best fits your data based on a number of known X and Y values. Returns the y-values for a series of new x-values.

GROWTH(known_y's, [known_x's], [new_x's], [const])

Known_y's is the set of y-values for the relationship y = b*m^x. Known_x's is an optional set of x-values for the relationship; if omitted, it is assumed to be the array {1,2,3,...} that is the same size as known_y's. New_x's is an optional set of new x-values for which you want GROWTH to return corresponding y-values. If omitted, it is assumed to be the same as known_x's. Const is an optional logical value. It is TRUE or omitted, to calculate the b constant; otherwise b is set to 1. GROWTH is the exponential counterpart to the linear regression function TREND .

HARMEAN

Returns the harmonic mean of a data set.

HARMEAN(number1,number2,...)

HYPGEOM.DIST

Returns the hypergeometric distribution.

HYPGEOM.DIST(sample_s,number_sample,population_s,number_pop,cumulative)

INTERCEPT

Calculates the best fit regression line using a series of x- and y- values and returns the value at which this line intercepts the y-axis.

INTERCEPT(known_y's, known_x's)

Known_y's is the dependent set of observations or data. Known_x's is the independent set of observations or data.

KURT

Returns the kurtosis of a data set.

KURT(number1,number2,...)

LARGE

Returns the k'th largest value from an array or a range of cells containing numerical values.

LARGE( array, k )

The array argument is the array or range of data for which the k-th largest value will be determined. The k argument is the top position of value in a sorted array.

LINEST

Returns statistical information on the line of best fit, through a supplied set of x- and y- values using 'least-square' method.

LINEST(known_y's,known_x's,const,stats)

Known_y's is the set of y-values you already know in the relationship y = mx + b. Known_x's is an optional set of x-values that you may already know in the relationship y = mx + b. Const is a logical value specifying whether to force the constant b to equal 0. Stats is a logical value specifying whether to return additional regression statistics.

LOGEST

Calculates regression to fit an exponential curve using a least squares method.

LOGEST( known_y's, [known_x's], [const], [stats]

Known_y's is the set of dependent values. Known_x's is an optional set of independent values. The argument ""constant"" is TRUE to calculate the constant b in the regression equation y = b*m^x; otherwise, b equals 1. The argument ""stats"" set to TRUE if you want additional statistics, including various sums of squares, r-squared, f-statistic, and standard errors of the regression coefficients. LOGEST is the exponential counterpart to the linear regression function LINEST.

LOGNORM.DIST

Returns the log-normal probability density function or the cumulative log- normal distribution.

LOGNORM.DIST(x,mean,standard_dev,cumulative)

X is the value at which to evaluate the function. Mean is the mean of ln(x). Standard_dev is the standard deviation of ln(x). Cumulative is a logical value that determines the form of the function. If cumulative is TRUE, LOGNORM.DIST returns the cumulative distribution function; otherwise, it returns the probability density function.

LOGNORM.INV

Returns the inverse of the log-normal distribution

LOGNORM.INV(probability,mean,standard_dev)

X is a probability associated with the lognormal distribution. Mean is the mean of ln(x). Standard_dev is the standard deviation of ln(x).

MAX

Returns the largest value in a set of values.

MAX( number1, [number2], ... )

*Standard Options

MAXA

Returns the largest value in a set of values.

MAXA( number1, [number2], ... )

The difference compared to the MAX function is that within arrays or reference arguments logical values are counted as 1 or 0 and text is counted as zero.

MAXIFS

Returns the maximum value among cells specified by a given set of conditions or criteria.

MAXIFS(max_range, criteria_range, criteria, ...)

MEDIAN

Returns the statistical median (the middle value) of a list of numbers.

MEDIAN(number1, [number2], ...)

*Standard Options

MIN

Returns the smallest value in a set of values.

MIN(number1, [number2], ...)

*Standard Options

MINA

Returns the smallest value in a set of values.

MIN(number1, [number2], ...)

The difference compared to the MIN function is that within arrays or reference arguments logical values are counted as 1 or 0 and text is counted as zero.

MINIFS

Returns the minimum value among cells specified by a given set of conditions or criteria.

MINIFS(min_range, criteria_range, criteria, ...)

MODE.MULT

Returns a vertical array of the statistical modes (the most frequently occurring values) within a set of values.

MODE.MULT((number1,[number2],...])

The arguments number1, [number2], etc, are numerical values or references to cells containing numbers. You can enter up to 255 number arguments. The arguments can be logical values or text representations of numbers. You can also use a reference to cell array instead of separate numbers. Text, logical values, or empty cells witin array are ignored. If the data set contains no duplicate data points, the #N/A error value is returned.

MODE.SNGL

Returns the statistical mode (the most frequently occurring value) in a set of values.

MODE.SNGL(number1,[number2],...])

The arguments number1, [number2], etc, are numerical values or references to cells containing numbers. You can enter up to 255 number arguments. The arguments can be logical values or text representations of numbers. You can also use a reference to cell array instead of separate numbers. Text, logical values, or empty cells witin array are ignored. If the data set contains no duplicate data points, the #N/A error value is returned.

NEGBINOM.DIST

Returns the negative binomial distribution.

NEGBINOM.DIST(number_f,number_s,probability_s,cumulative)

NORM.DIST

Returns the normal distribution for the specified mean and standard deviation.

NORM.DIST(x,mean,standard_dev,cumulative)

X is the value for which you want the distribution. Mean is the arithmetic mean of the distribution. Standard_dev is the standard deviation of the distribution. Cumulative is a logical value that determines the form of the function. If cumulative is TRUE, NORM.DIST returns the cumulative distribution function; if FALSE, it returns the probability mass function.

NORM.INV

Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation.

NORM.INV(probability,mean,standard_dev)

Probability is a probability corresponding to the normal distribution. Mean is the arithmetic mean of the distribution. Standard_dev is the standard deviation of the distribution.

NORM.S.DIST

Returns the standard normal distribution (has a mean of zero and a standard deviation of one).

NORM.S.DIST(z,cumulative)

Z is the value for which you want the distribution. Cumulative is a logical value that determines the form of the function. If cumulative is TRUE, NORMS.DIST returns the cumulative distribution function; otherwise it returns the probability mass function.

NORM.S.INV

Returns the inverse of the standard normal cumulative distribution.

NORM.S.INV(probability)

Probability is a probability that corresponds to the normal distribution.

PEARSON

Returns the Pearson product moment correlation coefficient, a statistical measurement of the correlation (linear association) between two sets of values.

PEARSON(array1,array2)

The array1 is a set of independent values, the array2 is a set of dependent values.

PERCENTILE.EXC

Returns the k'th percentile of a supplied range of values for a given value of k, within the range 0 to 1 (exclusive).

PERCENTILE.EXC( array, k )

PERCENTILE.INC

Returns the k'th percentile of a supplied range of values for a given value of k, within the range 0 to 1 (inclusive).

PERCENTILE.INC( array, k )

PERCENTRANK.EXC

Calculates the relative position, between 0 and 1 (exclusive), of a specified value within a supplied array.

PERCENTRANK.EXC( array, x, [significance] )

PERCENTRANK.INC

Calculates the relative position, between 0 and 1 (inclusive), of a specified value within a supplied array.

PERCENTRANK.INC( array, x, [significance] )

PERMUT

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

PERMUT(number, number_chosen)

PERMUTATIONA

Returns the number of permutations for a given number of objects (with repetitions) that can be selected from the total objects.

PERMUTATIONA(number, number-chosen)

PHI

Returns the value of the density function for a standard normal distribution.

PHI(x)

POISSON.DIST

Returns the Poisson distribution.

POISSON.DIST(x,mean,cumulative)

PROB

Returns the probability that values in a range are between two limits.

PROB(x_range, prob_range, [lower_limit], [upper_limit])

QUARTILE.EXC

Returns the quartile of the data set, based on percentile values from 0..1, exclusive.

QUARTILE.EXC(array, quart)

QUARTILE.INC

Returns the quartile of a data set, based on percentile values from 0..1, inclusive.

QUARTILE.INC(array,quart)

RANK.AVG

Returns the rank of a number in a list of numbers: its size relative to other values in the list; if more than one value has the same rank, the average rank is returned.

RANK.AVG(number,ref,[order])

RANK.EQ

Returns the rank of a number in a list of numbers. Its size is relative to other values in the list; if more than one value has the same rank, the top rank of that set of values is returned.

RANK.EQ(number,ref,[order])

RSQ

Returns the square of the Pearson product moment correlation coefficient.

RSQ(known_y's,known_x's)

SKEW

Returns the skewness (the asymmetry around the mean) of a distribution.

SKEW(number1, [number2], ...)

Number1 is required, subsequent numbers are optional. You can supply up to 255 arguments for which you want to calculate skewness or use a single array or a reference to an array instead of arguments separated by commas.

SKEW.P

Returns the skewness of a distribution based on a population: a characterization of the degree of asymmetry of a distribution around its mean.

SKEW.P(number 1, [number 2],…)

SLOPE

Returns the slope of the linear regression line through data points in known_y's and known_x's.

SLOPE(known_y's, known_x's)

Known_y's is an array or cell range of numeric dependent data values. Known_x's is the set of independent data values.

SMALL

Returns the k'th smallest value from an array or a range of cells containing numerical values.

SMALL array, k )

The array argument is the array or range of data for which the k-th smallest value will be determined. The k argument is the top position of value in an array sorted from smallest to largest.

STANDARDIZE

Returns a normalized value from a distribution characterized by mean and standard_dev.

STANDARDIZE(x,mean,standard_dev)

STEYX

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

STEYX(known_y's, known_x's)

STDEVA

Calculates the standard deviation based on a sample.

STDEVA(value1, [value2], ...)

The arguments value1, [value2], etc, are numerical values or references to cells. You can enter up to 255 arguments. The arguments can be logical values or text representations of numbers. You can also use a reference to cell array instead of separate numbers. Arguments that contain TRUE evaluate as 1; arguments that contain text or FALSE evaluate as 0 (zero).

STDEVPA

Calculates standard deviation based on the entire population, including numbers, text, and logical values

STDEVPA(value1,value2,...)

STDEV.P

Calculates the standard deviation based on the entire population.

STDEV.P(number1,[number2],...])

*Standard Options

STDEV.S

Calculates the standard deviation based on a sample.

STDEV.S(number1,[number2],...])

*Standard Options

T.DIST

Returns the Student's t-distribution.

T.DIST(x,deg_freedom, cumulative)

T.DIST.2T

Returns the two-tailed Student's t-distribution.

T.DIST.2T(x,deg_freedom)

T.DIST.RT

Returns the right-tailed Student's t-distribution.

T.DIST.RT(x,deg_freedom)

T.INV

Returns the left-tailed inverse of the Student's t-distribution.

T.INV(probability,deg_freedom)

T.TEST

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

T.TEST(array1,array2,tails,type)

T.INV.2T

Returns the two-tailed inverse of the Student's t-distribution.

T.INV.2T(probability,deg_freedom)

TREND

Performs a linear regression to fit a straight line using least squares criterion to the specified arrays of values.

TREND(known_y's, [known_x's], [new_x's], [const])

Known_y's is the set of y-values for the relationship y = mx + b. Known_x's is an optional set of x-values for the relationship; if omitted, it is assumed to be the array {1,2,3,...} that is the same size as known_y's. New_x's is an optional set of new x-values for which you want TREND to return corresponding y-values. If omitted, it is assumed to be the same as known_x's. Const is an optional logical value. It is TRUE or omitted, to calculate the b constant; otherwise b is set to 0 (zero).

TRIMMEAN

Returns the mean of the interior of a data set.

TRIMMEAN(array, percent)

VARA

Estimates variance based on a sample, including numbers, text, and logical values.

VARA(value1, [value2], ...)

VARPA

Calculates variance based on the entire population, including numbers, text, and logical values.

VARPA(value1, [value2], ...)

VAR.P

Calculates variance for the entire population.

VAR.P(number1,[number2],...])

*Standard Options

VAR.S

Calculates variance for the sample.

VAR.S(number1,[number2],...])

*Standard Options

WEIBULL.DIST

Returns the Weibull distribution.

WEIBULL.DIST(x,alpha,beta,cumulative)

Z.TEST

Returns the one-tailed probability-value of a z-test.

Z.TEST(array,x,[sigma])