.
Table of content:
- About aides
- Features
- Dependencies & installation - Flow and functions
- Examples
- Coding conventions
- License
- To do list
About aides
aides is an R package which is planned to support users to do additional analysis or graphics of evidence synthesis. Essentially, package aides serves as an aiding toolkit for pooled analysis of aggregated data, crafted with a vision to support a more inclusive and informed approach to evidence-based decision-making; and it is developed with values of flexibility, ease of use, and comprehensibility. Package aides will be updated with advances of methodology of data synthesis and evidence evaluation.
The initial goals of package aides are to simplify analysis process for both professionals and public users, and to support them in navigating the complexities of synthesized evidence. Long-term goals of package aides are to support knowledge translation and decision-making based on the obtained information with comprehensive understanding of the evidence.
Features
Briefly, aides currently consists of three tasks as follows:
Disparity: a newly proposed assumption regarding disparities in sample size analysis.
Discordance: a newly proposed assumption regarding discordance in rank of study size analysis.
Sequential analysis: a method to examine the sufficiency of information size.
Dependencies and installation
Package aides depends on various packages, and is developed using R (version 4.2.2). Therefore, those packages are concurrently installed with package aides. The dependencies are listed as follows:
boot (note: package aides is developed using boot version 1.3-28)
metafor (note: package aides is developed using metafor version 4.4-0)
meta (note: package aides is developed using meta version 7.0-0)
Formal released package aides can be installed from CRAN via R with following syntax:
install.packages("aides")Flow and functions
Users can import their data and do relevant tests or graphics using functions in package aides. The present package consists of seven functions listed as follows.
Disparity:
PlotDistrSS(),TestDisparity(), andPlotDisparity().Discordance:
TestDiscordance().Sequential analysis:
DoSA().DoOSA(),PlotOSA(), andPlotPower().
Disparity:
Step 1. Build or load data.
Step 2. Do disparity test using function
TestDisparity().Optional Illustrate user-defined disparity plot using function
PlotDisparity().
Discordance:
Step 1. Build or load data.
Step 2. Do discordance test using function
TestDiscordance().
Sequential analysis:
Step 1. Build or load data.
Step 2. Do sequential analysis using function
DoSA()or functionDoOSA().Step 3. Illustrate user-defined observed sequential analysis plot using function
PlotOSA().
Examples
1. Disparity test
The following syntax demonstrates how user can carry out disparity test (example of the study by Olkin 1995 in package meta).
Test assumption of discordance in study size
output <- output <- TestDisparity(n = n,
data = dataOlkin1995,
study = author,
time = year)Then, the returns are listed as follows:
#> Summary of disparities in sample size test:
#> Number of outliers = 13 (Excessive cases = 36509; P-value < 0.001)
#> Variability = 3.658 (P-value < 0.001)
#>
#> Outlier detection method: MAD
#> Variability detection method: CVUsers could simply visualize disparity using argument TRUE for parameter plot in the function TestDisparity(). If users would like to modify the figure more, they can further put output of the function TestDisparity() into function PlotDisparity(). The default of the function PlotDisparity() is to illustrate outlier-based disparity. Variability-based disparity could be generated with argument CV for parameter which in the function PlotDisparity().
2. Discordance test
The following syntax demonstrates how user can carry out discordance test (example of the study by Fleiss 1993 in package meta).
Test assumption of discordance in study size
output <- TestDiscordance(n = n,
se = se,
study = study,
data = data)Then, the returns are listed as follows:
#> Summary of discordance in ranks test:
#> Statistics (Bernoulli exact): 2
#> P-value: 0.423
#> Note: No significant finding in the test of discordance in study size ranks.Users could simply visualize discordance using argument TRUE for parameter plot in the function TestDiscordance().
3. Sequential analysis
The following syntax demonstrates how user can carry out sequential analysis (example of the study by Fleiss 1993 in package meta)
DoSA(Fleiss1993bin,
source = study,
time = year,
r1 = d.asp,
n1 = n.asp,
r2 = d.plac,
n2 = n.plac,
measure = "RR",
PES = 0.1,
RRR = 0.2,
group = c("Aspirin", "Placebo"))Then, the returns are listed as follows:
#> Summary of sequential analysis (main information)
#> Acquired sample size: 28003
#> Required sample size (heterogeneity adjusted): 21344
#> Cumulative z score: -2.035
#> Alpha-spending boundary: 1.711 and -1.711
#> Adjusted confidence interval is not necessary to be performed.
#>
#> Summary of sequential analysis (additional information)
#> 1. Assumed information
#> 1.1. Defined type I error: 0.05
#> 1.2. Defined type II error: 0.2
#> 1.3. Defined power: 0.8
#> 1.4. Presumed effect: 0.025
#> (risks in group 1 and 2 were 9.87315825% (expected) and 12.34144781% respectively; RRR = 0.2)
#> 1.5. Presumed variance: 0.101
#>
#> 2. Meta-analysis
#> 2.1. Setting of the meta-analysis
#> Data were pooled using inverse variance approach in random-effects model with DL method.
#> 2.2. Result of the meta-analysis
#> Log RR: -0.113 (95% CI: -0.222 to -0.004)
#>
#> 3. Adjustment factor
#> The required information size is calculated with adjustment factor based on diversity (D-squared). Relevant parameters are listed as follows.
#> 3.1. Heterogeneity (I-squared): 39.6%
#> 3.2. Diversity (D-squared): 76%
#> 3.3. Adjustement factor: 4.103Users could simply visualize the result of sequential analysis using argument TRUE for parameter plot in the function DoSA().
Coding conventions
There are some rules for version numbering in package aides (June 20, 2023). Basically, version number consists of three integers with a period between them (eg. version 1.0.0).
Updating the first integer refers to package update(s) with new methodological impact.
Changing the second integer refers to package update(s) with new function(s) without new methodological impact.
Updating the third integer refers to formal modification(s) of existed function(s).
This package is mainly written according to Google's R style. For readers, details of naming rules are listed as follows:
.R file is named using lower case with underscore "_" between words (e.g. test_disparity.R).
function is named using verb or verb with noun, and the first character of each word is written in capital letter (e.g.
TestDiscordance()).object is named using noun with the first word in lower case, but the first character of rest words is written using capital letter (e.g.
dataCases).variable is named using noun written in lower case. Words of variable name are separated by "." if a variable name consists of more than two words (e.g.
dataDiSS$w.normality).
Common-used prefix in package aides are listed as follows:
angl...refers angle of text.clr...refers to color.lgc...refers to logic value.szFnt...refers to font size.szLn...refers to line width.szPnt...refers to point size.txt...refers text (string).typLn...refers type of line.typPnt...refers type of point.
License
This package is licensed under the GPL-3 License.
This package is developing by Enoch Kang.
To do list
Task force will keep update package aides for relevant issues.