# StatisticalFunction

## 概要 - Abstract

このライブラリ math.StatisticalFunction は、平均や標準偏差などの統計関数を提供します。

なお、このモジュールでは varfloat 型など、多倍長精度のものも提供されますが、
ただアルゴリズムが実装されているだけであり、演算誤差の蓄積や、桁落ち等に対する特別な措置は行われません。

つまり、最終桁まで正しい値が得られる訳ではなく、演算結果の末尾に、常に誤差蓄積による正しくない部分が含まれます。
この誤差部分の長さは、実装のアルゴリズムの違いや、引数による桁落ちやその他影響の違いなど、場合によって異なります。

従って、 varfloat 型などの多倍長精度の関数を使用する場合は、
必要な桁数よりも、十分に大きな桁数で関数を呼び出し、得られた結果から不要な（誤差を含む）部分を切り捨てて下さい。

## 目次 - Index

float sum( ... float args[ ] )
  和を計算します。
varfloat sum( ... varfloat args[ ] )
  和を計算します。
float mean( ... float args[ ] )
  平均値を計算します。
varfloat mean( ... varfloat args[ ] )
  平均値を計算します。
float van( ... float args[ ] )
  分散（分母は n ）を計算します。
varfloat van( ... varfloat args[ ] )
  分散（分母は n ）を計算します。
float van1( ... float args[ ] )
  不偏分散（分母は n-1 ）を計算します。
varfloat van1( ... varfloat args[ ] )
  不偏分散（分母は n-1 ）を計算します。
float sdn( ... float args[ ] )
  標準偏差（分母は n ）を計算します。
varfloat sdn( ... varfloat args[ ] )
  標準偏差（分母は n ）を計算します。
float sdn1( ... float args[ ] )
  不偏標準偏差（分母は n-1 ）を計算します。
varfloat sdn1( ... varfloat args[ ] )
  不偏標準偏差（分母は n-1 ）を計算します。

## 構造体 - Structs

- なし - None -

## 変数 - Variables

- なし - None -

## 関数 - Functions

文法的定義 - Signature | float sum( ... float args[ ] )
関数名 - Name | sum
役割 - Role | 和を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat sum( ... varfloat args[ ] )
関数名 - Name | sum
役割 - Role | 和を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。

文法的定義 - Signature | float mean( ... float args[ ] )
関数名 - Name | mean
役割 - Role | 平均値を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat mean( ... varfloat args[ ] )
関数名 - Name | mean
役割 - Role | 平均値を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。

文法的定義 - Signature | float van( ... float args[ ] )
関数名 - Name | van
役割 - Role | 分散（分母は n ）を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat van( ... varfloat args[ ] )
関数名 - Name | van
役割 - Role | 分散（分母は n ）を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。

文法的定義 - Signature | float van1( ... float args[ ] )
関数名 - Name | van1
役割 - Role | 不偏分散（分母は n-1 ）を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat van1( ... varfloat args[ ] )
関数名 - Name | van1
役割 - Role | 不偏分散（分母は n-1 ）を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。

文法的定義 - Signature | float sdn( ... float args[ ] )
関数名 - Name | sdn
役割 - Role | 標準偏差（分母は n ）を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat sdn( ... varfloat args[ ] )
関数名 - Name | sdn
役割 - Role | 標準偏差（分母は n ）を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。

文法的定義 - Signature | float sdn1( ... float args[ ] )
関数名 - Name | sdn1
役割 - Role | 不偏標準偏差（分母は n-1 ）を計算します。
引数 - Arguments | (...float[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (float型) 計算結果です。

文法的定義 - Signature | varfloat sdn1( ... varfloat args[ ] )
関数名 - Name | sdn1
役割 - Role | 不偏標準偏差（分母は n-1 ）を計算します。
引数 - Arguments | (...varfloat[]型) args : 計算のもとになる値です。可変長引数なので、配列による一括指定のほかに、複数の引数として指定する事もできます。
戻り値 - Return | (varfloat型) 計算結果です。