-
Notifications
You must be signed in to change notification settings - Fork 218
Closed
Description
Description
I followed exactly your tutorial Introduction to Creating gt Tables. In code chunk 8 about the tab_row_group() I got an error: (The code works if I replace row names with row numbers as in the first call to tab_row_group() in the tutorial example.
Error in resolver_stop_on_character():
! The following row(s) do not exist in the data: Australia, Greenland.
Run rlang::last_trace() to see where the error occurred.
rlang::last_trace()
<error/rlang_error>
Error inresolver_stop_on_character():
! The following row(s) do not exist in the data: Australia, Greenland.
Backtrace:
▆
- ├─base::source(...)
- │ ├─base::withVisible(eval(ei, envir))
- │ └─base::eval(ei, envir)
- │ └─base::eval(ei, envir)
- ├─gt::tab_row_group(...) at _archive/Test Files/gt-test.R:27:1
- │ └─gt:::stop_if_not_gt_tbl(data = data)
- │ └─gt:::is_gt_tbl(data = data)
- └─gt::tab_row_group(...)
- └─gt:::resolve_rows_i(expr = !!row_expr, data = data)
-
└─gt:::resolve_rows_l(...) -
└─gt:::normalize_resolved(...) -
└─gt:::resolver_stop_on_character(item_label = item_label, unknown_resolved = unknown_resolved)
Run rlang::last_trace(drop = FALSE) to see 2 hidden frames.
Reproducible example
## Code Chunk 1 #######
# Take the `islands` dataset and use some
# dplyr functionality to obtain the ten
# biggest islands in the world
islands_tbl <-
tibble::tibble(
name = names(islands),
size = islands
) |>
dplyr::arrange(desc(size)) |>
dplyr::slice(1:10)
## Code Chunk 2 ########
# Create a display table showing ten of
# the largest islands in the world
gt_tbl <- gt::gt(islands_tbl)
## Code Chunk 8 #######
# Create three row groups with the
# `tab_row_group()` function
gt_tbl <-
gt_tbl |>
gt::tab_row_group(
label = "continent",
rows = 1:6
) |>
gt::tab_row_group(
label = "country",
rows = c("Australia", "Greenland")
) |>
gt::tab_row_group(
label = "subregion",
rows = c("New Guinea", "Borneo")
)
#> Error in `resolver_stop_on_character()`:
#> ! The following row(s) do not exist in the data: Australia, Greenland.
#> Backtrace:
#> ▆
#> 1. ├─gt::tab_row_group(...)
#> 2. │ └─gt:::stop_if_not_gt_tbl(data = data)
#> 3. │ └─gt:::is_gt_tbl(data = data)
#> 4. └─gt::tab_row_group(...)
#> 5. └─gt:::resolve_rows_i(expr = !!row_expr, data = data)
#> 6. └─gt:::resolve_rows_l(...)
#> 7. └─gt:::normalize_resolved(...)
#> 8. └─gt:::resolver_stop_on_character(item_label = item_label, unknown_resolved = unknown_resolved)
#> 9. └─cli::cli_abort("The following {item_label}(s) do not exist in the data:\n {paste0(unknown_resolved, collapse = ', ')}.")
#> 10. └─rlang::abort(...)
# Show the gt table
gt_tbl
<style>#dtifgqbmsk table {
font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
#dtifgqbmsk thead, #dtifgqbmsk tbody, #dtifgqbmsk tfoot, #dtifgqbmsk tr, #dtifgqbmsk td, #dtifgqbmsk th {
border-style: none;
}
#dtifgqbmsk p {
margin: 0;
padding: 0;
}
#dtifgqbmsk .gt_table {
display: table;
border-collapse: collapse;
line-height: normal;
margin-left: auto;
margin-right: auto;
color: #333333;
font-size: 16px;
font-weight: normal;
font-style: normal;
background-color: #FFFFFF;
width: auto;
border-top-style: solid;
border-top-width: 2px;
border-top-color: #A8A8A8;
border-right-style: none;
border-right-width: 2px;
border-right-color: #D3D3D3;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #A8A8A8;
border-left-style: none;
border-left-width: 2px;
border-left-color: #D3D3D3;
}
#dtifgqbmsk .gt_caption {
padding-top: 4px;
padding-bottom: 4px;
}
#dtifgqbmsk .gt_title {
color: #333333;
font-size: 125%;
font-weight: initial;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 5px;
padding-right: 5px;
border-bottom-color: #FFFFFF;
border-bottom-width: 0;
}
#dtifgqbmsk .gt_subtitle {
color: #333333;
font-size: 85%;
font-weight: initial;
padding-top: 3px;
padding-bottom: 5px;
padding-left: 5px;
padding-right: 5px;
border-top-color: #FFFFFF;
border-top-width: 0;
}
#dtifgqbmsk .gt_heading {
background-color: #FFFFFF;
text-align: center;
border-bottom-color: #FFFFFF;
border-left-style: none;
border-left-width: 1px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 1px;
border-right-color: #D3D3D3;
}
#dtifgqbmsk .gt_bottom_border {
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
}
#dtifgqbmsk .gt_col_headings {
border-top-style: solid;
border-top-width: 2px;
border-top-color: #D3D3D3;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
border-left-style: none;
border-left-width: 1px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 1px;
border-right-color: #D3D3D3;
}
#dtifgqbmsk .gt_col_heading {
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: normal;
text-transform: inherit;
border-left-style: none;
border-left-width: 1px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 1px;
border-right-color: #D3D3D3;
vertical-align: bottom;
padding-top: 5px;
padding-bottom: 6px;
padding-left: 5px;
padding-right: 5px;
overflow-x: hidden;
}
#dtifgqbmsk .gt_column_spanner_outer {
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: normal;
text-transform: inherit;
padding-top: 0;
padding-bottom: 0;
padding-left: 4px;
padding-right: 4px;
}
#dtifgqbmsk .gt_column_spanner_outer:first-child {
padding-left: 0;
}
#dtifgqbmsk .gt_column_spanner_outer:last-child {
padding-right: 0;
}
#dtifgqbmsk .gt_column_spanner {
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
vertical-align: bottom;
padding-top: 5px;
padding-bottom: 5px;
overflow-x: hidden;
display: inline-block;
width: 100%;
}
#dtifgqbmsk .gt_spanner_row {
border-bottom-style: hidden;
}
#dtifgqbmsk .gt_group_heading {
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: initial;
text-transform: inherit;
border-top-style: solid;
border-top-width: 2px;
border-top-color: #D3D3D3;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
border-left-style: none;
border-left-width: 1px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 1px;
border-right-color: #D3D3D3;
vertical-align: middle;
text-align: left;
}
#dtifgqbmsk .gt_empty_group_heading {
padding: 0.5px;
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: initial;
border-top-style: solid;
border-top-width: 2px;
border-top-color: #D3D3D3;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
vertical-align: middle;
}
#dtifgqbmsk .gt_from_md > :first-child {
margin-top: 0;
}
#dtifgqbmsk .gt_from_md > :last-child {
margin-bottom: 0;
}
#dtifgqbmsk .gt_row {
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
margin: 10px;
border-top-style: solid;
border-top-width: 1px;
border-top-color: #D3D3D3;
border-left-style: none;
border-left-width: 1px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 1px;
border-right-color: #D3D3D3;
vertical-align: middle;
overflow-x: hidden;
}
#dtifgqbmsk .gt_stub {
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: initial;
text-transform: inherit;
border-right-style: solid;
border-right-width: 2px;
border-right-color: #D3D3D3;
padding-left: 5px;
padding-right: 5px;
}
#dtifgqbmsk .gt_stub_row_group {
color: #333333;
background-color: #FFFFFF;
font-size: 100%;
font-weight: initial;
text-transform: inherit;
border-right-style: solid;
border-right-width: 2px;
border-right-color: #D3D3D3;
padding-left: 5px;
padding-right: 5px;
vertical-align: top;
}
#dtifgqbmsk .gt_row_group_first td {
border-top-width: 2px;
}
#dtifgqbmsk .gt_row_group_first th {
border-top-width: 2px;
}
#dtifgqbmsk .gt_summary_row {
color: #333333;
background-color: #FFFFFF;
text-transform: inherit;
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
}
#dtifgqbmsk .gt_first_summary_row {
border-top-style: solid;
border-top-color: #D3D3D3;
}
#dtifgqbmsk .gt_first_summary_row.thick {
border-top-width: 2px;
}
#dtifgqbmsk .gt_last_summary_row {
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
}
#dtifgqbmsk .gt_grand_summary_row {
color: #333333;
background-color: #FFFFFF;
text-transform: inherit;
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
}
#dtifgqbmsk .gt_first_grand_summary_row {
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
border-top-style: double;
border-top-width: 6px;
border-top-color: #D3D3D3;
}
#dtifgqbmsk .gt_last_grand_summary_row_top {
padding-top: 8px;
padding-bottom: 8px;
padding-left: 5px;
padding-right: 5px;
border-bottom-style: double;
border-bottom-width: 6px;
border-bottom-color: #D3D3D3;
}
#dtifgqbmsk .gt_striped {
background-color: rgba(128, 128, 128, 0.05);
}
#dtifgqbmsk .gt_table_body {
border-top-style: solid;
border-top-width: 2px;
border-top-color: #D3D3D3;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
}
#dtifgqbmsk .gt_footnotes {
color: #333333;
background-color: #FFFFFF;
border-bottom-style: none;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
border-left-style: none;
border-left-width: 2px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 2px;
border-right-color: #D3D3D3;
}
#dtifgqbmsk .gt_footnote {
margin: 0px;
font-size: 90%;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 5px;
padding-right: 5px;
}
#dtifgqbmsk .gt_sourcenotes {
color: #333333;
background-color: #FFFFFF;
border-bottom-style: none;
border-bottom-width: 2px;
border-bottom-color: #D3D3D3;
border-left-style: none;
border-left-width: 2px;
border-left-color: #D3D3D3;
border-right-style: none;
border-right-width: 2px;
border-right-color: #D3D3D3;
}
#dtifgqbmsk .gt_sourcenote {
font-size: 90%;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 5px;
padding-right: 5px;
}
#dtifgqbmsk .gt_left {
text-align: left;
}
#dtifgqbmsk .gt_center {
text-align: center;
}
#dtifgqbmsk .gt_right {
text-align: right;
font-variant-numeric: tabular-nums;
}
#dtifgqbmsk .gt_font_normal {
font-weight: normal;
}
#dtifgqbmsk .gt_font_bold {
font-weight: bold;
}
#dtifgqbmsk .gt_font_italic {
font-style: italic;
}
#dtifgqbmsk .gt_super {
font-size: 65%;
}
#dtifgqbmsk .gt_footnote_marks {
font-size: 75%;
vertical-align: 0.4em;
position: initial;
}
#dtifgqbmsk .gt_asterisk {
font-size: 100%;
vertical-align: 0;
}
#dtifgqbmsk .gt_indent_1 {
text-indent: 5px;
}
#dtifgqbmsk .gt_indent_2 {
text-indent: 10px;
}
#dtifgqbmsk .gt_indent_3 {
text-indent: 15px;
}
#dtifgqbmsk .gt_indent_4 {
text-indent: 20px;
}
#dtifgqbmsk .gt_indent_5 {
text-indent: 25px;
}
</style>
| name | size |
|---|---|
| Asia | 16988 |
| Africa | 11506 |
| North America | 9390 |
| South America | 6795 |
| Antarctica | 5500 |
| Europe | 3745 |
| Australia | 2968 |
| Greenland | 840 |
| New Guinea | 306 |
| Borneo | 280 |
Created on 2024-01-15 with reprex v2.0.2
Session info
sessioninfo::session_info()
#> ─ Session info ───────────────────────────────────────────────────────────────
#> setting value
#> version R version 4.3.2 (2023-10-31)
#> os macOS Sonoma 14.2.1
#> system x86_64, darwin20
#> ui X11
#> language (EN)
#> collate en_US.UTF-8
#> ctype en_US.UTF-8
#> tz Europe/Vienna
#> date 2024-01-15
#> pandoc 3.1.9 @ /usr/local/bin/ (via rmarkdown)
#>
#> ─ Packages ───────────────────────────────────────────────────────────────────
#> package * version date (UTC) lib source
#> cli 3.6.2 2023-12-11 [1] CRAN (R 4.3.0)
#> digest 0.6.33 2023-07-07 [1] CRAN (R 4.3.0)
#> dplyr 1.1.4 2023-11-17 [1] CRAN (R 4.3.0)
#> evaluate 0.23 2023-11-01 [1] CRAN (R 4.3.0)
#> fansi 1.0.6 2023-12-08 [1] CRAN (R 4.3.0)
#> fastmap 1.1.1 2023-02-24 [1] CRAN (R 4.3.0)
#> fs 1.6.3 2023-07-20 [1] CRAN (R 4.3.0)
#> generics 0.1.3 2022-07-05 [1] CRAN (R 4.3.0)
#> glue 1.7.0 2024-01-09 [1] CRAN (R 4.3.0)
#> gt 0.10.0 2023-10-07 [1] CRAN (R 4.3.0)
#> htmltools 0.5.7 2023-11-03 [1] CRAN (R 4.3.0)
#> knitr 1.45 2023-10-30 [1] CRAN (R 4.3.0)
#> lifecycle 1.0.4 2023-11-07 [1] CRAN (R 4.3.0)
#> magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.3.0)
#> pillar 1.9.0 2023-03-22 [1] CRAN (R 4.3.0)
#> pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.3.0)
#> purrr 1.0.2 2023-08-10 [1] CRAN (R 4.3.0)
#> R.cache 0.16.0 2022-07-21 [1] CRAN (R 4.3.0)
#> R.methodsS3 1.8.2 2022-06-13 [1] CRAN (R 4.3.0)
#> R.oo 1.25.0 2022-06-12 [1] CRAN (R 4.3.0)
#> R.utils 2.12.3 2023-11-18 [1] CRAN (R 4.3.0)
#> R6 2.5.1 2021-08-19 [1] CRAN (R 4.3.0)
#> reprex 2.0.2 2022-08-17 [1] CRAN (R 4.3.0)
#> rlang 1.1.3 2024-01-10 [1] CRAN (R 4.3.0)
#> rmarkdown 2.25 2023-09-18 [1] CRAN (R 4.3.0)
#> rstudioapi 0.15.0 2023-07-07 [1] CRAN (R 4.3.0)
#> sass 0.4.8 2023-12-06 [1] CRAN (R 4.3.0)
#> sessioninfo 1.2.2 2021-12-06 [1] CRAN (R 4.3.0)
#> styler 1.10.2 2023-08-29 [1] CRAN (R 4.3.0)
#> tibble 3.2.1 2023-03-20 [1] CRAN (R 4.3.0)
#> tidyselect 1.2.0 2022-10-10 [1] CRAN (R 4.3.0)
#> utf8 1.2.4 2023-10-22 [1] CRAN (R 4.3.0)
#> vctrs 0.6.5 2023-12-01 [1] CRAN (R 4.3.2)
#> withr 2.5.2 2023-10-30 [1] CRAN (R 4.3.0)
#> xfun 0.41 2023-11-01 [1] CRAN (R 4.3.0)
#> xml2 1.3.6 2023-12-04 [1] CRAN (R 4.3.0)
#> yaml 2.3.8 2023-12-11 [1] CRAN (R 4.3.0)
#>
#> [1] /Library/Frameworks/R.framework/Versions/4.3-x86_64/library
#> [2] /Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/library
#>
#> ──────────────────────────────────────────────────────────────────────────────Expected result
Session info
See above the end of the copied reprex.