{
  "_id": "6aca72ddfe5cc25786e895ee",
  "Package": "tsgc",
  "Title": "Time Series Methods Based on Growth Curves",
  "Version": "2.0.0",
  "Authors@R": "c(person(given = \"Michael\", family = \"Ashby\", role = c(\"aut\",\"cre\"), email = \"mwa22@cam.ac.uk\"),\nperson(given = \"Paul\", family = \"Kattuman\", role = c(\"aut\"), email = \"p.kattuman@jbs.cam.ac.uk\"),\nperson(given = \"Andrew\", family = \"Harvey\", role = c(\"aut\"), email = \"ach34@cam.ac.uk\"),\nperson(given = \"Edwin\", family = \"Tang\", role = c(\"aut\"), email = \"yiu-nam-edwin.tang@warwick.ac.uk\"),\nperson(given = \"Craig\", family = \"Thamotheram\", role = c(\"aut\"), email = \"cpthamotheram@yahoo.co.uk\"),\nperson(given = \"Guglielmo\", family = \"Secchi\", role = c(\"aut\"), email = \"ggas2@cam.ac.uk\"),\nperson(\"Cambridge Centre for Health Leadership & Enterprise, Cambridge Judge Business School, University of Cambridge\",\nrole = \"fnd\"),\nperson(\"UK Health Security Agency\",\nrole = \"fnd\"),\nperson(\"Keynes Fund, Faculty of Economics, University of Cambridge\",\nrole = \"fnd\", comment = \"Supported A. Harvey\"),\nperson(\"University of Cambridge Social Science Impact Fund\",\nrole = \"fnd\", comment = \"Supported P. Kattuman\"),\nperson(\"Cambridge Mathematics Placements Programme, University of Cambridge\",\nrole = \"fnd\", comment = \"Supported E. Tang\"),\nperson(\"Caldecott Bursary Fund, Magdalene College, University of Cambridge\",\nrole = \"fnd\", comment = \"Supported E. Tang\"),\nperson(\"Chancellor's Scholarship Scheme, University of Warwick\",\nrole = \"fnd\", comment = \"Supported E. Tang\"),\nperson(\"Statistics Centre for Doctoral Training, University of Warwick\",\nrole = \"fnd\", comment = \"Supported E. Tang\"))",
  "Description": "Provides tools for modelling and forecasting epidemic\ntrajectories using a dynamic Gompertz model within a state\nspace framework, with the Kalman filter for robust estimation\nof non-linear growth. Includes a reinitialization feature to\nadapt to new waves, and a leading-indicator extension that uses\na related series moving ahead of the variable of interest (e.g.\ncases ahead of hospitalisations) to improve short-horizon\nforecasts, with model and lag selection via rolling-origin\ncross-validation. Applicable to data at daily, monthly,\nquarterly, or annual frequency, and to non-epidemic\ntrajectories with similar dynamics, such as innovation\ndiffusion and product adoption. Includes functions for data\npreprocessing, model fitting, forecast visualization, and\naccuracy evaluation using standard error measures. Methods are\ndescribed in Harvey and Kattuman (2020)\n<doi:10.1162/99608f92.828f40de>, Harvey and Kattuman (2021)\n<doi:10.1098/rsif.2021.0179>, and Ashby, Harvey, Kattuman,\nTang, and Thamotheram (2024)\n<https://www.jbs.cam.ac.uk/wp-content/uploads/2024/03/cchle-tsgc-paper-2024.pdf>.",
  "URL": "https://github.com/edwintang903/tsgc",
  "License": "GPL (>= 3)",
  "Encoding": "UTF-8",
  "VignetteBuilder": "knitr",
  "Roxygen": "list(markdown = TRUE)",
  "Config/testthat/edition": "3",
  "BugReports": "https://github.com/edwintang903/tsgc/issues",
  "LazyData": "true",
  "Config/roxygen2/version": "8.0.0",
  "RoxygenNote": "7.3.3",
  "Config/pak/sysreqs": "cmake libfontconfig1-dev libfreetype6-dev\nlibfribidi-dev make libharfbuzz-dev libicu-dev libpng-dev\nlibuv1-dev libxml2-dev",
  "Repository": "https://edwintang903.r-universe.dev",
  "Date/Publication": "2026-09-01 09:41:52 UTC",
  "RemoteUrl": "https://github.com/edwintang903/tsgc",
  "RemoteRef": "HEAD",
  "RemoteSha": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-10 16:13:31 UTC",
    "User": "root"
  },
  "Author": "Michael Ashby [aut, cre],\nPaul Kattuman [aut],\nAndrew Harvey [aut],\nEdwin Tang [aut],\nCraig Thamotheram [aut],\nGuglielmo Secchi [aut],\nCambridge Centre for Health Leadership & Enterprise, Cambridge Judge\nBusiness School, University of Cambridge [fnd],\nUK Health Security Agency [fnd],\nKeynes Fund, Faculty of Economics, University of Cambridge [fnd]\n(Supported A. Harvey),\nUniversity of Cambridge Social Science Impact Fund [fnd] (Supported P.\nKattuman),\nCambridge Mathematics Placements Programme, University of Cambridge\n[fnd] (Supported E. Tang),\nCaldecott Bursary Fund, Magdalene College, University of Cambridge\n[fnd] (Supported E. Tang),\nChancellor's Scholarship Scheme, University of Warwick [fnd] (Supported\nE. Tang),\nStatistics Centre for Doctoral Training, University of Warwick [fnd]\n(Supported E. Tang)",
  "Maintainer": "Michael Ashby <mwa22@cam.ac.uk>",
  "_user": "edwintang903",
  "_type": "src",
  "_file": "tsgc_2.0.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/41132a08fc817ce14084a39bcadaf2f5f6bf990b3bc8613e0c7be1d19ee498bf",
  "_filesize": 3329830,
  "_sha256": "41132a08fc817ce14084a39bcadaf2f5f6bf990b3bc8613e0c7be1d19ee498bf",
  "_expires": "2027-01-18T17:16:12.000Z",
  "_created": "2026-10-10T16:13:31.000Z",
  "_published": "2026-10-10T17:16:13.715Z",
  "_buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 114256015859,
      "time": 153,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11674879988"
    },
    {
      "job": 114256015914,
      "time": 167,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11674229380"
    },
    {
      "job": 114256015916,
      "time": 242,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11676537618"
    },
    {
      "job": 114256015939,
      "time": 208,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11676931535"
    },
    {
      "job": 114255320299,
      "time": 206,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11675109280"
    },
    {
      "job": 114256015909,
      "time": 108,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11675485067"
    },
    {
      "job": 114256015905,
      "time": 109,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11675525027"
    },
    {
      "job": 114256015913,
      "time": 148,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11675204558"
    },
    {
      "job": 114256015927,
      "time": 166,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11675064756"
    }
  ],
  "_upstream": "https://github.com/edwintang903/tsgc",
  "_commit": {
    "id": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
    "author": "mashby22 <mwa22@cam.ac.uk>",
    "committer": "mashby22 <mwa22@cam.ac.uk>",
    "message": "Update DESCRIPTION\n\nChange of email for Craig\n",
    "time": 1788255712
  },
  "_maintainer": {
    "name": "Michael Ashby",
    "email": "mwa22@cam.ac.uk",
    "login": "mashby22",
    "description": "",
    "uuid": 174328986
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "KFAS",
      "role": "Imports"
    },
    {
      "package": "xts",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "version": ">= 3.5.0",
      "role": "Imports"
    },
    {
      "package": "zoo",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "abind",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "scales",
      "role": "Imports"
    },
    {
      "package": "kableExtra",
      "role": "Imports"
    },
    {
      "package": "ggfortify",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "RColorBrewer",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "ggforce",
      "role": "Suggests"
    },
    {
      "package": "gridExtra",
      "role": "Suggests"
    },
    {
      "package": "latex2exp",
      "role": "Suggests"
    },
    {
      "package": "here",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    },
    {
      "package": "dplyr",
      "role": "Suggests"
    },
    {
      "package": "ggthemes",
      "role": "Suggests"
    }
  ],
  "_owner": "edwintang903",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2025-41",
      "n": 3
    },
    {
      "week": "2025-42",
      "n": 2
    },
    {
      "week": "2025-45",
      "n": 1
    },
    {
      "week": "2025-46",
      "n": 1
    },
    {
      "week": "2025-47",
      "n": 2
    },
    {
      "week": "2025-48",
      "n": 1
    },
    {
      "week": "2025-51",
      "n": 3
    },
    {
      "week": "2025-52",
      "n": 1
    },
    {
      "week": "2026-04",
      "n": 2
    },
    {
      "week": "2026-05",
      "n": 1
    },
    {
      "week": "2026-08",
      "n": 1
    },
    {
      "week": "2026-09",
      "n": 3
    },
    {
      "week": "2026-17",
      "n": 1
    },
    {
      "week": "2026-19",
      "n": 2
    },
    {
      "week": "2026-25",
      "n": 3
    },
    {
      "week": "2026-26",
      "n": 2
    },
    {
      "week": "2026-27",
      "n": 2
    },
    {
      "week": "2026-28",
      "n": 12
    },
    {
      "week": "2026-29",
      "n": 8
    },
    {
      "week": "2026-30",
      "n": 2
    },
    {
      "week": "2026-31",
      "n": 1
    },
    {
      "week": "2026-33",
      "n": 4
    },
    {
      "week": "2026-34",
      "n": 7
    },
    {
      "week": "2026-35",
      "n": 2
    },
    {
      "week": "2026-36",
      "n": 1
    }
  ],
  "_tags": [],
  "_stars": 1,
  "_contributors": [
    {
      "user": "edwintang903",
      "count": 176,
      "uuid": 96174354
    },
    {
      "user": "gugl1elmo",
      "count": 71,
      "uuid": 219501774
    },
    {
      "user": "mashby22",
      "count": 69,
      "uuid": 174328986
    },
    {
      "user": "craig-pt",
      "count": 10,
      "uuid": 5773950
    },
    {
      "user": "djs269",
      "count": 2,
      "uuid": 197661619
    },
    {
      "user": "pkattuman",
      "count": 1,
      "uuid": 73671785
    }
  ],
  "_userbio": {
    "uuid": 96174354,
    "type": "user",
    "name": "Edwin Tang",
    "followers": 0
  },
  "_downloads": {
    "count": 340,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/tsgc"
  },
  "_devurl": "https://github.com/edwintang903/tsgc",
  "_searchresults": 154,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/tsgc.html"
  ],
  "_homeurl": "https://github.com/edwintang903/tsgc",
  "_realowner": "edwintang903",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.0",
      "date": "2024-08-26"
    },
    {
      "version": "2.0.0",
      "date": "2026-09-08"
    }
  ],
  "_exports": [
    "argmax",
    "as_idx_series",
    "cross_val",
    "df2ldl",
    "df2ldl_lead",
    "estimate",
    "estimate_r0",
    "get_timeframe",
    "get_V",
    "idx_axis_opts",
    "idx_calendar",
    "idx_calendar_multi_step",
    "idx_calendar_offset",
    "idx_calendar_step",
    "idx_cbind",
    "idx_diff",
    "idx_lag",
    "idx_ncol",
    "idx_offset_to_pos",
    "idx_positions",
    "idx_range",
    "idx_rbind",
    "idx_series",
    "idx_step",
    "idx_step_add",
    "idx_to_date",
    "idx_to_pos",
    "idx_values",
    "is_idx_calendar",
    "is_idx_series",
    "is_idx_step",
    "is_multi_step_pattern",
    "mapes",
    "modelKFS",
    "multi_step_pattern",
    "NCOL.idx_series",
    "output",
    "plot_compare_forecast",
    "plot_forecast",
    "plot_gy_ci",
    "plot_gy_components",
    "plot_holdout",
    "plot_log_forecast",
    "plot_r0",
    "print_model_diagnostics",
    "reinitialise_dataframe",
    "seasonalComp",
    "SSModelDynamicGompertz",
    "SSModelLeadingIndicator",
    "write_results",
    "xts_to_idx"
  ],
  "_datasets": [
    {
      "name": "england",
      "title": "Daily Covid-19 metrics for England.",
      "object": "england",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "cum_cases",
        "cum_admissions",
        "cum_deaths",
        "hospital_cases"
      ],
      "rows": 733,
      "table": true,
      "tojson": false
    },
    {
      "name": "england_weather_2021",
      "title": "Daily Weather data of England in 2021.",
      "object": "england_weather_2021",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "windspd_mtrs_p_sec",
        "relhum_percnt",
        "temperature_C",
        "max_temp_C",
        "precip_mtrs"
      ],
      "rows": 365,
      "table": true,
      "tojson": false
    },
    {
      "name": "etrading_apps",
      "title": "Monthly downloads of French leading apps from January 2017 to July 2021",
      "object": "etrading_apps",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "Plus500",
        "DEGIRO",
        "AvaTrade",
        "eToro",
        "TradeRepublic"
      ],
      "rows": 55,
      "table": true,
      "tojson": false
    },
    {
      "name": "gauteng",
      "title": "Cumulative daily cases of Covid-19 in the South African province of Gauteng.",
      "object": "gauteng",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "cum_cases"
      ],
      "rows": 667,
      "table": true,
      "tojson": false
    },
    {
      "name": "gauteng_weather_2021",
      "title": "Daily weather data of the South African province of Gauteng in 2021",
      "object": "gauteng_weather_2021",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "windspd_mtrs_p_sec",
        "relhum_percnt",
        "temperature_C",
        "max_temp_C",
        "precip_mtrs"
      ],
      "rows": 365,
      "table": true,
      "tojson": false
    },
    {
      "name": "nintendo_sales",
      "title": "Quarterly Sales of Nintendo consoles from 2004 Q4 to 2024 Q1",
      "object": "nintendo_sales",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "wii",
        "wiiu",
        "switch_all",
        "switch_base",
        "switch_Lite",
        "switch_OLED",
        "3ds",
        "nds"
      ],
      "rows": 78,
      "table": true,
      "tojson": false
    },
    {
      "name": "ukitaly",
      "title": "Cumulative daily cases of Covid-19 in Italy and UK, before 14 Dec 2020.",
      "object": "ukitaly",
      "class": [
        "xts",
        "zoo"
      ],
      "fields": [
        "Italy",
        "UK"
      ],
      "rows": 294,
      "table": true,
      "tojson": false
    }
  ],
  "_help": [
    {
      "page": "sub-.idx_series",
      "title": "Subset an 'idx_series' by position",
      "topics": [
        "[.idx_series"
      ]
    },
    {
      "page": "alphahat",
      "title": "Extract alphahat from a KFS object",
      "topics": [
        "alphahat"
      ]
    },
    {
      "page": "argmax",
      "title": "Return index and value of maximum",
      "topics": [
        "argmax"
      ]
    },
    {
      "page": "as_idx_series",
      "title": "Coerce to 'idx_series'",
      "topics": [
        "as_idx_series"
      ]
    },
    {
      "page": "as.matrix.idx_series",
      "title": "Coerce an 'idx_series' to a matrix",
      "topics": [
        "as.matrix.idx_series"
      ]
    },
    {
      "page": "as.numeric.idx_series",
      "title": "Coerce an 'idx_series' to a plain numeric vector or matrix",
      "topics": [
        "as.double.idx_series",
        "as.numeric.idx_series"
      ]
    },
    {
      "page": "att",
      "title": "Extract filtered state estimates from a KFS object",
      "topics": [
        "att"
      ]
    },
    {
      "page": "cross_val",
      "title": "Walk-Forward Validation for Model Comparison Using Mean Absolute Percentage Error (MAPE)",
      "topics": [
        "cross_val"
      ]
    },
    {
      "page": "df2ldl",
      "title": "Compute log growth rate of cumulated dataset",
      "topics": [
        "df2ldl"
      ]
    },
    {
      "page": "df2ldl_lead",
      "title": "Compute successive increments and log growth rate of 2-variable cumulated dataset",
      "topics": [
        "df2ldl_lead"
      ]
    },
    {
      "page": "england",
      "title": "Daily Covid-19 metrics for England.",
      "topics": [
        "england"
      ]
    },
    {
      "page": "england_weather_2021",
      "title": "Daily Weather data of England in 2021.",
      "topics": [
        "england_weather_2021"
      ]
    },
    {
      "page": "estimate",
      "title": "Estimate an SSModelDynamicGompertz or SSModelLeadingIndicator model",
      "topics": [
        "estimate"
      ]
    },
    {
      "page": "estimate_r0",
      "title": "Estimate the reproduction number from a fitted model",
      "topics": [
        "estimate_r0"
      ]
    },
    {
      "page": "etrading_apps",
      "title": "Monthly downloads of French leading apps from January 2017 to July 2021",
      "topics": [
        "etrading_apps"
      ]
    },
    {
      "page": "FilterResults-class",
      "title": "Class for estimated Dynamic Gompertz Curve model",
      "topics": [
        "FilterResults",
        "FilterResults-class"
      ]
    },
    {
      "page": "FilterResultsLI-class",
      "title": "Class for the estimated Leading Indicator Model",
      "topics": [
        "FilterResultsLI",
        "FilterResultsLI-class"
      ]
    },
    {
      "page": "gauteng",
      "title": "Cumulative daily cases of Covid-19 in the South African province of Gauteng.",
      "topics": [
        "gauteng"
      ]
    },
    {
      "page": "gauteng_weather_2021",
      "title": "Daily weather data of the South African province of Gauteng in 2021",
      "topics": [
        "gauteng_weather_2021"
      ]
    },
    {
      "page": "get_timeframe",
      "title": "Subsetting 'idx_series' objects given start and end positions",
      "topics": [
        "get_timeframe"
      ]
    },
    {
      "page": "get_V",
      "title": "Extract error covariance matrix of smoothed states from a KFS object",
      "topics": [
        "get_V"
      ]
    },
    {
      "page": "gety",
      "title": "Extract time series y from an SSModel object",
      "topics": [
        "gety"
      ]
    },
    {
      "page": "gety.hat",
      "title": "Extract prediction y.hat from predict.all output",
      "topics": [
        "gety.hat"
      ]
    },
    {
      "page": "head.idx_series",
      "title": "First observations of an 'idx_series'",
      "topics": [
        "head.idx_series"
      ]
    },
    {
      "page": "idx_axis_opts",
      "title": "Options controlling how the x-axis of 'idx_series' plots is displayed",
      "topics": [
        "idx_axis_opts"
      ]
    },
    {
      "page": "idx_calendar",
      "title": "Construct an 'idx_calendar'",
      "topics": [
        "idx_calendar"
      ]
    },
    {
      "page": "idx_calendar_multi_step",
      "title": "Construct an 'idx_calendar' from a 'multi_step_pattern'",
      "topics": [
        "idx_calendar_multi_step"
      ]
    },
    {
      "page": "idx_calendar_offset",
      "title": "Cumulative pattern-weighted step offset between two positions",
      "topics": [
        "idx_calendar_offset"
      ]
    },
    {
      "page": "idx_calendar_step",
      "title": "Construct an 'idx_calendar' from a compound 'idx_step'",
      "topics": [
        "idx_calendar_step"
      ]
    },
    {
      "page": "idx_cbind",
      "title": "Combine (column-bind) 'idx_series' objects",
      "topics": [
        "idx_cbind"
      ]
    },
    {
      "page": "idx_diff",
      "title": "Take a lagged difference of an 'idx_series'",
      "topics": [
        "idx_diff"
      ]
    },
    {
      "page": "idx_lag",
      "title": "Lag an 'idx_series'",
      "topics": [
        "idx_lag"
      ]
    },
    {
      "page": "idx_ncol",
      "title": "Number of columns in an 'idx_series'",
      "topics": [
        "idx_ncol"
      ]
    },
    {
      "page": "idx_offset_to_pos",
      "title": "Translate a plain numeric offset to an 'idx_series' integer position",
      "topics": [
        "idx_offset_to_pos"
      ]
    },
    {
      "page": "idx_positions",
      "title": "Integer positions of an 'idx_series'",
      "topics": [
        "idx_positions"
      ]
    },
    {
      "page": "idx_range",
      "title": "Integer position range spanned by an 'idx_series'",
      "topics": [
        "idx_range"
      ]
    },
    {
      "page": "idx_rbind",
      "title": "Bind two 'idx_series' sequentially",
      "topics": [
        "idx_rbind"
      ]
    },
    {
      "page": "idx_series",
      "title": "Index-anchored series",
      "topics": [
        "idx_series"
      ]
    },
    {
      "page": "idx_step",
      "title": "A compound calendar step",
      "topics": [
        "idx_step"
      ]
    },
    {
      "page": "idx_step_add",
      "title": "Apply an 'idx_step' to an anchor date, scaled by a step count",
      "topics": [
        "idx_step_add"
      ]
    },
    {
      "page": "idx_to_date",
      "title": "Translate 'idx_series' positions to calendar time",
      "topics": [
        "idx_to_date"
      ]
    },
    {
      "page": "idx_to_pos",
      "title": "Translate a calendar date to an 'idx_series' integer position",
      "topics": [
        "idx_to_pos"
      ]
    },
    {
      "page": "idx_values",
      "title": "Explicit numeric extraction for 'idx_series'",
      "topics": [
        "idx_values"
      ]
    },
    {
      "page": "is_idx_calendar",
      "title": "Test whether an object is an 'idx_calendar'",
      "topics": [
        "is_idx_calendar"
      ]
    },
    {
      "page": "is_idx_series",
      "title": "Test whether an object is an 'idx_series'",
      "topics": [
        "is_idx_series"
      ]
    },
    {
      "page": "is_idx_step",
      "title": "Test whether an object is an 'idx_step'",
      "topics": [
        "is_idx_step"
      ]
    },
    {
      "page": "is_multi_step_pattern",
      "title": "Test whether an object is a 'multi_step_pattern'",
      "topics": [
        "is_multi_step_pattern"
      ]
    },
    {
      "page": "length.idx_series",
      "title": "Number of observations in an 'idx_series'",
      "topics": [
        "length.idx_series"
      ]
    },
    {
      "page": "mapes",
      "title": "Compute Mean Absolute Percentage Error (MAPE) for Forecasts Against a Holdout Sample",
      "topics": [
        "mapes"
      ]
    },
    {
      "page": "matrixKFS",
      "title": "Extract matrices of the observation, state, and disturbance equations from a KFS object",
      "topics": [
        "matrixKFS"
      ]
    },
    {
      "page": "modelKFS",
      "title": "Extract SSModel object within a KFS object",
      "topics": [
        "modelKFS"
      ]
    },
    {
      "page": "multi_step_pattern",
      "title": "A repeating cycle of distinct 'idx_step's",
      "topics": [
        "multi_step_pattern"
      ]
    },
    {
      "page": "NCOL.idx_series",
      "title": "Number of columns in an 'idx_series' ('NCOL' method)",
      "topics": [
        "NCOL.idx_series"
      ]
    },
    {
      "page": "nintendo_sales",
      "title": "Quarterly Sales of Nintendo consoles from 2004 Q4 to 2024 Q1",
      "topics": [
        "nintendo_sales"
      ]
    },
    {
      "page": "output",
      "title": "Extract output of FilterResults or FilterResultsLI",
      "topics": [
        "output"
      ]
    },
    {
      "page": "plot_compare_forecast",
      "title": "Forecast comparison plot",
      "topics": [
        "plot_compare_forecast"
      ]
    },
    {
      "page": "plot_forecast",
      "title": "Plots the forecast of new cases (the difference of the cumulated variable)",
      "topics": [
        "plot_forecast"
      ]
    },
    {
      "page": "plot_gy_ci",
      "title": "Plots the growth rate of the cumulative variable with confidence intervals",
      "topics": [
        "plot_gy_ci"
      ]
    },
    {
      "page": "plot_gy_components",
      "title": "Plots the growth rate, level and slope of the log cumulative growth rate",
      "topics": [
        "plot_gy_components"
      ]
    },
    {
      "page": "plot_holdout",
      "title": "Plots the forecast of new cases over a holdout sample",
      "topics": [
        "plot_holdout"
      ]
    },
    {
      "page": "plot_log_forecast",
      "title": "Plots forecast and realised values of the log cumulative growth rate",
      "topics": [
        "plot_log_forecast"
      ]
    },
    {
      "page": "plot_r0",
      "title": "Plot the estimated reproduction number R_t",
      "topics": [
        "plot_r0"
      ]
    },
    {
      "page": "plot.SSModelDynamicGompertz",
      "title": "Plot the cumulated dataset underlying a fitted Gompertz model",
      "topics": [
        "plot.SSModelDynamicGompertz"
      ]
    },
    {
      "page": "plot.SSModelLeadingIndicator",
      "title": "Plot the leading indicator and target variable underlying a fitted Leading Indicator model",
      "topics": [
        "plot.SSModelLeadingIndicator"
      ]
    },
    {
      "page": "print_model_diagnostics",
      "title": "Report fitted diagnostics for a FilterResults/FilterResultsLI object",
      "topics": [
        "print_model_diagnostics"
      ]
    },
    {
      "page": "print.FilterResults",
      "title": "Calling print method for FilterResults class",
      "topics": [
        "print.FilterResults"
      ]
    },
    {
      "page": "print.FilterResultsLI",
      "title": "Calling print method for FilterResultsLI class",
      "topics": [
        "print.FilterResultsLI"
      ]
    },
    {
      "page": "print.idx_calendar",
      "title": "Print an 'idx_calendar'",
      "topics": [
        "print.idx_calendar"
      ]
    },
    {
      "page": "print.idx_series",
      "title": "Print an 'idx_series'",
      "topics": [
        "print.idx_series"
      ]
    },
    {
      "page": "print.idx_step",
      "title": "Print an 'idx_step'",
      "topics": [
        "print.idx_step"
      ]
    },
    {
      "page": "print.multi_step_pattern",
      "title": "Print a 'multi_step_pattern'",
      "topics": [
        "print.multi_step_pattern"
      ]
    },
    {
      "page": "print.SSModelDynamicGompertz",
      "title": "Calling print method for SSModelDynamicGompertz class",
      "topics": [
        "print.SSModelDynamicGompertz"
      ]
    },
    {
      "page": "print.SSModelLeadingIndicator",
      "title": "Calling print method for classes in tsgc",
      "topics": [
        "print.SSModelLeadingIndicator"
      ]
    },
    {
      "page": "Ptt",
      "title": "Extract error covariance matrix of filtered states from a KFS object",
      "topics": [
        "Ptt"
      ]
    },
    {
      "page": "reinitialise_dataframe",
      "title": "Reinitialise a series at a given position",
      "topics": [
        "reinitialise_dataframe"
      ]
    },
    {
      "page": "seasonalComp",
      "title": "Extract number of seasonal components used in a KFS object",
      "topics": [
        "seasonalComp"
      ]
    },
    {
      "page": "SSModelDynamicGompertz-class",
      "title": "Class for designing a Dynamic Gompertz Curve State-Space Model",
      "topics": [
        "SSModelDynamicGompertz",
        "SSModelDynamicGompertz-class"
      ]
    },
    {
      "page": "SSModelLeadingIndicator-class",
      "title": "Class for designing a Leading Indicator Model",
      "topics": [
        "SSModelLeadingIndicator",
        "SSModelLeadingIndicator-class"
      ]
    },
    {
      "page": "summary.FilterResults",
      "title": "Calling summary method for FilterResults",
      "topics": [
        "summary.FilterResults"
      ]
    },
    {
      "page": "summary.FilterResultsLI",
      "title": "Calling summary method for FilterResultsLI",
      "topics": [
        "summary.FilterResultsLI"
      ]
    },
    {
      "page": "summary.SSModelDynamicGompertz",
      "title": "Calling summary method for SSModelDynamicGompertz class",
      "topics": [
        "summary.SSModelDynamicGompertz"
      ]
    },
    {
      "page": "summary.SSModelLeadingIndicator",
      "title": "Calling summary method for classes in tsgc",
      "topics": [
        "summary.SSModelLeadingIndicator"
      ]
    },
    {
      "page": "tail.idx_series",
      "title": "Last observations of an 'idx_series'",
      "topics": [
        "tail.idx_series"
      ]
    },
    {
      "page": "ukitaly",
      "title": "Cumulative daily cases of Covid-19 in Italy and UK, before 14 Dec 2020.",
      "topics": [
        "ukitaly"
      ]
    },
    {
      "page": "write_results",
      "title": "Write a selection of relevant results to disk",
      "topics": [
        "write_results"
      ]
    },
    {
      "page": "xts_to_idx",
      "title": "Convert an 'xts'/'zoo' object to an 'idx_series'",
      "topics": [
        "xts_to_idx"
      ]
    }
  ],
  "_readme": "https://github.com/edwintang903/tsgc/raw/HEAD/README.md",
  "_rundeps": [
    "abind",
    "base64enc",
    "bslib",
    "cachem",
    "cli",
    "cpp11",
    "digest",
    "dplyr",
    "evaluate",
    "farver",
    "fastmap",
    "fontawesome",
    "fs",
    "generics",
    "ggplot2",
    "glue",
    "gtable",
    "highr",
    "htmltools",
    "isoband",
    "jquerylib",
    "jsonlite",
    "kableExtra",
    "KFAS",
    "knitr",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "memoise",
    "mime",
    "pillar",
    "pkgconfig",
    "purrr",
    "R6",
    "rappdirs",
    "RColorBrewer",
    "rlang",
    "rmarkdown",
    "rstudioapi",
    "S7",
    "sass",
    "scales",
    "stringi",
    "stringr",
    "svglite",
    "systemfonts",
    "textshaping",
    "tibble",
    "tidyr",
    "tidyselect",
    "tinytex",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr",
    "xfun",
    "xml2",
    "xts",
    "yaml",
    "zoo"
  ],
  "_vignettes": [
    {
      "source": "tsgc_vignette.Rmd",
      "filename": "tsgc_vignette.html",
      "title": "Forecasting epidemic trajectories: Time Series Growth Curves package tsgc",
      "author": "Michael Ashby, Andrew Harvey, Paul Kattuman, Edwin Tang, Guglielmo Secchi, Craig Thamotheram",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "Theory",
        "Gompertz curve",
        "Dynamic Gompertz model",
        "State space form and estimation",
        "Forecasts and peak prediction",
        "Reproduction Number $R_t$",
        "Reinitialization",
        "Reinitializing the data series",
        "Reinitializing the model",
        "Functionality of tsgc",
        "Leading indicator model",
        "Forecast accuracy and rolling-origin validation",
        "Illustration of the tsgc package",
        "Setting up the forecasting exercise",
        "Estimation",
        "Model diagnostics",
        "Results",
        "Triggering reinitialization",
        "Estimating the reinitialized model",
        "Leading indicator model: England cases and hospitalisations",
        "Adding regressors and future covariate paths",
        "Comparing the dynamic Gompertz and leading-indicator models",
        "Selecting the lag by rolling cross-validation",
        "Extensions: non-epidemiological applications and alternative data frequencies",
        "Conclusions",
        "Acknowledgements",
        "References",
        "Appendix: Incorporating seasonal terms into the state space model",
        "Appendix: How to import data from CSV file",
        "Appendix: Controlling the plot x-axis with idx_axis_opts()",
        "mode = \"date\" (the default here, since gauteng_cal$posixct = TRUE)",
        "mode = \"position\"",
        "mode = \"steps\"",
        "mode = \"time_since\"",
        "Adding an info box",
        "Appendix: Compound calendar steps with idx_step() and idx_calendar_step()",
        "Appendix: Heterogeneous repeating cycles with multi_step_pattern() and idx_calendar_multi_step()",
        "Appendix: Non-calendar idx_calendar anchors and idx_offset_to_pos()"
      ],
      "created": "2024-02-27 13:16:53",
      "modified": "2026-08-13 22:15:14",
      "commits": 26
    }
  ],
  "_score": 6.9834007381805385,
  "_indexed": true,
  "_nocasepkg": "tsgc",
  "_universes": [
    "edwintang903",
    "mashby22"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "2.0.0",
      "date": "2026-10-10T16:15:40.000Z",
      "distro": "resolute",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/f56b5ccd04e337f17738edd07113ad046f83475e98394dd590d6cb0997b54add",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "2.0.0",
      "date": "2026-10-10T16:15:33.000Z",
      "distro": "resolute",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/fbf161c0628496dc205e6f51734978f0198cf86b05bb5001b505a0dbf7cb3578",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "2.0.0",
      "date": "2026-10-10T17:14:05.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/29e75821c91ddc4b78baa23e37022be84fe586a50f4f79dfc3a36703e844e5a3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "2.0.0",
      "date": "2026-10-10T17:13:49.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/79601b3f0ee2bb69119dc91bfd9a91693eae11ac166427aa022eeca55d5543cd",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "2.0.0",
      "date": "2026-10-10T16:15:36.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/7d291a90c68fef493ca67d127671c7cbfc8ce64d53b65ba51b49d029a05d274c",
      "status": "success",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "2.0.0",
      "date": "2026-10-10T16:14:36.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/6138b6b483e767cac1667e78441691566309b70556daa12433b7f6bff433a56a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "2.0.0",
      "date": "2026-10-10T16:14:47.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/46aeca92b9ea4c9fcf27e111dd159eaf69a691202d141c0aa67ad1dc33c0d936",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "2.0.0",
      "date": "2026-10-10T16:14:58.000Z",
      "commit": "02b7bbba8a444cac24376bb6c7fd0cfd8ed74e7e",
      "fileid": "https://r2.ropensci.org/89b5cdceffeec271fe2090a482de114c2250389e1869446a121dac70f7c01e1e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/edwintang903/actions/runs/38066549108"
    }
  ]
}