dplyrを使用してデータフレームの複数の列で「はい」をカウントする

Rohit

次のデータがあるとします。[リクエストに応じてデータを追加しています]

col1 <- c("Team A", "Team A", "Team A", "Team B", "Team B", "Team B", "Team C", "Team C", "Team C", "Team D", "Team D", "Team D")
col2 <- c("High",   "Medium", "Medium", "Low", "Low", "Low", "High", "Medium", "Low", "Medium", "Medium", "Medium")
col3 <- c("Yes", "Yes", "No", "No", "No", "Yes", "No", "Yes", "No", "Yes", "Yes", "Yes")
col4 <- c("No", "Yes", "No", "Yes", "Yes", "No", "No", "Yes", "No", "Yes", "No", "Yes")
df <- data.frame(col1, col2, col3, col4)
# Col1      Col2    Col3    Col4
# Team A    High    Yes     No
# Team A    Medium  Yes     Yes
# Team A    Medium  No      No
# Team B    Low     No      Yes
# Team B    Low     No      Yes
# Team B    Low     Yes     No
# Team C    High    No      No
# Team C    Medium  Yes    Yes
# Team C    Low     No     No 
# Team D    Medium  Yes    Yes
# Team D    Medium  Yes    No
# Team D    Medium  Yes    Yes

dplyr関数を使って次のような結果を得たいと思います。Status_1は、各チームに対するCol3の「はい」の数である必要があり、Status_2は、各チームに対するCol4の「はい」の数である必要があります。

       High Medium  Low Status_1    Status_2
Team A    1      2    0        2           1
Team B    0      0    3        1           2
Team C    1      1    1        1           1
Team D    0      3    0        3           2

次のステートメントを使用して、「Status_1」と「Status_2」の最後の2列について、通常の要約を生成できます。誰か助けてもらえますか?

df %>%
  group_by(Col1, Col2) %>%
  summarise(Count = n()) %>%
  spread(Col1, Count, fill = 0)
ダレンツァイ

まず、グループによるデータcol1の数数えYes内をcol3してcol4次に、すべての列で再度グループ化し、を使用して各グループの観測数をカウントしn()ます。最後に、を使用tidyr::pivot_widerしてデータをロングからワイドに変換します。

df %>%
  group_by(col1) %>%
  mutate_at(vars(col3:col4), ~ sum(. == "Yes")) %>%
  rename(status_1 = col3, status_2 = col4) %>% 
  group_by_all %>%
  summarise(n = n()) %>%
  tidyr::pivot_wider(names_from = col2, values_from = n, values_fill = list(n = 0))

# # A tibble: 4 x 6
#   col1   status_1 status_2  High Medium   Low
#   <fct>     <int>    <int> <int>  <int> <int>
# 1 Team A        2        1     1      2     0
# 2 Team B        1        2     0      0     3
# 3 Team C        1        1     1      1     1
# 4 Team D        3        2     0      3     0

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

データフレームの列で重複する値の発生をカウントし、Pythonの新しい列でカウントを更新したい

分類Dev

データフレームの複数の列での文字列の出現をカウントする

分類Dev

Pandasデータフレーム、複数の列でグループ化し、特定の列に合計を適用して、新しいカウント列を追加するにはどうすればよいですか?

分類Dev

dplyrを使用してRデータフレームの複数の列の関数を適用する

分類Dev

集計関数をカウントとして複数の列でグループ化されたデータフレームの最初の行を取得するにはどうすればよいですか?

分類Dev

複数のデータフレーム間で一致する列をカウントする

分類Dev

Pandasで、あるデータフレームで(ExcelのCountifs)をカウントし、異なる長さの別のデータフレームで新しい列としてカウントを追加する方法はありますか?

分類Dev

dplyrを使用してデータフレーム内の複数の列を変更する

分類Dev

dplyrを使用してデータフレームの複数の列を集約する方法

分類Dev

dplyrパイプを使用して、データフレームの複数のリスト列を一度にアンネストする方法

分類Dev

データフレームで2つ以上の特定の条件を使用してカウントを選択するにはどうすればよいですか?

分類Dev

ループを使用して複数のパンダデータフレームから列を削除するにはどうすればよいですか?

分類Dev

Python、パンダで別のデータフレームの複数の列を使用して1つのデータフレームの行を選択する

分類Dev

pandasデータフレームを使用して列の平均プラスカウントを行うにはどうすればよいですか?

分類Dev

データフレームを複数の5秒データフレームに分割し、Pythonでカウントを取得する

分類Dev

