Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python・PandasでDataFrameの列の分散を計算する方法

データ分析において、分散はデータのばらつき具合を把握するための重要な統計量です。Pandasでは、var()メソッドを使うことで、DataFrameの列(カラム)の分散を簡単に計算できます。

この記事では、実際のコード例を通じて、var()メソッドの基本的な使い方から、複数のDataFrameへの応用までを解説します。

1. Pandasライブラリのインポート

まず、必要なPandasライブラリをインポートします。

import pandas as pd

2. DataFrameの作成

次に、「Car(車種)」と「Units(台数)」の2つの列を持つDataFrameを作成します。

dataFrame1 = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Audi', 'Tesla', 'Bentley', 'Jaguar'],
      "Units": [100, 150, 110, 80, 110, 90]
   }
)

3. var()メソッドで分散を計算する

「Units」列の値の分散を、var()関数を使って求めます。列名を指定してvar()を呼び出すだけで、その列の分散が計算されます。

print("Variance of Units column from DataFrame1 = ", dataFrame1['Units'].var())

同様の手順で、2つ目のDataFrameについても分散を計算することができます。

完全なコード例

以下に、2つの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("Variance of Units column from DataFrame1 = ", dataFrame1['Units'].var())

# DataFrame2を作成
dataFrame2 = pd.DataFrame(
   {
      "Product": ['TV', 'PenDrive', 'HeadPhone', 'EarPhone', 'HDD', 'SSD'],
      "Price": [8000, 500, 3000, 1500, 3000, 4000]
   }
)

print("\nDataFrame2 ...\n", dataFrame2)

# 「Price」列の値の分散を計算
print("Variance of Price column from DataFrame2 = ", dataFrame2['Price'].var())

実行結果

上記のコードを実行すると、以下のような出力が得られます。

DataFrame1 ...
        Car   Units
0      BMW     100
1    Lexus     150
2     Audi     110
3    Tesla      80
4  Bentley     110
5   Jaguar      90
Variance of Units column from DataFrame1 = 586.666666667

DataFrame2 ...
    Price   Product
0    8000         TV
1     500   PenDrive
2    3000  HeadPhone
3    1500    EarPhone
4    3000        HDD
5    4000        SSD
Variance of Price column from DataFrame2 = 6766666.66667

まとめ

Pandasのvar()メソッドを使えば、DataFrameの任意の数値列の分散を1行で簡単に計算できます。デフォルトでは標本分散(不偏分散:自由度 n-1)が計算される点にも注意してください。母分散を求めたい場合は、ddof=0オプションを指定することで対応可能です。データのばらつきを分析する際に、ぜひ活用してみてください。

  1. Python Pandas入門:query()メソッドでDataFrameの列をクエリ(条件抽出)する方法

    PandasのDataFrameで列をクエリ(条件による絞り込み)を行うには、query()メソッドを使用します。query()は、文字列形式の条件式を渡すだけで直感的にレコードをフィルタリングできる便利な機能です。 サンプルDataFrameの作成 まず、商品名・期首在庫・期末在庫を持つDataFrameを作成してみましょう。 import pandas as pd dataFrame = pd.DataFrame({ Product: [SmartTV, PenDrive, Speaker, Earphone], Opening_Stock: [300, 700, 1

  2. 【Python・Pandas】データフレームの特定の列の合計値を取得する方法

    データ分析をしていると、データフレーム(DataFrame)の中から特定の列だけの合計値を求めたい場面によく出会います。そんなときに便利なのが、Pandasのsum関数です。 合計を計算したい列をsum関数に渡すだけで、その列の合計値を簡単に取得できます。さらに、axis引数を指定すれば、列方向・行方向のどちらで集計するかも自由に制御可能です。 それでは、具体的なコード例を見ていきましょう。 サンプルコード import pandas as pd my_data = { Name: pd.Series([Tom, Jane, Vin, Eve, Will]), Age: p