Skip to content

Commit

Permalink
Release fixes (#206)
Browse files Browse the repository at this point in the history
* fixes diagnostics plots in RoBMA
* fix missing value treatment in PEMA
  • Loading branch information
FBartos authored Nov 30, 2023
1 parent 924cbb0 commit c8853b2
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 9 deletions.
10 changes: 6 additions & 4 deletions R/penalizedmetaanalysis.R
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ PenalizedMetaAnalysis <- function(jaspResults, dataset = NULL, options, ...) {

if (.pemaCheckReady(options)) {
# get the data
dataset <- .pemaGetData(dataset, options)
dataset <- .pemaGetData(jaspResults, dataset, options)

# fit the models
.pemaFit(jaspResults, dataset, options)
Expand Down Expand Up @@ -57,7 +57,7 @@ PenalizedMetaAnalysis <- function(jaspResults, dataset = NULL, options, ...) {
.pemaCheckReady <- function(options) {
return(options[["effectSize"]] != "" && options[["effectSizeSe"]] != "" && length(options[["modelTerms"]]) > 0)
}
.pemaGetData <- function(dataset, options) {
.pemaGetData <- function(jaspResults, dataset, options) {

if (!is.null(dataset))
return(dataset)
Expand All @@ -73,8 +73,7 @@ PenalizedMetaAnalysis <- function(jaspResults, dataset = NULL, options, ...) {
factor.variables <- Filter(function(s) s != "", c(factNames, studyLabels, clustNames))

dataset <- .readDataSetToEnd(columns.as.factor = factor.variables,
columns.as.numeric = numeric.variables,
exclude.na.listwise = numeric.variables)
columns.as.numeric = numeric.variables)

# precompute variance
dataset$JASP_computed_variance__ <- dataset[,stderrName]^2
Expand Down Expand Up @@ -328,6 +327,9 @@ PenalizedMetaAnalysis <- function(jaspResults, dataset = NULL, options, ...) {
if (minESS < 100 * options$mcmcChains || is.nan(minESS))
summaryTable$addFootnote(.pemaMessageMinESS(minESS, 100 * options$mcmcChains), symbol = gettext("Warning:"))

if (!is.null(jaspResults[["nOmitted"]]))
summaryTable$addFootnote(gettextf("%1$s observations were ommited due to missing values.", jaspResults[["nOmitted"]]$object))

return()
}
.pemaSummaryTableTau <- function(jaspResults, options) {
Expand Down
17 changes: 12 additions & 5 deletions R/robustbayesianmetaanalysis.R
Original file line number Diff line number Diff line change
Expand Up @@ -1475,9 +1475,15 @@ RobustBayesianMetaAnalysis <- function(jaspResults, dataset, options, state = NU


# create waiting plot
if (!(options[["mcmcDiagnosticsPlotEffect"]] || options[["mcmcDiagnosticsPlotHeterogeneity"]] || options[["mcmcDiagnosticsPlotWeights"]] || options[["mcmcDiagnosticsPlotPet"]] || options[["mcmcDiagnosticsPlotPeese"]]) && (options[["mcmcDiagnosticsPlotTypeTrace"]] || options[["mcmcDiagnosticsPlotTypeAutocorrelation"]] || options[["mcmcDiagnosticsPlotTypePosteriorSamplesDensity"]]) || is.null(jaspResults[["model"]])) {
if (
(!(options[["mcmcDiagnosticsPlotEffect"]] || options[["mcmcDiagnosticsPlotHeterogeneity"]] || options[["mcmcDiagnosticsPlotWeights"]] || options[["mcmcDiagnosticsPlotPet"]] || options[["mcmcDiagnosticsPlotPeese"]]) &&
(options[["mcmcDiagnosticsPlotTypeTrace"]] || options[["mcmcDiagnosticsPlotTypeAutocorrelation"]] || options[["mcmcDiagnosticsPlotTypePosteriorSamplesDensity"]])) ||
((options[["mcmcDiagnosticsPlotEffect"]] || options[["mcmcDiagnosticsPlotHeterogeneity"]] || options[["mcmcDiagnosticsPlotWeights"]] || options[["mcmcDiagnosticsPlotPet"]] || options[["mcmcDiagnosticsPlotPeese"]]) &&
!(options[["mcmcDiagnosticsPlotTypeTrace"]] || options[["mcmcDiagnosticsPlotTypeAutocorrelation"]] || options[["mcmcDiagnosticsPlotTypePosteriorSamplesDensity"]])) ||
is.null(jaspResults[["model"]])) {
tempWait <- createJaspPlot(title = "")
tempWait$dependOn(c("mcmcDiagnosticsPlotEffect", "mcmcDiagnosticsPlotHeterogeneity", "mcmcDiagnosticsPlotWeights", "mcmcDiagnosticsPlotPet", "mcmcDiagnosticsPlotPeese", "mcmcDiagnosticsPlotTypeTrace", "mcmcDiagnosticsPlotTypeAutocorrelation", "mcmcDiagnosticsPlotTypePosteriorSamplesDensity"))
tempWait$dependOn(c("mcmcDiagnosticsPlotEffect", "mcmcDiagnosticsPlotHeterogeneity", "mcmcDiagnosticsPlotWeights", "mcmcDiagnosticsPlotPet", "mcmcDiagnosticsPlotPeese",
"mcmcDiagnosticsPlotTypeTrace", "mcmcDiagnosticsPlotTypeAutocorrelation", "mcmcDiagnosticsPlotTypePosteriorSamplesDensity"))
diagnostics[["tempWait"]] <- tempWait
return()
}
Expand Down Expand Up @@ -1554,8 +1560,8 @@ RobustBayesianMetaAnalysis <- function(jaspResults, dataset, options, state = NU
"mu" = "mcmcDiagnosticsPlotEffect",
"tau" = "mcmcDiagnosticsPlotHeterogeneity",
"omega" = "mcmcDiagnosticsPlotWeights",
"PET" = "diagnosticsPET",
"PEESE" = "diagnosticsPEESE"
"PET" = "mcmcDiagnosticsPlotPet",
"PEESE" = "mcmcDiagnosticsPlotPeese"
))
tempModel[[par]] <- tempPar
} else {
Expand Down Expand Up @@ -1709,7 +1715,8 @@ RobustBayesianMetaAnalysis <- function(jaspResults, dataset, options, state = NU
# show error if only one model is selected but doesn't contain any of the diagnostics
if (noPars && options[["mcmcDiagnosticsPlotSingleModelNumber"]]) {
tempError <- createJaspPlot(title = "")
tempError$dependOn(c("mcmcDiagnosticsPlotEffect", "mcmcDiagnosticsPlotHeterogeneity", "mcmcDiagnosticsPlotWeights", "diagnosticsPET", "diagnosticsPEESE", "mcmcDiagnosticsPlotTypeTrace", "mcmcDiagnosticsPlotTypeAutocorrelation", "mcmcDiagnosticsPlotTypePosteriorSamplesDensity"))
tempError$dependOn(c("mcmcDiagnosticsPlotEffect", "mcmcDiagnosticsPlotHeterogeneity", "mcmcDiagnosticsPlotWeights", "mcmcDiagnosticsPlotPet", "mcmcDiagnosticsPlotPeese",
"mcmcDiagnosticsPlotTypeTrace", "mcmcDiagnosticsPlotTypeAutocorrelation", "mcmcDiagnosticsPlotTypePosteriorSamplesDensity"))
tempError$setError(gettextf("Model %i does not contain any of the selected parameters.", i))
tempModel[["tempError"]] <- tempError
}
Expand Down

0 comments on commit c8853b2

Please sign in to comment.