データフレームの列をビニングした後、新しいデータフレームを作成して各ビンの要素数をカウントするにはどうすればよいですか?

分類Dev

データフレームの列の観測数をカウントし、それを文字列として保存する方法はありますか?

分類Dev

applyを使用してパンダのデータフレーム列を複数に分割するにはどうすればよいですか?

分類Dev

dplyrを使用して複数のデータフレームを結合する方法は?

分類Dev

パンダデータフレームで欠落している行の数をユーザーインデックスでカウントします

分類Dev

パンダを使用してデータフレームから複数の列を削除する方法は?

分類Dev

列の値が表示される回数をカウントし、それを使用して列をデータフレームに追加します

分類Dev

データフレームの複数の列に累積カウントを適用する方法

分類Dev

複数の列を1つの列にマージし、一意の値の繰り返しをカウントし、パンダデータフレームのカウントごとに個別の列を維持するには

分類Dev

groupbyカウントの結果であるデータフレームに新しい列を追加します

分類Dev

一意の値と条件付きを使用してデータフレーム内をカウントするにはどうすればよいですか?

分類Dev

データフレーム内のアイテムのカウントを行い、結果をデータフレーム内の新しい列に割り当てるにはどうすればよいですか?

分類Dev

dplyrデータフレームの単一の列に基づいて複数の列を変更します

分類Dev

pandasデータフレームで.groupbyを使用して一意の値をカウントする

Related 関連記事

  1. 1

    データフレームの列で重複する値の発生をカウントし、Pythonの新しい列でカウントを更新したい

  2. 2

    データフレームの複数の列での文字列の出現をカウントする

  3. 3

    Pandasデータフレーム、複数の列でグループ化し、特定の列に合計を適用して、新しいカウント列を追加するにはどうすればよいですか?

  4. 4

    dplyrを使用してRデータフレームの複数の列の関数を適用する

  5. 5

    集計関数をカウントとして複数の列でグループ化されたデータフレームの最初の行を取得するにはどうすればよいですか?

  6. 6

    複数のデータフレーム間で一致する列をカウントする

  7. 7

    Pandasで、あるデータフレームで(ExcelのCountifs)をカウントし、異なる長さの別のデータフレームで新しい列としてカウントを追加する方法はありますか?

  8. 8

    dplyrを使用してデータフレーム内の複数の列を変更する

  9. 9

    dplyrを使用してデータフレームの複数の列を集約する方法

  10. 10

    dplyrパイプを使用して、データフレームの複数のリスト列を一度にアンネストする方法

  11. 11

    データフレームで2つ以上の特定の条件を使用してカウントを選択するにはどうすればよいですか?

  12. 12

    ループを使用して複数のパンダデータフレームから列を削除するにはどうすればよいですか?

  13. 13

    Python、パンダで別のデータフレームの複数の列を使用して1つのデータフレームの行を選択する

  14. 14

    pandasデータフレームを使用して列の平均プラスカウントを行うにはどうすればよいですか?

  15. 15

    データフレームを複数の5秒データフレームに分割し、Pythonでカウントを取得する

  16. 16

    データフレームの列をビニングした後、新しいデータフレームを作成して各ビンの要素数をカウントするにはどうすればよいですか?

  17. 17

    データフレームの列の観測数をカウントし、それを文字列として保存する方法はありますか?

  18. 18

    applyを使用してパンダのデータフレーム列を複数に分割するにはどうすればよいですか?

  19. 19

    dplyrを使用して複数のデータフレームを結合する方法は?

  20. 20

    パンダデータフレームで欠落している行の数をユーザーインデックスでカウントします

  21. 21

    パンダを使用してデータフレームから複数の列を削除する方法は?

  22. 22

    列の値が表示される回数をカウントし、それを使用して列をデータフレームに追加します

  23. 23

    データフレームの複数の列に累積カウントを適用する方法

  24. 24

    複数の列を1つの列にマージし、一意の値の繰り返しをカウントし、パンダデータフレームのカウントごとに個別の列を維持するには

  25. 25

    groupbyカウントの結果であるデータフレームに新しい列を追加します

  26. 26

    一意の値と条件付きを使用してデータフレーム内をカウントするにはどうすればよいですか?

  27. 27

    データフレーム内のアイテムのカウントを行い、結果をデータフレーム内の新しい列に割り当てるにはどうすればよいですか?

  28. 28

    dplyrデータフレームの単一の列に基づいて複数の列を変更します

  29. 29

    pandasデータフレームで.groupbyを使用して一意の値をカウントする

ホットタグ

アーカイブ