summarize() メソッド
1 つ以上の列の同じ値に基づいて、データフレームの行をグループ化します。各グループの行数をカウントし、指定した数値列の小計をグループごとに求めます。
構文
データフレーム名.summarize(on = ["キー列", "...n"], calculate = ["数値列", "...n"]|None, statistics = True|False)
パラメーター
名前 | 説明 |
---|---|
on = ["キー列", "...n"] |
要約するキー列。 複数の列で要約する場合は、ネストされたグループを作成します。入れ子でのフィールド間の順序は、列を指定した順になります。 キー列は要約されたデータフレームの左端に配置されます。 メモ summarize() メソッドは、データをグループに要約する前に、自動的にキー列でデータフレームを並べ替えます。出力データフレームには、キー 列内の同一値セットごと、または値の等しい組み合わせごとに 1 つの一意のグループが含まれます。 |
calculate = ["数値列", "...n"] | None 省略可能 |
パラメーターを省略する場合、列は小計されません。 |
statistics = True | False 省略可能 |
True を指定する場合、各小計列で次の統計値が計算されます。グループごとに内訳が表示されます。
statistics を省略すると、デフォルトの False が使用されます。 |
戻り値
HCL データフレーム。
例
顧客ごとの総取引額
Customer_Number 列に基づいて売掛金データフレームを要約し、Trans_Amount 列の小計を求めたいとします。出力は、顧客ごとでグループ化され、各顧客の総取引額が含まれます。
customer_total = accounts_receivable.summarize(on = ["Customer_Number"], calculate = ["Trans_Amount"], statistics = False)
顧客ごとの取引日別の総取引額
Customer_Number と Trans_Date 列に基づいて売掛金データフレームを要約します。Trans_Amount 列の小計を求めます。
出力は、顧客ごとと、顧客内の取引日ごとにグループ化され、各顧客の取引日別に総取引額が含まれます。
customer_total_by_date = accounts_receivable.summarize(on = ["Customer_Number", "Trans_Date"], calculate = ["Trans_Amount"], statistics = False)
顧客ごとの取引日別の総取引額と統計値
この例は、上記の例と同じですが、statistics パラメーターに True を指定しています。
顧客ごとに、その顧客が取引をした日付別の取引額の小計に加え、日付別の取引額のさまざまな統計値も計算することができます。次のように指定します。
customer_stats_by_date = accounts_receivable.summarize(on = ["Customer_Number", "Trans_Date"], calculate = ["Trans_Amount"], statistics = True)
備考
機能の仕組み
summarize() メソッドは、列の値が同じであるか、複数の列で同じ値の組み合わせがある行をグループ化します。出力データフレームにはグループごとに、ソース データフレームのうち、そのグループに属する行数が記録された行が含まれます。また、出力では、各グループに属するデータフレーム行の割合も計算されます。
小計と統計:出力結果の列名と計算
calculate および statistics パラメーターを使用して、指定する小計列で統計演算を実行することもできます。統計計算は、出力テーブルでグループ別に内訳が示されます。
calculate パラメーター
出力データフレームの列名 | 小計列で実行された計算 |
---|---|
小計された列名 + _sum | 各グループの小計された値 |
小計された列名 + _sum% |
列合計の割合として表現される各グループの小計 |
statistics パラメーター
出力データフレームの列タイトル | 小計列で実行された計算 |
---|---|
小計された列名 + _min |
各グループの最小値 |
小計された列名 + _max |
各グループの最大値 |
小計された列名 + _mean |
各グループの平均値 |
小計された列名 + _median |
各グループの中央値
|
小計された列名 + _std |
各グループの標準偏差 |
小計された列名 + _mode |
各グループの最も頻繁に発生する値 関連付けの場合は、最も低い値が表示されます。値が 1 回しか発生しない場合、列の最小値が表示されます。 |
小計された列名 + _q25 |
各グループの最初の四分位数値(下四分位数値) |
小計された列名 + _q75 |
各グループの 3 番目の四分位数(下四分位数) |