| context {poorman} | R Documentation |
Context dependent expressions
Description
These functions return information about the "current" group or "current" variable, so only work inside specific
contexts like summarise() and mutate().
-
n()gives the number of observations in the current group.
-
cur_data()gives the current data for the current group (excluding grouping variables).
-
cur_data_all()gives the current data for the current group (including grouping variables).
-
cur_group()gives the group keys, a single rowdata.framecontaining a column for each grouping variable and its value.
-
cur_group_id()gives a unique numeric identifier for the current group.
-
cur_group_rows()gives the rows the groups appear in the data.
-
cur_column()gives the name of the current column (inacross()only).
Usage
n()
cur_data()
cur_data_all()
cur_group()
cur_group_id()
cur_group_rows()
cur_column()
data.table
If you're familiar with data.table:
-
cur_data()<->.SD -
cur_group_id()<->.GRP -
cur_group()<->.BY -
cur_group_rows()<->.I
See Also
See group_data() for equivalent functions that return values for all groups.
Examples
df <- data.frame(
g = sample(rep(letters[1:3], 1:3)),
x = runif(6),
y = runif(6),
stringsAsFactors = FALSE
)
gf <- df %>% group_by(g)
gf %>% summarise(n = n())
gf %>% mutate(id = cur_group_id())
gf %>% summarise(row = cur_group_rows())
gf %>% summarise(data = list(cur_group()))
gf %>% summarise(data = list(cur_data()))
gf %>% summarise(data = list(cur_data_all()))
gf %>% mutate(across(everything(), ~ paste(cur_column(), round(.x, 2))))