Pandas で分位数を求める

Preet Sanghavi 2023年6月21日
  1. Pandas で分位数を求める
  2. quantile() 関数を使用する
Pandas で分位数を求める

このチュートリアルでは、Pandas でデータ フレームの変位値を取得する方法を学習します。 dataframe.quantile() 関数を使用してこのタスクを実行します。

Pandas の numpy.percentile および dataframe.quantile() 関数は、要求された軸上の指定された変位値で値を返します。

開始するには、Pandas ライブラリをインポートする必要があります。

import pandas as pd

Pandas で分位数を求める

分位演算を実行する数値を含む 4つの列を持つサンプル データフレームを作成してみましょう。

以下のコードを使用して、サンプル データフレームを作成します。

df = pd.DataFrame(
    {
        "A": [1, 5, 3, 4, 2],
        "B": [3, 2, 4, 3, 4],
        "C": [2, 2, 7, 3, 4],
        "D": [4, 3, 6, 12, 7],
    }
)
print(df)

サンプルのデータフレームを見てみましょう。

   A  B  C   D
0  1  3  2   4
1  5  2  2   3
2  3  4  7   6
3  4  3  3  12
4  2  4  4   7

ここで、データフレームの分位数を見つけます。 まず、dataframe.quantile() 関数を使用して、データフレーム内のすべての列の .2 の分位点を見つけます。

quantile() 関数を使用する

以下のコードを使用してこれを行います。このコードでは、関数の最初のパラメーターを .2 として渡し、軸パラメーターを 0 として渡し、分位数が列で計算されるようにします。

df1 = df.quantile(0.2, axis=0)
print(df1)

次に、取得したデータフレームの変位値表現を見てみましょう。

A    1.8
B    2.8
C    2.0
D    3.8

quantile() 関数を使用して、インデックス軸に沿って (.1,.25,.5,.75) 分位数を見つけることもできます。

これを行うには、分位を取得する分位値のリストを渡します。

df1 = df.quantile([0.1, 0.25, 0.5, 0.75], axis=0)
print(df1)

次に、新しく取得した分位数表現を見てみましょう。

        A    B    C    D
0.10  1.4  2.4  2.0  3.4
0.25  2.0  3.0  2.0  4.0
0.50  3.0  3.0  3.0  6.0
0.75  4.0  4.0  4.0  7.0

上記の分位値のインデックス軸に沿って分位値を取得することに成功しました。

したがって、次のアプローチを使用して、Pandas の列とインデックス軸の分位数を見つけることができます。

著者: Preet Sanghavi
Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub