今回は、分散を求める関数であるnp.var()関数について解説します。簡単な分散の復習から入りましょう。分散というのは一般的にデータのばらつき度合いを示すために使われる指標です。平均との偏差の2乗を平均したものが分散になります。式で表すと以下のようになります。平均値を表しています。平方根をとったものが標準偏差です。標準偏差が使われるのは、もととなるデータにおける単位を揃えるためです。分散のままだと単位はもとのデータの単位をそれぞれ2乗したものになってしまいます。式を見てもらえばわかるように、平均からデータがどれくらい離れているのか、その平均をとることによって分散という指標はできています。散らばり具合の基準点は平均となります。np.var関数では実際に関数の使い方を見ていきましょう。APIドキュメントまずはAPIドキュメントをみます。この関数のAPIドキュメントは以下の通りです。分散を求めたい配列を指定します。ndarrayでなかった場合変換が試みられます。(省略可能)初期値Noneどの軸(axis)に沿って分散を計算するかを指定します。Noneの場合、すべてのデータを対象に分散を求めます。(省略可能)初期値None分散を計算する際に用いるデータ型を指定します。デフォルトでは入力された配列が整数型の場合float32が指定され、それ以外の場合、aで指定された配列のデータ型に従います。(省略可能)初期値None結果を格納する配列をここで指定します。(省略可能)初期値0分散を計算する際、平均との偏差の2乗の和をN-ddofで割ります。初期値ではddof=0なのでデータ数であるNで割ることになります。(省略可能)初期値False結果を出力するとき、要素数が1となった次元を残したままにするかどうかを指定します。Trueの場合残します。することでブロードキャスティングが正しく行われるようにできます。returns:outに何も指定されていない場合、求めた分散を格納した配列が返されます。指定されている場合は出力された配列への参照が返されます。指定できる引数が数多くあります。最初に分散を求めたい配列を指定します。axisで分散を計算する方向を指定します。axisについては以下の記事で詳しく解説しているので気になる方は見てみてください。dtypeで計算する際に用いるデータ型を指定し、outで結果を格納する配列を指定します。ddofで分散を求める際にddof=0であれば、与えられたデータを集合全体と見てその分散を求める標本分散をddof=1ならば一部のデータから全体のデータの分散を計算する不偏分散を求めます。/features/numpy-axis.html標本分散と不偏分散については以下のサイトで詳しく解説されているので参考にしてみてください。分散を求めるでは、実際に使っていきましょう。引数を指定せずにデータ全体の分散を求めてみます。引数を指定しない場合は6つのデータから分散を求める。43.55555555555555次にaxisを指定してみます。axisを指定しないと全体の分散を求める。33.388888888888886次にdtypeを指定します。標準正規分布からランダムな数列を生成。dtypeを指定する。1.0435329101767985ddofを指定する次にddofを変更してみます。先程の標準正規分布から生成した配列のサンプルデータ数を少なくして分散がddof=0,ddof=1のどちらがより1に近づくか見てみましょう。10個のサンプルデータから計算してみる。デフォルトの値であるddof=0から。次は不偏分散を求める。0.54955274556429079サンプル数を少なくするほど母集団の分散を計算できていることがわかります。配列の次元数を保存する最後はkeepdimsです。keepdimをTrueにすることでブロードキャストを適用します。計算した分散の値でもとのデータを割りたいときにはkeepdims=Trueにすると安全です。keepdimsをTrueにするとうまく計算できる。ManualDeepAgeではAIに関する厳選した内容を記事にしてお届けします。