{
  "_id": "6a101d9bacfb0bcc41c8a524",
  "Package": "tsg",
  "Type": "Package",
  "Title": "Generate Publication-Ready Statistical Tables",
  "Version": "0.1.4",
  "Description": "A collection of functions for generating frequency tables\nand cross-tabulations of categorical variables. The resulting\ntables can be exported to various formats (Excel, PDF, HTML,\netc.) with extensive formatting and layout customization\noptions.",
  "Authors@R": "c(\nperson(\n\"Bhas\",\n\"Abdulsamad\",\nemail = \"aeabdulsamad@gmail.com\",\ncomment = c(ORCID = \"0009-0002-5891-8124\"),\nrole = c(\"aut\", \"cre\", \"cph\")\n)\n)",
  "Author": "Bhas Abdulsamad [aut, cre, cph]\n(<https://orcid.org/0009-0002-5891-8124>)",
  "Maintainer": "Bhas Abdulsamad <aeabdulsamad@gmail.com>",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "LazyData": "true",
  "Config/testthat/edition": "3",
  "RoxygenNote": "7.3.3",
  "Roxygen": "list(markdown = TRUE)",
  "VignetteBuilder": "knitr",
  "URL": "https://yng-me.github.io/tsg/, https://github.com/yng-me/tsg",
  "BugReports": "https://github.com/yng-me/tsg/issues",
  "Config/pak/sysreqs": "libcairo2-dev cmake libfontconfig1-dev\nlibfreetype6-dev libfribidi-dev make libharfbuzz-dev libicu-dev\nlibjpeg-dev libpng-dev libtiff-dev libuv1-dev libwebp-dev\nlibxml2-dev libssl-dev libnode-dev libx11-dev zlib1g-dev",
  "Repository": "https://yng-me.r-universe.dev",
  "Date/Publication": "2026-05-14 05:25:20 UTC",
  "RemoteUrl": "https://github.com/yng-me/tsg",
  "RemoteRef": "HEAD",
  "RemoteSha": "27d78a62d5cc0f1b5ac091658e9145719777df02",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-05-14 07:51:20 UTC",
    "User": "root"
  },
  "MD5sum": "2901b02f10c9620e824321e75a4d949c",
  "_user": "yng-me",
  "_type": "src",
  "_file": "tsg_0.1.4.tar.gz",
  "_fileid": "83e940b65f871ae350d2063816cdb72009b4c31d7e27e5a7da51c56a4c7b771a",
  "_filesize": 326024,
  "_sha256": "83e940b65f871ae350d2063816cdb72009b4c31d7e27e5a7da51c56a4c7b771a",
  "_created": "2026-05-14T07:51:20.000Z",
  "_published": "2026-05-22T09:10:51.316Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 77350014817,
      "time": 191,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "6989797779"
    },
    {
      "job": 77350014741,
      "time": 182,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "6989795570"
    },
    {
      "job": 77350015235,
      "time": 117,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "6989778863"
    },
    {
      "job": 77350014728,
      "time": 128,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "6989787780"
    },
    {
      "job": 77350014061,
      "time": 252,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "6989746895"
    },
    {
      "job": 77350014016,
      "time": 136,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7156931980"
    },
    {
      "job": 77350014721,
      "time": 157,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "6989787608"
    },
    {
      "job": 77350015345,
      "time": 152,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "6989786088"
    },
    {
      "job": 77350014820,
      "time": 146,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "6989784571"
    }
  ],
  "_buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/yng-me/tsg",
  "_commit": {
    "id": "27d78a62d5cc0f1b5ac091658e9145719777df02",
    "author": "Bhas Abdulsamad <aeabdulsamad@gmail.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Merge pull request #12 from yng-me/ga\n\nchore: added google analytics",
    "time": 1778736320
  },
  "_maintainer": {
    "name": "Bhas Abdulsamad",
    "email": "aeabdulsamad@gmail.com",
    "login": "yng-me",
    "uuid": 11029004
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "haven",
      "role": "Imports"
    },
    {
      "package": "openxlsx",
      "role": "Imports"
    },
    {
      "package": "fs",
      "role": "Imports"
    },
    {
      "package": "forcats",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "glue",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "version": ">= 2.0.0",
      "role": "Imports"
    },
    {
      "package": "yaml",
      "version": ">= 2.3.10",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "version": ">= 1.1.0",
      "role": "Imports"
    },
    {
      "package": "stringr",
      "version": ">= 1.4.0",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "version": ">= 1.0.2",
      "role": "Imports"
    },
    {
      "package": "gt",
      "role": "Imports"
    },
    {
      "package": "lifecycle",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "officer",
      "role": "Imports"
    },
    {
      "package": "flextable",
      "role": "Imports"
    },
    {
      "package": "qpdf",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "cli",
      "role": "Suggests"
    },
    {
      "package": "devtools",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "tibble",
      "role": "Suggests"
    },
    {
      "package": "webshot2",
      "role": "Suggests"
    },
    {
      "package": "withr",
      "role": "Suggests"
    }
  ],
  "_owner": "yng-me",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2025-37",
      "n": 1
    },
    {
      "week": "2025-38",
      "n": 1
    },
    {
      "week": "2025-39",
      "n": 2
    },
    {
      "week": "2025-40",
      "n": 8
    },
    {
      "week": "2025-43",
      "n": 13
    },
    {
      "week": "2025-45",
      "n": 11
    },
    {
      "week": "2025-47",
      "n": 4
    },
    {
      "week": "2026-07",
      "n": 1
    },
    {
      "week": "2026-08",
      "n": 1
    },
    {
      "week": "2026-09",
      "n": 3
    },
    {
      "week": "2026-19",
      "n": 2
    },
    {
      "week": "2026-20",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "v0.1.0",
      "date": "2025-11-05"
    },
    {
      "name": "v0.1.1",
      "date": "2025-11-20"
    },
    {
      "name": "v0.1.2",
      "date": "2025-11-20"
    },
    {
      "name": "v0.1.3",
      "date": "2026-02-28"
    },
    {
      "name": "v0.1.4",
      "date": "2026-05-05"
    }
  ],
  "_stars": 1,
  "_contributors": [
    {
      "user": "yng-me",
      "count": 71,
      "uuid": 11029004
    }
  ],
  "_userbio": {
    "uuid": 11029004,
    "type": "user",
    "name": "Bhas Abdulsamad"
  },
  "_downloads": {
    "count": 4117,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/tsg"
  },
  "_devurl": "https://github.com/yng-me/tsg",
  "_pkgdown": "https://yng-me.github.io/tsg/",
  "_searchresults": 8,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/tsg.html",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/yng-me/tsg",
  "_realowner": "yng-me",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2025-11-09"
    },
    {
      "version": "0.1.1",
      "date": "2026-02-16"
    },
    {
      "version": "0.1.2",
      "date": "2026-02-22"
    },
    {
      "version": "0.1.3",
      "date": "2026-02-28"
    },
    {
      "version": "0.1.4",
      "date": "2026-05-05"
    }
  ],
  "_exports": [
    "add_column_total",
    "add_facade",
    "add_facade_alt",
    "add_footnote",
    "add_row_total",
    "add_source_note",
    "add_table_subtitle",
    "add_table_title",
    "collapse_list",
    "convert_factor",
    "generate_crosstab",
    "generate_frequency",
    "generate_output",
    "generate_template",
    "get_tsg_facade",
    "remove_label",
    "remove_labels",
    "rename_label",
    "write_docx",
    "write_html",
    "write_pdf",
    "write_xlsx"
  ],
  "_datasets": [
    {
      "name": "person_record",
      "title": "Sample dataset of persons",
      "object": "person_record",
      "class": [
        "tbl_df",
        "tbl",
        "data.frame"
      ],
      "fields": [
        "person_id",
        "age",
        "sex",
        "marital_status",
        "employed",
        "seeing",
        "hearing",
        "walking",
        "remembering",
        "self_caring",
        "communicating"
      ],
      "rows": 2918,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "add_column_total",
      "title": "Add a column total",
      "topics": [
        "add_column_total"
      ]
    },
    {
      "page": "add_facade",
      "title": "Add a facade to a tsg table",
      "topics": [
        "add_facade"
      ]
    },
    {
      "page": "add_facade_alt",
      "title": "Add a facade to a tsg table (alternative way)",
      "topics": [
        "add_facade_alt"
      ]
    },
    {
      "page": "add_footnote",
      "title": "Add a footnote attribute to a table",
      "topics": [
        "add_footnote"
      ]
    },
    {
      "page": "add_row_total",
      "title": "Add a row total",
      "topics": [
        "add_row_total"
      ]
    },
    {
      "page": "add_source_note",
      "title": "Add a source note attribute to a table",
      "topics": [
        "add_source_note"
      ]
    },
    {
      "page": "add_table_subtitle",
      "title": "Add a subtitle attribute to a table",
      "topics": [
        "add_table_subtitle"
      ]
    },
    {
      "page": "add_table_title",
      "title": "Add a title attribute to a table",
      "topics": [
        "add_table_title"
      ]
    },
    {
      "page": "collapse_list",
      "title": "Collapse a list of data frames or tibbles into a single data frame",
      "topics": [
        "collapse_list"
      ]
    },
    {
      "page": "convert_factor",
      "title": "Convert labelled factors to regular factors",
      "topics": [
        "convert_factor"
      ]
    },
    {
      "page": "generate_crosstab",
      "title": "Generate cross-tabulation",
      "topics": [
        "generate_crosstab"
      ]
    },
    {
      "page": "generate_frequency",
      "title": "Generate frequency table",
      "topics": [
        "generate_frequency"
      ]
    },
    {
      "page": "generate_output",
      "title": "Generate output in specified format (e.g., xlsx, html, pdf, word)",
      "topics": [
        "generate_output"
      ]
    },
    {
      "page": "generate_template",
      "title": "Generate a template",
      "topics": [
        "generate_template"
      ]
    },
    {
      "page": "get_tsg_facade",
      "title": "Get a facade from the package or a file",
      "topics": [
        "get_tsg_facade"
      ]
    },
    {
      "page": "person_record",
      "title": "Sample dataset of persons",
      "topics": [
        "person_record"
      ]
    },
    {
      "page": "remove_label",
      "title": "Remove data labels",
      "topics": [
        "remove_label"
      ]
    },
    {
      "page": "remove_labels",
      "title": "Remove all labels",
      "topics": [
        "remove_labels"
      ]
    },
    {
      "page": "rename_label",
      "title": "Rename data labels",
      "topics": [
        "rename_label"
      ]
    },
    {
      "page": "write_docx",
      "title": "Write a tsg table (or list of tables) to a Word (.docx) file",
      "topics": [
        "write_docx"
      ]
    },
    {
      "page": "write_html",
      "title": "Write a tsg table (or list of tables) to an HTML file",
      "topics": [
        "write_html"
      ]
    },
    {
      "page": "write_pdf",
      "title": "Write a tsg table (or list of tables) to a PDF file",
      "topics": [
        "write_pdf"
      ]
    },
    {
      "page": "write_xlsx",
      "title": "Write Data to Excel with Titles, Notes, and Styling",
      "topics": [
        "write_xlsx"
      ]
    }
  ],
  "_readme": "https://github.com/yng-me/tsg/raw/HEAD/README.md",
  "_rundeps": [
    "askpass",
    "base64enc",
    "bigD",
    "bit",
    "bit64",
    "bitops",
    "bslib",
    "cachem",
    "cli",
    "clipr",
    "commonmark",
    "cpp11",
    "crayon",
    "curl",
    "data.table",
    "digest",
    "dplyr",
    "evaluate",
    "farver",
    "fastmap",
    "flextable",
    "fontawesome",
    "fontBitstreamVera",
    "fontLiberation",
    "fontquiver",
    "forcats",
    "fs",
    "gdtools",
    "generics",
    "glue",
    "gt",
    "haven",
    "highr",
    "hms",
    "htmltools",
    "htmlwidgets",
    "jquerylib",
    "jsonlite",
    "juicyjuice",
    "knitr",
    "labeling",
    "lifecycle",
    "litedown",
    "magrittr",
    "markdown",
    "memoise",
    "mime",
    "officer",
    "openssl",
    "openxlsx",
    "pillar",
    "pkgconfig",
    "prettyunits",
    "progress",
    "purrr",
    "qpdf",
    "R6",
    "ragg",
    "rappdirs",
    "RColorBrewer",
    "Rcpp",
    "reactable",
    "reactR",
    "readr",
    "rlang",
    "rmarkdown",
    "sass",
    "scales",
    "stringi",
    "stringr",
    "sys",
    "systemfonts",
    "textshaping",
    "tibble",
    "tidyr",
    "tidyselect",
    "tinytex",
    "tzdb",
    "utf8",
    "uuid",
    "V8",
    "vctrs",
    "viridisLite",
    "vroom",
    "withr",
    "xfun",
    "xml2",
    "yaml",
    "zip"
  ],
  "_vignettes": [
    {
      "source": "facade.Rmd",
      "filename": "facade.html",
      "title": "Customizing How Your Tables Look",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Using a built-in style",
        "Tweaking a few settings with add_facade()",
        "Common tweaks",
        "Applying the same tweaks across formats",
        "Making your own style file",
        "Step 1 — generate the template",
        "Step 2 — edit the file",
        "Step 3 — use your style",
        "Programmatic style overrides",
        "Style property reference",
        "Table-level settings (full list)",
        "Colour values",
        "Section names"
      ],
      "created": "2026-05-05 09:30:52",
      "modified": "2026-05-05 09:30:52",
      "commits": 1
    },
    {
      "source": "tsg.Rmd",
      "filename": "tsg.html",
      "title": "Getting Started with tsg",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The sample dataset",
        "Count values in a column",
        "Count several columns at once",
        "Show only the top categories",
        "Control how rows are sorted",
        "Include or exclude missing values",
        "Combine similar columns into one table",
        "Other options",
        "Compare two columns in a grid (cross-tabulation)",
        "Percentages by column instead of by row",
        "Cross-tabulate against several columns at once",
        "Break down results by a group",
        "Save your table to a file",
        "Add a title and notes",
        "Change the look of your table",
        "Save to other formats"
      ],
      "created": "2025-10-22 10:57:37",
      "modified": "2026-05-05 09:30:52",
      "commits": 8
    },
    {
      "source": "advanced.Rmd",
      "filename": "advanced.html",
      "title": "Grouped Tables and Side-by-Side Comparisons",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Get a separate table for each group",
        "Add a grand total to grouped tables",
        "Flat table with total rows inserted",
        "Separate tables with a total entry per level",
        "Change the total label",
        "Compare several Yes/No indicators side by side",
        "Basic usage",
        "Count a different response level",
        "Combining with grouping",
        "Full comparison table with hierarchical columns",
        "Basic stacked table",
        "Custom label separator",
        "Three or more column variables",
        "Export many tables to one Excel file",
        "Basic multi-sheet export",
        "Add an index sheet",
        "Save each table to its own file",
        "End-to-end example",
        "Controlling where footnotes appear",
        "Left and right placement",
        "Linking a footnote to a column header (HTML / PDF)",
        "Chaining multiple footnotes",
        "Tips"
      ],
      "created": "2026-05-05 09:30:52",
      "modified": "2026-05-05 09:30:52",
      "commits": 1
    },
    {
      "source": "output-formats.Rmd",
      "filename": "output-formats.html",
      "title": "Saving and Sharing Your Tables",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Saving to Excel",
        "Basic save",
        "Add a title, subtitle, and notes",
        "More table examples",
        "Frequency table with running totals",
        "Grouped frequency table",
        "Basic cross-tabulation",
        "Cross-tabulation with column percentages",
        "Save multiple tables to one workbook",
        "Save each table to its own file",
        "Add an index sheet to a multi-table workbook",
        "Managing metadata for large reports",
        "Step 1 — Create a template",
        "Step 2 — Fill in the reference data",
        "Step 3 — Export with the reference",
        "Saving to HTML",
        "Multiple tables in one HTML file",
        "Saving to PDF",
        "Saving to Word",
        "Summary"
      ],
      "created": "2026-05-05 09:30:52",
      "modified": "2026-05-05 09:30:52",
      "commits": 1
    }
  ],
  "_score": 5.994792108709093,
  "_indexed": true,
  "_nocasepkg": "tsg",
  "_universes": [
    "yng-me"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.4",
      "date": "2026-05-14T07:54:08.000Z",
      "distro": "noble",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "3508b2a1ddf7ed5b504a55ce9f6e49a4a4c89e40bbae19d92c73c705e0f9c065",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.1.4",
      "date": "2026-05-14T07:54:04.000Z",
      "distro": "noble",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "ddc8e264693b106536e12dd9fe1d9cb21ee4b3407feaa8c4f1f10e4cb97a4394",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.4",
      "date": "2026-05-14T07:53:12.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "746909bf012f0a9a746677c5afdfc21ca8bde99cc84a0be206f3c02cb887615b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.1.4",
      "date": "2026-05-14T07:53:43.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "cd238aebed7e4fe3603b7d7660e9040492dc2c918bccee5b467e62633fe22d15",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.4",
      "date": "2026-05-14T07:52:57.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "090a4997dfaef6bd3e8d4dac187466c4219e6e50e41899ed737c94952e9aac60",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.4",
      "date": "2026-05-14T07:52:54.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "d73212836c12bdd838085bc3aeb877621bd5af190a3c38aca30683a037d84b5f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.1.4",
      "date": "2026-05-14T07:52:50.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "be6742a1db225040f6c9b2a36802704069935b0b765af79f438c485a7eae489b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.4",
      "date": "2026-05-22T09:10:33.000Z",
      "commit": "27d78a62d5cc0f1b5ac091658e9145719777df02",
      "fileid": "4ae76b05508ff2fdee6c960033592b15442574f6336be9c25fa5e1c89b9d57da",
      "status": "success",
      "buildurl": "https://github.com/r-universe/yng-me/actions/runs/25848472118"
    }
  ]
}