1
library(tidyverse)
mtcars %>% group_by(cyl) %>% is_grouped_df()
#> [1] TRUE

データ フレームを変数でグループ化し、is_grouped_df()関数を使用してグループ化されているかどうかを確認できます (上記を参照)。

dplyrrowwise()関数で同じ分析を実行すると、rowwise()データ セットが行ごとにグループ化されていないように見えます。質問がありますが、ヘルプ ページ ( ?rowwise) を読んでも質問に対する明確な回答が得られません。

入力を行ごとにグループ化する

説明: rowwise() を使用すると、データ フレームを 1 行ずつ計算できます。これは、ベクトル化された関数が存在しない場合に最も役立ちます。

行単位のティブルは、group_by()、ungroup()、または as_tibble() によって明示的に削除されるまで、その行単位のステータスを維持します。

私の質問:関数を呼び出した後、後でパイプ内で関数rowwise()を呼び出して、データ セットのグループ化を解除する必要がありますか? ungroup()それとも、これはデフォルトで行われますか? 次のパイプは、次を含むパイプがrowwise()グループ化されていないことを示しています。

mtcars %>% rowwise() %>% is_grouped_df()
#> [1] FALSE

この文は私を混乱させますungroup()すでにグループ化されていない tibble が必要なのはなぜですか?

4

1 に答える 1