Changes in version 2.0.1 (2025-12-18) Update - Generalized all variable names in AI Assistant prompts to use placeholder patterns (_var suffix), making code examples applicable to any dataset instead of being tied to specific example data (e.g., age, sex, time, status, rx). - Added # IMPORTANT: Replace with your actual variable names comments to all code examples in AI prompts to guide users in adapting generated code to their data. - Improved AI Assistant prompt clarity by replacing dataset-specific examples with generic placeholders across all statistical analysis sections. Bugfix - Fixed AI Assistant result handling to properly support mixed result types (tables, plots, and flextables) returned from analysis code. Changes in version 2.0.0 New Features - Introduced the jsmodule AI Assistant, which connects to Anthropic, OpenAI, and Google LLMs so you can generate analyses, scripts, and export-ready visuals without leaving the app. - The assistant automatically leverages context captured in Data Manager, enabling follow-up questions that reference earlier tables or plots. - Prompts never include row-level data, and the execution sandbox blocks dangerous calls, preventing direct data exposure and prompt-injection attacks. Update - Unified AI configuration panel with provider picker, API-key validation, and automatic model discovery for each provider. - Model-aware code generation with integrated editing, execution, and copy-to-clipboard shortcuts plus toast confirmations. - Conversation history with live rendering of user/assistant messages, downloadable transcripts, and per-session token/cost tracking. - Result viewers for tables, plots, and flextables, including export options to PPTX, Word, Excel, and TXT. - Contextual helper actions (error-to-prompt conversion, code summary, save chat) to streamline iterative AI-assisted analysis. Changes in version 1.6.15 (2025-10-10) Refactor - Introduced DataManager R6 class to streamline data loading and preprocessing across Shiny modules, reducing code duplication. Changes in version 1.6.14 Update - Added a checkbox to select the style of p-value: exact number or stars. - Added a optionUI feature in scatter plot including color pallette feat. Bugfix - Fixed an error for the boxplot. Changes in version 1.6.13 (2025-08-20) Update - Added an option to the Kaplan-Meier module to show censored counts in the numbers-at-risk table. When enabled, default label is automatically extended from "Numbers at risk" to "Numbers at risk (number censored)". - Added AUC and Brier Score metrics for time-dependent ROC analysis - Harrell’s C-index now updates dynamically based on the selected analysis time. Bugfix - Fixed an error when selecting factor (categorical) predictors in ROC analysis. - Fixed an error for geeglm caused by unsorted cluster id (now sorted before fitting). Changes in version 1.6.12 Update - refactor ROC time dependent table function (remove for statement) - add new column in ROC time dependent table (CI & p-value difference of AUC & Brier) Bugfix - "survive"" library dependent issue in ROC time dependent feat - remove error message when add new model in ROC time dependent feat - fix remove model button that remain removed label issue in ROC time dependent feat Changes in version 1.6.11 (2025-07-02) - Update: simplified file input functions. - Update: Modified the Fine-Gray module to use the id argument. Changes in version 1.6.10 - Fix: default cut-off value in rocModule and rocModule2 when there is only one independent variable. - Fix: Kaplan-Meier plots now work when "Time by" is below 1. Changes in version 1.6.9 (2025-05-28) Update - Added Brier and AUC calculation to timeroc functionality; fixed bugs. Changes in version 1.6.8 (2025-04-25) Update - New addin: templateGenerator, make your shiny in ease. Changes in version 1.6.7 Update - Independant variable can be selected continuously when there is vec.event and vec.time Changes in version 1.6.6 Update - Modified the jsmodule theme to enhance visual consistency and readability. Changes in version 1.6.5 Update - Added a slider to adjust pcut.univariate, allowing multivariate analysis to be performed only with significant variables. - Select first variable when vec.event and vec.time is NULL in coxph.R. Changes in version 1.6.4 (2025-03-10) Update - Added an option to adjust the line thickness of the Kaplan-Meier plot. Changes in version 1.6.3 (2025-02-19) Update - Added an option to the Kaplan-Meier, Cox, and ForestCox modules that allows the outcome (event) and time variables to be linked when the user specifies vec.event and vec.time. When this option is enabled, selecting an event variable automatically updates the corresponding time variable, and vice versa. Changes in version 1.6.2 Update - Add options to customize x axis ticks in forest plot Changes in version 1.6.1 (2025-01-08) Update - Add function to allow adjusting cutoff for a single independent variable and observing model's metrics in rocModule, rocModule2. - Add option to turn pairwise p value option on in case level of stratified group >= 3, in tb1moduleUI. - Add subgroup analysis for propensity score matching/repeated/survey. Changes in version 1.6.0 (2024-12-11) Update - Add competing risk analysis in subgroup, Kaplan-meier, regression tab. Changes in version 1.5.10 Update: - Change Boxplot fill type Changes in version 1.5.9 (2024-10-17) Bugfix: - sav file load in FilePSInput.R, FileRepeatedInput.R, FileSurveyInput.R Changes in version 1.5.8 (2024-09-20) Update - Add label option on lineplot Changes in version 1.5.7 (2024-08-20) Bugfix: - Fix 2 group factor not working problem in forestcoxServer Changes in version 1.5.6 (2024-07-18) Bugfix: - Fix var_label displaying incorrectly when loading .sav file Changes in version 1.5.5 (2024-06-05) Update - Download table as word document (Thanks for Jinhwan Kim) Changes in version 1.5.4 (2024-05-07) Update - Apply SPSS label info (Thanks for Jinhwan Kim) Changes in version 1.5.3 (2024-04-15) Bugfix: - dropdown button & p value options: barplot, boxplot and lineplot Changes in version 1.5.2 (2024-03-27) Update: - Add P value option to barplot, boxplot and lineplot - Add dropdown button for graphical option to barplot, boxplot and lineplot Changes in version 1.5.1 (2024-03-07) Update: - Add Subgroupanalysis to jsBasicGadget - Add figure in subgroup analysis with forestplot - Add family 'poisson' in forestglm - Add "line size" "point size" to lineplot Changes in version 1.5.0 (2024-02-14) New module: - Subgroup analysis with forestplot (Thanks for Yoonkyoung Jeon) - forestcox (forestcoxUI, forestcoxServer) - forestglm (forestglmUI, forestglmServer) Changes in version 1.4.4 (2023-12-07) Update: - Add "reverse y-axis" option to lineplot Changes in version 1.4.3 (2023-10-18) Update - rocModule: Add accucary/ppv/npv with threshold Changes in version 1.4.2 (2023-08-08) Update: - Change default non-normal 2 group comparison test to wilcox.test Changes in version 1.4.1 (2023-04-14) Error fix: jsBasicExtAddin, jsBasicGatget Changes in version 1.4.0 (2023-03-10) Fix : - update deprecated icon (Plot panel) Update : feature applies in jsBasicExtAddin (shiny app) - Add description with callout - Data , Table 1 panel - modified some UI (with style.css) - header color changed - add zarathu & github page in header - table 1's significant data changed - Data's table column has color (when vairable is category) - update DT function (Data) - Column visiblity button added - Column Reorder feature added - may browse table with keyboard (arrow keys) Refactor: - csvfileInput.R Not use file's extension not name. (csv.txt will nor work) - ggpairs.R apply theme with less if-else Changes in version 1.3.6 (2023-02-06) Fix: - kaplanModule PPT download Changes in version 1.3.5 Fix: - rocModule - Change jsRepeatedGadjet to jsRepeatedGadget Changes in version 1.3.4 (2022-12-15) Fix and Update: rocModule - cutoff fix: rocModule - Add "Show 1-specificity" option Changes in version 1.3.3 (2022-10-18) New module (Thanks for Changwoo Lim) - Histogram(histogramUI, histogramServer) Changes in version 1.3.2 (2022-09-12) Update - Add cutoff information to timerocModule, rocModule when 1 model, 1 indpendent variable. Fix - timerocModule: Invert plot when auc < 0.5 Changes in version 1.3.1 (2022-08-08) Fix - Fix cutoff label of Kaplan-meier plot when continuous independent variable Changes in version 1.3.0 (2022-01-06) New module (Thanks for Hyunki Lee) - Boxplot(boxUI, boxServer), Lineplot(LineUI, LineServer), Barplot(BarUI, BarServer) Changes in version 1.2.0 (2021-10-11) Update - Add coxph ties option to coxModule: ties.coxph Bugfix - kaplanModule runs even if timeby = 1 Changes in version 1.1.9 (2021-09-23) Update - Faster timerocModule: Change AUC/AUC difference 95%CI calculation method to survival::concordance Changes in version 1.1.8 (2021-08-09) Update - Change emf to pptx(editable) in figure download. Changes in version 1.1.7 (2021-03-13) Bug fix - Label info in subgroup analysis: regression, cox Changes in version 1.1.6 (2021-02-15) Fix & update - New module scatterplotUI & scatterplotServer: scatterplot using ggpubr: apply to Basic statistics - timerocModule, rocModule: Compare ROC curve even if there are different sample size(na omit) - Change timeby unit from 1 to 0.5 (when <365) - Add surv.scale option to kaplan-meier plot - Fix PS matching error with missing values Changes in version 1.1.5 (2021-01-17) Fix - Fix according to MatchIt 4.0 update. - Erratum: Cumulative hazard -> Cumulative incidence Changes in version 1.1.4 (2020-12-01) Update - Show survival probabilities(%) at kaplan-meier plot. This requires jskm 0.4.2 or higher. Changes in version 1.1.3 (2020-11-06) Update - Choose time ranges: coxUI, coxModule. Changes in version 1.1.2 (2020-10-12) Update - Add No initial covariate option when ps calculation Changes in version 1.1.1 (2020-08-28) Update - Add landmark analysis to kaplan-meier analysis. Pease update jskm to 0.4.0 version. - Add option hide 95%CI of AUC, NRIIDI to timerocModule. It reduces computation time. Changes in version 1.1.0 (2020-07-09) - Apply AIC based stepwise selection to linear/logistic regression, cox model. - Deprecated fucntion: regressModule & logisticModule, please use regressModule2 & logisticModule2 Changes in version 1.0.8 (2020-06-04) - Add option to tb1module1 ,tb1module2: get simulated p value in Fisher exact test when larger than 2 by 2 tables. Changes in version 1.0.7 (2020-04-29) Dependency - Add dependency: Cairo package Changes in version 1.0.6 (2020-03-14) Bug fix - PS matching: Duplicated independent variables UI in ROC/timeROC analysis. Update - Change minimum timeby in kaplan-meier plot: 1 to 0 Changes in version 1.0.5 (2020-02-17) Update - PS matching: Change font size & color of the message with missing value information. Changes in version 1.0.4 (2019-12-02) Bug fixes - Cox model of Basic statistics module. Changes in version 1.0.3 Bug fixes - Incorrect p-value when applying cluster options. - PS matching: allow continuous variables as Independent variables Update - PS matching: allow 1:N matching. Changes in version 1.0.2 (2019-11-03) - Update: Stop running ShinyApps by closing the browser window. Changes in version 1.0.1 (2019-09-22) Update - Change reference of categorical variables - Add line type option to kaplan-meier plot Bug fixes - Reactive error in propensity score matching. Changes in version 1.0.0 (2019-08-19) Update - Change UI: ROC/time-dependent ROC analysis. - Choose cut-off value in kaplan-meier analysis with continuous independent variable. - Add some icons. - Choose multiple conditions when subsetting data. - Add caliper option when propensity score matching. - Make binary variables from contiuous variables. - Non-normal variables can be summarized with [min,max]. - Add line color, x-axis label option to kaplan-meier plot Bug fixes - Encoding error when csv file upload. Changes in version 0.9.9 (2019-07-14) New addins - Basic statistics with external file: jsBasicExtAddin - Propensity score analysis with external file: jsPropensityExtAddin - Repeated measure analysis with external file: jsRepeatedExtAddin - Survey data analysis with external file: jsSurveyExtAddin Bug fixes - Regression/Logistic model in jsSurveyAddin. - Id issue in repeated measure analysis. Changes in version 0.9.3 Update: Propensity score analysis - Add scatterplot, ROC/time-dependent ROC analysis. Bug fixes: repeated measure analysis - Error if repeated measure variable is id. - Error if there are missing values. Bug fixes: survey data analysis - Error in ROC analysis Bug fixes: Table 1 - data.frame vs data.table issue. Changes in version 0.9.2 (2019-06-18) - Bug fixes: Apply nested survey design to jsSurveyGadget and FileSurveyInput Changes in version 0.9.1 (2019-06-10) Bug fixes - Encoding issues when reading sav/sas7bdat/dta formats. - Default independent variables when running regression/logistic/cox analysis Update - Add limit.unires option to regression/logistic/cox analysis to prevent computation burden. Changes in version 0.9.0 (2019-06-07) New module - Shiny module forROC analysis : rocUI rocModule. - Add this module to jsBasicGadget and jsRepeatedGadjet. Update - Apply time-dependent ROC to survey data analysis(jsSurveyGadget) Changes in version 0.8.6 Update - Change candidate time variables in survival analysis : allow only > 0 - Add option to change legend, p-value position in kaplan-meier plot Bug fixes - Time-dependent ROC analysis can allow 1 model. Changes in version 0.8.5 (2019-06-05) - Keep original variable's name in tables/figures Changes in version 0.8.4 (2019-05-30) - Change default step of x-axis range. Changes in version 0.8.3 (2019-05-11) - Bug fix: time-dependent ROC analysis. Changes in version 0.8.2.1 - Bug fix: emf format can recognize figure's line. Changes in version 0.8.2 (2019-05-11) - Add emf format to the plot download modules. You can customize the plot in MS powerpoint. Changes in version 0.8.1 (2019-04-19) - Change default time when time-dependent ROC analysis. Changes in version 0.8.0 (2019-04-07) New module - Shiny module for time-dependent ROC analysis : timerocUI timerocModule. - Add this module to jsBasicGadget and jsRepeatedGadjet. Changes in version 0.7.10 (2019-03-08) - Add Kaplan-meier plot options: timeby, x/y-axis ranges. Changes in version 0.7.9 Update - Add progress bar to download handlers of scatterplot and kaplan-meier plot. - Kaplan-meier plot in Basic statistics can use continuous variables as group variables. The module suggest best 5 cuts based on the p-values of logrank test. - Add number at risk table option to weighted kalan-meier plot. Bug fixes - Add namespace survival::cluster for marginal cox model. Changes in version 0.7.8 Update - Add sub-group analysis based on the range of continuous variable. - Add multiple factor choice option when doing sub-group analysis based on categorical variable. Changes in version 0.7.7 - Fix NOTE and examples for cran upload Changes in version 0.7.6 - You can get Subset data based on the range of continuous variables. Changes in version 0.7.5 Update - Add Subset data feature to all Addins and input modules. You can select subset data before analysis. Bug fixes - Fix warn variable error in regressModule, logisticModule. - Fix list of except variables in ggpairsModule. Changes in version 0.6.9 Bug fixes - Fix some spell for cran release. Update - Update travis-ci. - Add appveyor CI to test window environment. Changes in version 0.6.8 Update - Warning if there are stongly correlated independent variables in regressModule, jsBasicGadget. Changes in version 0.6.7 Update - Show unweighted & weighted table 1 at same tab in jsSurveyGadget Bug fixes - Initial cluster variable state in jsSurveyGadget Changes in version 0.6.6 Update - Add unweighted table 1 to jsSurveyGadget Bug fixes - Apply list tye independent variables to regressModule, logisticModule, GEEModuleLinear and GEEModuleLogistic - Change sub-group analysis's reactive methods: regressModule, logisticModule, GEEModuleLinear and GEEModuleLogistic Changes in version 0.6.5 Update - Add marginal cox model option to coxModule, kaplanModule and jsRepeatedGadget - Add Overall kaplan-meier plot to kaplanModule - Set default cluster, strata and weights to None in jsSurveyGadget, FileSurveyInput Bug fixes - Some error comments in coxModule and kaplanModule - Change default candidate dependent variables to categorical variables with 0, 1 in GEEModuleLogistic, jsRepeatedGadget Changes in version 0.6.4 New module - Module for Survival analysis: coxUI, coxModule, kaplanUI and kaplanModule - Module for ggplot download UI: ggplotdownUI Update - Add survival analysis to jsBasicGadget, jsSurveyGadget Bug fixes - jsPropensityGadget Changes in version 0.6.2 - Bug fixes : Label information in regressModule, logisticModule - Update: default.unires option to regressModule, logisticModule Changes in version 0.6.1 - Update : Apply complex survey design to FileSurvey, regressModule, logisticModule and jsSurveyGadget Changes in version 0.6.0 New Gadget - Shiny Gadget for survey data analysis: jsSurveyGadget New module - Module for survey data analysis: FileSurvey Update - Survey analysis option to regressModule, logisticModule and tb1 Changes in version 0.5.7 - Bug fixes: sub-group option in regressModule, logisticModule, jsPropensityGadget, GEEModuleLinear and GEEModuleLogistic Changes in version 0.5.6 - Add testthat. Changes in version 0.5.5 New module - Modules for repeated measure analysis: FileRepeated, GEEModuleUI, GEEModuleLinear and GEEModuleLogistic New Gadget - Shiny Gadget for repeated measure analysis: jsRepeatedGadget Changes in version 0.5.3 Update - New option: nfactor.limit in regressModule, logisticModule, jsBasicGadget, csvFileInput and FilePsInput Bug fixes - regressModule, logisticModule, jsPropensityGadget can deal missing data issue. - csvFileInput, FilePSInput change variable class integer64 to double. Changes in version 0.5.2 - Update: Upload Stata .dta format. Changes in version 0.5.1 - Modify tb1module, tb1module2, tb1simple ,tb1simple2: compatible with updated jstable Changes in version 0.5.0 Update - Add sub-group analysis to regressModule, logisticModule and jsPropensityGadget. - Apply the updated cox2.display function in jstable package to jsPropensityGadget. Typo - Strata variable in ggpairsModule, ggpairsModule2. Changes in version 0.4.9 Bug fixes - IPTW table in tb1simple and tb1simple2 modules. - Kaplan-meier UI in jsPropensityGadget Changes in version 0.4.8 - tb1module and tb1module2 can control the maximum factor levels to include. Changes in version 0.4.6 - Bug fixes : Modules for regression exclude NA when selecting binary variables. Changes in version 0.4.5 - Update : csvFile module can remove empty columns. Changes in version 0.4.4 - Change regression table function to glmshow.display in jstable package. Changes in version 0.4.3 New gadget - jsPropensityGadget : Propensity score analysis Update - Excluded non-normal variable selection feature from tb1simple module. - Apply original variable names to label information : csvFileInput & FilePsInput functions. Changes in version 0.4.0 New module - tb1simpleUI, tb1simple, tb1simple2 for propensity score analysis Changes in version 0.3.7 Bug fixes - factor variable criteria in csvInput, tb1module and tb1module2 Changes in version 0.3.6 New module - FilePsInput, FilePs are modules of data input for propensity score calculation. Minor update - Change default data.table & fread check.names option to TRUE Changes in version 0.3.5 New gadget - jsBasicGadget : Basic statistics Minor update - csvFile changes variable name including / to _ and etc. Bug fixes - Dependency issue with jstable package Changes in version 0.3.1 Minor update - Support sav/sas7bdat formats Bug fixes: - tbmoduleUI, tbmoduleUI2 : some error Changes in version 0.3.0 Bug fixes: - tbmoduleUI, tbmoduleUI2 : Apply shapiro.test New module - regressModuleUI, regressModule, regressModule2 - logisticModuleUI, logisticModule, logisticModule2 - ggpairsModuleUI1, ggpairsModuleUI2, ggpairsModule New function - regress.display2, logistic.display2 : Regression table for reactive data. Changes in version 0.2.5 Update - csvFile : Add n_ to column names that begin with a number. New module - tb1moduleUI2 can deal reactive data Changes in version 0.2.0 - New module: tb1moduleUI, tb1module Changes in version 0.1.0 - Update: csvFile can deal label information Changes in version 0.0.1 - File upload: csvFileInput, csvFile