My Notes

統計学とかR(R言語)とかPython3の覚え書きとか走り書きとか。 座右の銘にしたい: All work and no play makes Jack a dull boy.

Python3 標準ライブラリ巡り statistics

Python3コード

#!/usr/bin/env python3


"""(docstring)
"""


import statistics


def my_statistics():
    """(docstring)

    doctest
    >>> my_data = [1, 2, 2, 3]
    >>> my_mean = statistics.mean(my_data)
    >>> print('{0} {1}'.format('算術平均', my_mean))
    算術平均 2
    >>> my_median = statistics.mean(my_data)
    >>> print('{0} {1}'.format('中央値', my_median))
    中央値 2
    >>> my_mode = statistics.mode(my_data)
    >>> print('{0} {1}'.format('最頻値', my_mode))
    最頻値 2
    >>> my_pstdev = statistics.pstdev(my_data)
    >>> print('{0} {1}'.format('母標準偏差', my_pstdev))
    母標準偏差 0.7071067811865476
    >>> my_pvariance = statistics.pvariance(my_data)
    >>> print('{0} {1}'.format('母分散', my_pvariance))
    母分散 0.5
    >>> my_stdev = statistics.stdev(my_data)
    >>> print('{0} {1}'.format('標本標準偏差', my_stdev))
    標本標準偏差 0.816496580927726
    >>> my_variance = statistics.stdev(my_data)
    >>> print('{0} {1}'.format('標本標準分散', my_variance))
    標本標準分散 0.816496580927726
    """

    my_data = [1, 2, 2, 3]

    # 算術平均
    my_mean = statistics.mean(my_data)
    print('{0} {1}'.format('算術平均', my_mean))

    # 中央値
    my_median = statistics.mean(my_data)
    print('{0} {1}'.format('中央値', my_median))

    # 最頻値
    my_mode = statistics.mode(my_data)
    print('{0} {1}'.format('最頻値', my_mode))

    # 母標準偏差
    my_pstdev = statistics.pstdev(my_data)
    print('{0} {1}'.format('母標準偏差', my_pstdev))

    # 母分散
    my_pvariance = statistics.pvariance(my_data)
    print('{0} {1}'.format('母分散', my_pvariance))

    # 標本標準偏差
    my_stdev = statistics.stdev(my_data)
    print('{0} {1}'.format('標本標準偏差', my_stdev))

    # 標本標準分散
    my_variance = statistics.variance(my_data)
    print('{0} {1}'.format('標本標準分散', my_variance))

if __name__ == '__main__':
    import doctest
    doctest.testmod()

    my_statistics()
    # (単純なデータならいいんだが。やはり、NumPy, pandas, Scipy等を使おう。)

出力

算術平均 2
中央値 2
最頻値 2
母標準偏差 0.7071067811865476
母分散 0.5
標本標準偏差 0.816496580927726
標本標準分散 0.6666666666666666