【Python】Pandas DataFrameの列の標準偏差を計算する方法
Pandasで標準偏差を計算するには
PythonのPandasライブラリでは、std()メソッドを使うことで、DataFrameの各列の標準偏差を簡単に計算できます。統計分析やデータのばらつきを把握したい場面で非常に便利な機能です。
まずは、必要なPandasライブラリをインポートしましょう。
import pandas as pd
サンプルDataFrameの作成
次に、2つの列を持つDataFrameを作成します。ここでは「Car(車種)」と「Units(販売台数)」という列を含むデータを用意しました。
dataFrame1 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Tesla', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)
std()メソッドで標準偏差を求める
「Units」列の値に対してstd()メソッドを呼び出すだけで、その列の標準偏差を取得できます。
print("Standard Deviation of Units column from DataFrame1 = ", dataFrame1['Units'].std())
同様の手順で、2つ目のDataFrame(商品名と価格のデータ)からも「Price」列の標準偏差を計算してみましょう。
補足:標本標準偏差と母標準偏差について
Pandasのstd()メソッドは、デフォルトでddof=1(不偏分散、いわゆる標本標準偏差)を使用します。母標準偏差を求めたい場合は、dataFrame['列名'].std(ddof=0)のように引数を指定してください。
完全なコード例
以下が、ここまでの内容をまとめた完全なサンプルコードです。
#
# Python - Pandas DataFrameの列の値の標準偏差を計算する
#
import pandas as pd
# DataFrame1を作成
dataFrame1 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Tesla', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)
print("DataFrame1 ...\n", dataFrame1)
# 「Units」列の値の標準偏差を求める
print("Standard Deviation of Units column from DataFrame1 = ", dataFrame1['Units'].std())
# DataFrame2を作成
dataFrame2 = pd.DataFrame(
{
"Product": ['TV', 'PenDrive', 'HeadPhone', 'EarPhone', 'HDD', 'SSD'],
"Price": [8000, 500, 3000, 1500, 3000, 4000]
}
)
print("\nDataFrame2 ...\n", dataFrame2)
# 「Price」列の値の標準偏差を求める
print("Standard Deviation of Price column from DataFrame2 = ", dataFrame2['Price'].std())
実行結果
上記のコードを実行すると、次のような出力が得られます。
DataFrame1 ...
Car Units
0 BMW 100
1 Lexus 150
2 Audi 110
3 Tesla 80
4 Bentley 110
5 Jaguar 90
Standard Deviation of Units column from DataFrame1 = 24.2212028328
DataFrame2 ...
Price Product
0 8000 TV
1 500 PenDrive
2 3000 HeadPhone
3 1500 EarPhone
4 3000 HDD
5 4000 SSD
Standard Deviation of Price column from DataFrame2 = 2601.28173535
まとめ
Pandasのstd()メソッドを使えば、たった1行のコードでDataFrameの特定の列の標準偏差を計算できます。数値データのばらつきや散らばり具合を把握したいときに、ぜひ活用してみてください。
-
PythonのPandasでデータフレームの特定の列の標準偏差を求める方法
標準偏差とは標準偏差とは、データセット内の値がどの程度散らばっているかを示す統計量です。また、各値がデータセットの算術平均からどれだけ離れているかを測る指標でもあります。標準偏差が小さいほど値は平均の近くに集中し、大きいほど値が広く分散していることを意味します。特定の列の標準偏差を求める手順データ分析では、数値型の特定の列だけの標準偏差を求めたいケースがよくあります。そんなときに便利なのが std() 関数です。標準偏差を計算したい列をデータフレームから列名で指定し、ドット演算子(.)を使って std() を呼び出すだけで、簡単に求められます。なお、列名だけでなく、列のインデックス番号(位置)
-
【Python・Pandas】データフレームの特定の列の合計値を取得する方法
データ分析をしていると、データフレーム(DataFrame)の中から特定の列だけの合計値を求めたい場面によく出会います。そんなときに便利なのが、Pandasのsum関数です。 合計を計算したい列をsum関数に渡すだけで、その列の合計値を簡単に取得できます。さらに、axis引数を指定すれば、列方向・行方向のどちらで集計するかも自由に制御可能です。 それでは、具体的なコード例を見ていきましょう。 サンプルコード import pandas as pd my_data = { Name: pd.Series([Tom, Jane, Vin, Eve, Will]), Age: p