PythonのPandasでデータフレームの特定の列の標準偏差を求める方法
標準偏差とは
標準偏差とは、データセット内の値がどの程度散らばっているかを示す統計量です。また、各値がデータセットの算術平均からどれだけ離れているかを測る指標でもあります。標準偏差が小さいほど値は平均の近くに集中し、大きいほど値が広く分散していることを意味します。
特定の列の標準偏差を求める手順
データ分析では、数値型の特定の列だけの標準偏差を求めたいケースがよくあります。そんなときに便利なのが std() 関数です。標準偏差を計算したい列をデータフレームから列名で指定し、ドット演算子(.)を使って std() を呼び出すだけで、簡単に求められます。
なお、列名だけでなく、列のインデックス番号(位置)を指定して標準偏差を計算することも可能です。
サンプルコード
import pandas as pd
my_data = {'Name':pd.Series(['Tom','Jane','Vin','Eve','Will']),'Age':pd.Series([45, 67, 89, 12, 23]),'value':pd.Series([8.79,23.24,31.98,78.56,90.20])}
print("The dataframe is :")
my_df = pd.DataFrame(my_data)
print(my_df)
print("The standard deviation of column 'Age' is :")
print(my_df['Age'].std())
print("The standard deviation of column 'value' is :")
print(my_df['value'].std())
実行結果
The dataframe is :
Name Age value
0 Tom 45 8.79
1 Jane 67 23.24
2 Vin 89 31.98
3 Eve 12 78.56
4 Will 23 90.20
The standard deviation of column 'Age' is :
31.499206339207976
The standard deviation of column 'value' is :
35.747101700697364
コードの解説
まず必要なライブラリをインポートし、扱いやすいように別名(エイリアス)を付けています。
キーと値のペアで構成される辞書を作成します。ここでの値は、実際にはPandasの「Series(シリーズ)」というデータ構造です。
作成した辞書は、pandasライブラリの
DataFrame()関数に引数として渡され、データフレームが生成されます。生成されたデータフレームをコンソールに出力し、内容を確認します。
今回の目的は、数値を含む特定の列(Age列とvalue列)の標準偏差を計算することです。
ドット演算子を使って列名を指定し、データフレームに対して
std()関数を呼び出します。計算された数値列の標準偏差がコンソールに出力されます。
補足:母標準偏差と標本標準偏差について
Pandasの std() 関数は、デフォルトでは自由度 n-1 を用いた不偏標準偏差(標本標準偏差)を計算します。母集団全体の標準偏差(母標準偏差)が必要な場合は、df['Age'].std(ddof=0) のように ddof=0 を指定してください。
-
【Python Pandas】unique()メソッドで単一の列から一意の値を抽出する方法
Pandas DataFrameの特定の列から重複を除いた一意の値を取得したい場合は、unique()メソッドを使います。例えば、従業員データを管理するDataFrameでは、同名の従業員が存在する可能性があるため、名前が重複することがあります。そのような場合に、unique()を使えば重複のない従業員名の一覧を簡単に抽出できます。ライブラリのインポートまず、必要なライブラリをインポートします。ここでは、pdというエイリアスを設定しています。import pandas as pdDataFrameの作成次に、サンプル用のDataFrameを作成します。ここでは「EmpName」(従業員名)と「
-
【Python】Pandas DataFrameからnull(欠損値)行を削除する方法|dropna()の使い方
PandasのDataFrameからnull(NaN)行を削除するには、dropna()メソッドを使用します。この記事では、NaNを含むCSVファイルを読み込み、dropna()で欠損値を含む行を取り除くまでの手順を、サンプルコードと実行結果とともにわかりやすく解説します。前提:NaNを含むCSVファイル今回の例では、一部にNaN(null値)が含まれる以下のようなCSVファイル(CarRecords.csv)を使用します。手順1:read_csv()でCSVファイルを読み込むまずpandasをインポートし、read_csv()を使ってCSVファイルを読み込みます。ここではデスクトップ上に保存