- Fix:
svyCreateTableOneJS/svyCreateTableOne2now display integer counts (no.0suffix) whenn_original = TRUE. Previously, categorical variable frequencies and the n row were formatted as floats (e.g.,12345.0) even after replacing weighted counts with original data. - Fix:
svyCreateTableOne2now correctly labels the "Overall" column when usingaddOverall = TRUEwithLabels = TRUE. Previously, the "Overall" header was missing, causing column name misalignment. - Fix:
TableSubgroupGLM/TableSubgroupMultiGLMnow fully supportfamily = "quasibinomial"for survey-weighted logistic regression. Previously,"quasibinomial"was not mapped toquasibinomial()forsvyglm, exp() was not applied to coefficients, and the column was not named "OR". - Fix:
TableSubgroupGLM/TableSubgroupMultiGLMnow automatically convert factor outcomes to numeric (0/1) for survey data with binomial/quasibinomial family. Previously, factor outcomes caused"'-' not meaningful for factors"error withsvyglm. - Fix:
count_event_by_glmnow handlesdata.tableinput correctly by converting todata.framebefore column subsetting. Previously,data.tableobjects fromsurvey.design$variablescaused"column name 'required_vars' is not found"error. - Fix: Replaced all
deparse(formula)withdeparse1(formula)inTableSubgroupGLM,TableSubgroupMultiGLM,TableSubgroupCox, andTableSubgroupMultiCoxto suppress"Using formula(x) is deprecated when x is a character vector of length > 1"warnings with long formulas. - Fix:
svyCreateTableOneJS/svyCreateTableOne2now display actual sample sizes in thenrow instead of weighted totals whenn_original = TRUE. Previously, thenrow showed the sum of survey weights (e.g., 181,174,390) instead of the original sample count (e.g., 23,641). Supports no-strata, single-strata, and compound-strata cases.
- Fix:
.displayfunctions (cox2.display,svycox.display,svyregress.display,geeglm.display,lmer.display) now correctly handle models with interaction terms (e.g.,a*bora:b). This prevents dimension dropping or row matching errors during formatting. - New:
glmshow.displaynow correctly preserves theoffsetterm (e.g.,offset(log(n))) when calculating crude estimates. This ensures statistically accurate univariate results for Poisson and other GLM models by maintaining the same exposure baseline.
- Fix:
svyregress.displayno longer errors whenpcut.univariateselects a single variable (prevents dimension dropping). - Fix:
svycox.displaynow preserves matrix dimensions when subsetting to a single selected term withpcut.univariate.
- Fix:
CreateTableOneJSandCreateTableOne2now have correct headers for overall and strata columns.
- Fix:
TableSubgroupCoxandTableSubgroupMultiCoxnow correctly maintain Count and Percent from original data in competing risk analysis - When
data_originalis provided, Count and Percent are calculated from the original data instead of finegray-transformed data - This ensures accurate sample sizes and percentages while cumulative incidence is still calculated using competing risk methods
- Update:
TableSubgroupCoxandTableSubgroupMultiCoxnow support competing risk analysis with proper cumulative incidence calculation - Add
data_originalandformula_originalparameters toTableSubgroupCoxandTableSubgroupMultiCoxfor competing risk analysis - When using finegray-transformed data, users can now provide the original data and formula to calculate true cumulative incidence instead of Kaplan-Meier based event rates
- Cumulative incidence is calculated using
survfit()with factor event variable on the original data
- Fix:
cox2.displaynow properly handles multi-state models automatically without themsmparameter. - Fix: When
event_msmis applied,cox2.displayonly returns the output with the selected variables.
- Fix:
TableSubgroupMultiCoxnow correctly extracts p-values from survey Cox models (svycoxph) by using the last column index instead of hardcoded column 5 - Fix:
cox2.displaynow correctly handlesstrata()terms incoxphmodels
- Fix:
cox2.displaynow properly handles variables with no variation in complete cases during univariate analysis - Fix:
cox2.displaycorrectly filters out NA p-values when usingpcut.univariateoption - Fix:
cox2.displaynow properly handles data.table objects withdata_for_univariateparameter - Fix:
cox2.displayshows adjusted HR properly and also handles clustered coxph model properly. - Fix: When
pcut.univariateis applied,cox2.displaynow correctly shows metrics (N, AIC, C-index, Events) from the selected model with significant variables - Fix: Added missing
@importFrom survival Survfor proper NAMESPACE generation - Fix:
glmshow.displaynow properly handles interaction terms withpcut.univariateoption - Fix:
glmshow.displaycorrectly maintains variable order when selecting significant variables with interaction terms - Fix:
glmshow.displaynow displays proper reference levels for interaction terms with multi-level factors (e.g., "wt:cyl: ref.=4") - Fix:
geeglm.displaynow correctly usesdata_for_univariatewithpcut.univariateto refit model with selected variables only, updating N accordingly - Fix:
lmer.displaynow correctly usesdata_for_univariatewithpcut.univariateto refit model with selected variables only, updating N and other metrics accordingly - Update:
LabeljsTablenow supports interaction terms, applying labels to both main effects and interaction coefficients
- Update: Now in
CreateTableOneJSandsvyCreateTableOneJS, column names are more descriptive when usingpsub = Twithstrata,strata2.
- Update: Add
data_for_univariateincox2.display,geeglm.display,lmer.display, crude p-values in univariate tables are now computed directly from the raw data passed viadata_for_univariate.
- Fix: error in
cox2.displaywhen all status 0 - Update: Add testcode of
cox2.displaywhen all status 0 (isList, column&row name diff check)
- Fix: error in handling
idandweightcolumns from input data in the Cox module.
- Update: Add count_by and event variable to TableSubgroupGLM, TableSubgroupMultiGLM
- Update: Collapse columns when there are more than 3 levels in TalbeSubgroupCox, TableSubgroupMultiCox
- Update: Add pcut.univariate to geeglm.display, coxme.display, cox2.display, glmshow.display, lmer.display, svyglm.display, and svycox.display to allow multivariable analysis only with statistically significant variables.
- Update: Add n_original to svyCreateTableOneJS to display the original sample size (unweighted n) in addition to the weighted sample size.
- Update: Add Anderson-Darling normality test for sample sizes ≥ 5000.
- Fix: error in TableSubgroupMultiGLM when family = "gaussian" and data = data.design with multi-level categorical subgroup variables (3 or more levels)
- Enable TableSubgroupCox to handle with mixed effect model, automatically detects mixed model with formula
- Update: Add C-Index(se) in cox2.display
- Update: Detect mixed model and show corresponding values in 'TableSubgroupGLM', 'TableSubgroupMultiGLM'
- fix: pairwise options in CreateTableOne2, CreateTableOneJS, svyCreateTableOne2, svyCreateTableOneJS
- Update: Add event, count_by option in TableSubgroupCox, TableSubgroupMultiCox
- Update: Add pairwise option in CreateTableOne2, CreateTableOneJS, svyCreateTableOne2, svyCreateTableOneJS
- Update: Add
labeldataoption inTableSubgroupGLM,TableSubgroupMultiGLM,TableSubgroupCox,TableSubgroupMultiCox - Fix:
cox2.displayHR
- Fix: error in
TableSubgroupMultiGLMwhen covariates
- Fix: error in
forestcoxwhen categorical binary outcome - Fix: error in
forestglmwhen categorical covariates
- Update: Add cox2.display available in fine-and-gray(competing risk), Multi-State Model (MSM)
- Update: Add TableSubgroupMultiCox available in fine-and-gray(competing risk)
- Fix: error in
forestcoxandforestglmwith datatype of P value in table
- Fix: error in subgroup option due to non-existent item in
forestcox - Fix: Factor order error in
forestcox
- Fix:
addOveralloptions tosvyCreateTableOneJS - Fix:
TableSubgroupCox
- Update: Add
weightsoption toTableSubgroupCoxandTableSubgroupMultiCoxfor marginal cox model. ex:weights = "weights" - Update: Add
strataoption toTableSubgroupCoxandTableSubgroupMultiCoxfor marginal cox model. ex:strata = "sex" - Fix: error in
TableSubgroupMultiCoxwith cluster
- Fix: Interaction P when 3 or more categorical subgroups in
TableSubgroupCoxandTableSubgroupMultiCox
- Add AIC metric to
cox2.display.
- Update: Add
clusteroption toTableSubgroupCoxandTableSubgroupMultiCoxfor marginal cox model. ex:cluster = "inst"
- Fix: error for multi-category independent variable in
forestcoxandforestglm.
- Fix: error and ref. for interaction terms in
svycoxandsvyglm.
- Fix: error and ref. for interaction terms in
lmer.
- Fix: error about interaction terms in
coxme.
- Fix: ref. for interaction terms in
cox2.
- Fix: ref. for interaction terms in
glmshow.
- Add
normalityTestoption toCreateTableOneJSto perform the Shapiro test for all variables.
- Add family 'poisson', 'quasipoisson' in
glmshow.displayandTableSubgroupMultiGLM - Add data
mort
- Bugfix
TableSubgroupGLM: thanks forweisx2022
- Bugfix
TableSubgroupCox: thanks forciciing
- Fix: confidence interval calculation in
svyglm( thanks forcyk0315)
- Add
addOveralloptions toCreateTableOneJSandsvyCreateTableOneJSto add overall column.
- Bugfix
mk.lev
- Bugfix
LabelepiDisplay: thanks forthisis05
- Bugfix
TableSubgroupCox: thanks forDing-yuan Wan
- Bugfix
coxme.display: thanks forCristina Ganuza Vallejo
- Update:
TableSubgroupGLM&TableSubgroupCoxallow subgroup variable with continuous.
- Update
*.display: univariate analysis withstats::update
- Bugfix
svyCreateTableOneJSin example/test.
- Bugfix
svycox.display
-
Remove dependency with
group_splitfunction (dplyr package) -
Use
survey::regTermTestfor interaction p calculation withsurvey::svycoxph.
- Remove dependency with car packages
- Bugfix
CreateTableOneJS,svyCreateTableOneJS: when with labeldata, variables other than numeric or factor types are excluded.
- Bugfix
TableSubgroupGLM,TableSubgroupMultiGLM: p value
- Add
TableSubgroupGLM,TableSubgroupMultiGLM: subgroup analysis for GLM(gaussian, logistic)
showpmoption withshowAllLevels = Fwhen no strata.
-
TableSubgroupCox: applyextend = Toption tosummary.survfit -
LabelepiDisplay,LabeljsTablewith only 1 independent variable.
CreateTableOneJS,svyCreateTableOneJS: Addshowpmoption to show normal distributed continuous variables as Mean ± SD.
- Bugfix
LabelepiDisplay,LabeljsTable: label error.
- Bugfix
TableSubgroupCox: error with too large time_eventrate
-
Bugfix
TableSubgroupCox: error with factor variable includingNA. -
Update
TableSubgroupCox: compatible with upcoming survival pacakge update.
- Update
svycox.display: compatible with upcoming survival pacakge update.
- Column name fix: Run
CreateTableOneJSwith 2 level strata &psub = F.
-
Additional bug fix: match with survival3.1-x.
-
classissue: https://developer.r-project.org/Blog/public/2019/11/09/when-you-think-class.-think-again/index.html
- Updates & Bug fix: match with survival3.1-x.
- Updates: Non-normal variables can be summarized with [min,max].
- Bug fixes: Additional incorrect P for interaction in
TableSubgroupCox.
- Bug fixes: Incorrect P for interaction in
TableSubgroupCox.
- Bug fixes: Univariate analysis in
geeglm.display.
- Bug fixes: Apply label information to table 1 with strata.
CreateTableOneJSandsvyCreateTableOneJScan get simplified table with showAllLevels = F option.
TableSubgroupMultiCox: Get sub-group analysis table for forestplot with Cox/svycox model.
- Update
CreateTableOneJSandsvyCreateTableOneJSaccording to tableone package(0.10.0).
- Add namespace survival::cluster, survival::frailty to
cox2.display
- Remove 2 packages to Import: DT, epiDisplay.
- Fix typo in DESCRIPTION.
- Fix description text and some examples for cran release.
- Change package Title for cran release.
- Fix some spell for cran release
-
Update travis-ci
-
Add appveyor CI to test window environment
-
Add vignettes
- Add R-squared to
glmshow.display
svyCreateTableOne2,svyCreateTableOneJS,LabelJsTable,LabelepiDisplayandsvyregress.display
coefNAcan be used insvyregress.display
-
svyglmfunction. -
Apply testhat.
-
Auto-selection between Chi-square test and Fisher's exact test in
CreateTableOneJS,CreateTableOne2. -
Table 1 for survey data:
svyCreateTableOne2andsvyCreateTableOneJSare modified functions ofsvyCreateTableOne(tableone package).
-
New function:
coefNA -
Bug fixes: Coefficients in
glmshow.display,cox2.display
- Bug fixes: data.frame & cluster model issue in
cox2.display
- Bug fixes : duplicate variable name -
glmshow.display,cox2.display,geeglm.display,coxme.display
glmshow.display: table fromglm.object.
LabelepiDisplay: column name issue.
svycox.display: table fromsvycoxph.objectin survey package
svyregress.display: table fromsvyglm.objectin survey package
-
Update:
cox2.displayfunction allowsdataargument. -
Remove
jsBasicGadget: Move to jsmodule package.
-
Shiny gadget for descriptive statistics:
jsBasicGadget -
Rstudio Addin of
jsBasicGadget:jsBasicAddin
- Bug fixes:
geeExp,lmerExpfunction
- Bug fixes:
coxExp,cox2.displayfunction
-
Table from
coxph.object(survival package) - allowcluster&frailtyoptions:cox2.displayfunction -
Apply label information to
cox2.display:LabeljsCoxfunction -
Apply label information to
geeglm.display:LabeljsGeeglmfunction
- Bug fixes:
geeglm.displayfunction
-
Apply label information to
epiDisplay.object:LabelepiDisplayfunction -
Apply label information to
lmer.display,coxme.display:LabeljsMixedfunction
- Table from
coxme.object(coxme package):coxme.displayfunction
- Bug fixes: 1 variable case.
- Change default page length option of
opt.tb1from 10 to 25.