もっと詳しく
このRチュートリアルでは、データをグループ化し、グループ化された行の合計を返すことにより、集計操作を実行する方法を説明します。

この操作は、データフレームで実行する必要があります。 7行5列のデータフレームを作成しましょう。

#7行5列のデータフレームマーケットを作成します。

市場=データ。フレーム((market_id=c((1214345)。market_name=c((「M1」「M2」「M3」
「M4」「M3」「M4」「M3」)。市場=c((‘インド’‘アメリカ合衆国’‘インド’‘オーストラリア’‘アメリカ合衆国’
‘インド’‘オーストラリア’)。market_type=c((‘買い物’‘バー’‘買い物’「レストラン」
‘買い物’‘バー’‘買い物’)。market_squarefeet=c((120342220110342220110)。)。

#市場データフレームを表示する
印刷((市場)。

結果

ここで、類似した値を別の列にグループ化して、列の合計を返します。

方法1:Aggregate()

ここでは、3つのパラメーターを受け取るaggregate()関数を使用します。

構文

集計((dataframe_object $ grouped リスト((dataframe_object $ grouping)。 楽しい=)。

パラメーター

  1. 最初のパラメーターは、グループごとの値の合計を返す変数列(グループ化)を取ります。
  2. 2番目のパラメーターは、値がこれらの列にグループ化されるように、リスト内の単一または複数の列(グループ化)を取ります。
  3. 3番目のパラメーターはFUNを取ります。これは、合計関数を取り、グループ化された値の合計を返します。

例1
この例では、market_place列の値をグループ化し、market_place列でグループ化されたmarket_squarefeet列の値の合計を取得します。

#7行5列のデータフレームマーケットを作成します。
市場=データ。フレーム((market_id=c((1214345)。market_name=c((「M1」「M2」「M3」
「M4」「M3」「M4」「M3」)。市場=c((‘インド’‘アメリカ合衆国’‘インド’‘オーストラリア’‘アメリカ合衆国’
‘インド’‘オーストラリア’)。market_type=c((‘買い物’‘バー’‘買い物’「レストラン」
‘買い物’‘バー’‘買い物’)。market_squarefeet=c((120342220110342220110)。)。

#market_placeをグループ化して、グループ内の平方フィートの合計を取得します
印刷((集計((マーケット$market_squarefeet リスト((market $ market_place)。 楽しい=)。)。

結果

market_place列の同様の値(オーストラリア、インド、および米国)がグループ化され、market_squareフィート列のグループ化された値の合計が返されることがわかります。

例2
この例では、market_type列の値をグループ化し、market_type列でグループ化されたmarket_squarefeet列の合計を取得します。

#7行5列のデータフレームマーケットを作成します。
市場=データ。フレーム((market_id=c((1214345)。market_name=c((「M1」「M2」「M3」
「M4」「M3」「M4」「M3」)。市場=c((‘インド’‘アメリカ合衆国’‘インド’‘オーストラリア’‘アメリカ合衆国’
‘インド’‘オーストラリア’)。market_type=c((‘買い物’‘バー’‘買い物’「レストラン」
‘買い物’‘バー’‘買い物’)。market_squarefeet=c((120342220110342220110)。)。

#market_typeをグループ化して、グループ内の平方フィートの合計を取得します
印刷((集計((マーケット$market_squarefeet リスト((マーケット$マーケットタイプ)。 楽しい=)。)。

結果

market_type列の同様の値(bar、grocery、およびrestaurent)がグループ化され、market_squareフィート列のグループ化された値の合計が返されることがわかります。

例3
この例では、market_type列とmarket_place列の値をグループ化し、market_type列とmarket_place列でグループ化されたmarket_squarefeet列の値の合計を取得します。

#7行5列のデータフレームマーケットを作成します。
市場=データ。フレーム((market_id=c((1214345)。market_name=c((「M1」「M2」「M3」
「M4」「M3」「M4」「M3」)。市場=c((‘インド’‘アメリカ合衆国’‘インド’‘オーストラリア’‘アメリカ合衆国’
‘インド’‘オーストラリア’)。market_type=c((‘買い物’‘バー’‘買い物’「レストラン」
‘買い物’‘バー’‘買い物’)。market_squarefeet=c((120342220110342220110)。)。

#market_placeとmarket_typeをグループ化して、グループ内の平方フィートの合計を取得します
印刷((集計((マーケット$market_squarefeet リスト((market $ market_placeマーケット$マーケットタイプ)。 楽しい=)。)。

結果

2つの列の同様の値がグループ化され、market_squareフィート列にグループ化された値の合計が返されたことがわかります。

方法2:Dplyr

ここでは、dplyrライブラリで使用可能なsummarise_at()関数とともにgroup_by()関数を使用して、sum操作でgroup_by関数を実行します。

構文

dataframe_object%>>%group_by((グループ化)。>>%summarise_at((vars((グループ化)。 リスト((名前 = )。)。

どこ:

  1. group_by()は1つのパラメーター、つまりグループ化列を取ります
  2. summarise_at()は2つのパラメーターを取ります:
  1. 最初のパラメーターは、グループごとの値の合計を返す変数列(グループ化)を取ります。
  2. 2番目のパラメーターは、リストを介して合計関数を取ります。

最後に、最初に合計で要約し、それをグループにロードします。 次に、グループ化された列をデータフレームオブジェクトにロードします。

ティブルを返します。

例1
この例では、market_place列の値をグループ化し、market_place列でグループ化されたmarket_squarefeet列の値の合計を取得します。

図書館((「dplyr」)。

#market_placeをグループ化して、グループ内の平方フィートの合計を取得します
印刷((市場%>>%group_by((市場)。>>
summarise_at((vars((market_squarefeet)。 リスト((名前 = )。)。)。

結果

market_place列の同様の値(オーストラリア、インド、および米国)がグループ化され、market_squareフィート列のグループ化された値の合計が返されることがわかります。

例2
この例では、market_type列の値をグループ化し、market_type列でグループ化されたmarket_squarefeet列の値の合計を取得します。

図書館((「dplyr」)。

#market_typeをグループ化して、グループ内の平方フィートの合計を取得します
印刷((市場%>>%group_by((market_type)。>>
summarise_at((vars((market_squarefeet)。 リスト((名前 = )。)。)。

結果

market_type列の同様の値(bar、grocery、restaurent)がグループ化され、market_squareフィート列のグループ化された値の合計が返されることがわかります。

結論

単一または複数の列を他の数値列とグループ化して、aggregate()関数を使用して数値列の合計を返すことができます。 同様に、summarise_at()関数でgroupby()関数を使用して、列内の類似した値をグループ化し、別の列に関してグループ化された値の合計を返すことができます。

The post Groupby()Sumを使用して集計操作を実行する方法 appeared first on Gamingsym Japan.