pythonで標準偏差を求める方法3選|statistics, numpy, pandas

pythonで標準偏差を求める方法3選

pythonで標準偏差を計算する方法を紹介します。

目次

pythonで標準偏差を求める方法3選

pythonで標準偏差を求める方法3選

pythonで標準偏差を求める方法は次の3つがあります。

それぞれの方法についてコードを示しながら紹介します。

本記事のコードは全てグーグルコラボラトリーで記述・動作確認をしています。

python標準ライブラリで標準偏差を求める: statistics

python標準ライブラリで標準偏差を求める: statistics

statisticsライブラリはpythonの標準ライブラリで、インポートすると統計量計算を簡単にできます。

statistics.pstdev()で母標準偏差、statistics.stdev()でサンプル標準偏差を求めることが可能です。

import statistics
list_num =[89, 38, 17, 190, 66]
print('母標準偏差:',statistics.pstdev(list_num))# 母標準偏差
print('サンプル標準偏差:',statistics.stdev(list_num))# サンプル標準偏差

出力:

母標準偏差: 60.18305409332431
サンプル標準偏差: 67.28670002311007

配列の標準偏差を計算する: numpy

配列の標準偏差を計算する: numpy

numpyは配列を扱うことに長けた外部ライブラリです。

外部ライブラリなので、開発環境にnumpyをインストールする必要があります。

import numpy as np

numpy.std()

numpy.std()は配列の標準偏差を計算できる関数です。カッコ内に配列を入力することで使用できます。

na = np.array([[9, 4, 8],
               [1, 1, 0],
               [7, 7, 7],
               [9, 4, 2]])
print(np.std(na))

出力:

3.1743328257901515

引数axis=0で列ごとの標準偏差、axis=1で行ごとの標準偏差を計算します。

print('列ごとの標準偏差:',np.std(na, axis=0))
print('行ごとの標準偏差:',np.std(na, axis=1))

出力:

列ごとの標準偏差: [3.27871926 2.12132034 3.34477204]
行ごとの標準偏差: [2.1602469 0.47140452 0. 2.94392029]

numpy.nanstd()

欠損値を含む配列をnumpy.std()で標準偏差を計算しようとすると、nanが返されます。

numpy.nanstd()を計算すると、欠損値を無視して標準偏差を求めます。

na_nan = np.array([[1, np.nan, 1],
                   [2, 0, 5],
                   [8, np.nan, 8]])
print('std()の結果:',np.std(na_nan))
print('nanstd()の結果:',np.nanstd(na_nan))

出力:

std()の結果: nan
nanstd()の結果: 3.1558174334820746

データフレームの標準偏差を求める: pandas

データフレームの標準偏差を求める: pandas

pandasを導入することでデータ解析を容易にできます。 外部ライブラリなので、開発環境へのインストールが必要です。

pandasを使うことでエクセルなどの自分のデータを読み込んでデータ分析することが可能です。

pandas.DataFrame.std()でデータフレームの標準偏差を計算します。

import pandas as pd
df = pd.DataFrame({'科目': ['国語', '数学', '英語'],
                    'A': [51, 21, 14],
                    'B': [70, 0, 74],
                    'C': [35, 55, 23],
                    'D': [90, 50,67]})
df.std()

出力:

A 19.655364
B 41.617304
C 16.165808
D 20.074860
dtype: float64

まとめ

pythonで標準偏差を求める方法を紹介しました。

簡単に標準偏差を求めたい場合はpython標準ライブラリのstatistics、行列や配列の標準偏差を計算するのであればnumpyライブラリ、エクセルデータなどの標準偏差を求めたい時はpandasライブラリと状況で使い分けましょう。

この記事を読んでpythonに興味を持った人は次の記事もご覧ください。pythonを独学する勉強方法について紹介しています。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次