Group a selection of rows or cols
Usage
wb_group_cols(
wb,
sheet = current_sheet(),
cols,
collapsed = FALSE,
levels = NULL
)
wb_ungroup_cols(wb, sheet = current_sheet(), cols)
wb_group_rows(
wb,
sheet = current_sheet(),
rows,
collapsed = FALSE,
levels = NULL
)
wb_ungroup_rows(wb, sheet = current_sheet(), rows)
Arguments
- wb
A wbWorkbook object
- sheet
A name or index of a worksheet
- collapsed
If
TRUE
the grouped columns are collapsed- levels
levels
- rows, cols
Indices of rows and columns to group
See also
Other workbook wrappers:
wb_add_chartsheet()
,
wb_add_data_table()
,
wb_add_data()
,
wb_add_formula()
,
wb_add_pivot_table()
,
wb_add_worksheet()
,
wb_base_font
,
wb_clone_worksheet()
,
wb_col_widths
,
wb_copy_cells()
,
wb_creators
,
wb_freeze_pane()
,
wb_merge_cells()
,
wb_save()
,
wb_set_last_modified_by()
,
wb_set_row_heights()
,
wb_workbook()
Examples
# create matrix
t1 <- AirPassengers
t2 <- do.call(cbind, split(t1, cycle(t1)))
dimnames(t2) <- dimnames(.preformat.ts(t1))
wb <- wb_workbook()
wb$add_worksheet("AirPass")
wb$add_data("AirPass", t2, rowNames = TRUE)
# groups will always end on/show the last row. in the example 1950, 1955, and 1960
wb <- wb_group_rows(wb, "AirPass", 2:3, collapsed = TRUE) # group years < 1950
wb <- wb_group_rows(wb, "AirPass", 4:8, collapsed = TRUE) # group years 1951-1955
wb <- wb_group_rows(wb, "AirPass", 9:13) # group years 1956-1960
wb$createCols("AirPass", 13)
wb <- wb_group_cols(wb, "AirPass", 2:4, collapsed = TRUE)
wb <- wb_group_cols(wb, "AirPass", 5:7, collapsed = TRUE)
wb <- wb_group_cols(wb, "AirPass", 8:10, collapsed = TRUE)
wb <- wb_group_cols(wb, "AirPass", 11:13)
### create grouping levels
grp_rows <- list(
"1" = seq(2, 3),
"2" = seq(4, 8),
"3" = seq(9, 13)
)
grp_cols <- list(
"1" = seq(2, 4),
"2" = seq(5, 7),
"3" = seq(8, 10),
"4" = seq(11, 13)
)
wb <- wb_workbook()
wb$add_worksheet("AirPass")
wb$add_data("AirPass", t2, rowNames = TRUE)
wb$createCols("AirPass", 13)
wb$group_cols("AirPass", cols = grp_cols)
wb$group_rows("AirPass", rows = grp_rows)