-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
27 changed files
with
598 additions
and
682 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -15,3 +15,4 @@ inst/Chemotherapy_Book/.RData | |
inst/Chemotherapy_Book/.git | ||
^_pkgdown2\.yml$ | ||
git_notes.md | ||
coding_style.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,118 +1,21 @@ | ||
## DONE | ||
## TODO long term | ||
|
||
* Basic package structure | ||
* More built-in common study designs for EVSI, e.g. binary trial that just informs the odds ratio. | ||
|
||
* EVPPI methods copied in from BCEA/SAVI and tidied up | ||
* Different regression methods and options for effects and costs (e.g. int.ord) | ||
|
||
* A few unit tests added for these | ||
|
||
* Nonparametric regression and importance sampling methods added for EVSI, and rough tests written | ||
## Features that I don't plan to implement myself, but would accept cleanly-written contributions for (see coding_style.md) | ||
|
||
* Study design for EVSI can be specified as an R function to simulate data from it, or as one of the built-in standard designs - currently only have 1-arm or 2 arm trials of a binary outcome. | ||
* Parallel processing for 2 level Monte Carlo, and partial results for convergence checking | ||
|
||
* Chemotherapy model code added to facilitate examples. Note exact format of this code may change as we implement different methods that need access to the decision model function. | ||
|
||
* Standard 2-level Monte Carlo | ||
|
||
|
||
## TODO | ||
|
||
* A test model with more than two decision options | ||
|
||
EVPPI | ||
|
||
* Different regression methods and options for effects and costs | ||
|
||
* INLA: check plots work | ||
|
||
* Test earth gam method more, compare against other methods to suggest advantages, while developing book material. | ||
|
||
* Standard errors for earth. INLA too? | ||
|
||
* Anything to facilitate algebraic methods? | ||
|
||
* Any other plots for communication? | ||
|
||
* Use "wtp" or "k"? | ||
* Gaussian Approximation EVSI method | ||
|
||
* MLMC and QMC methods | ||
|
||
* Parallel processing for standard 2 level Monte Carlo, and partial results for convergence checking | ||
|
||
|
||
|
||
EVSI | ||
|
||
* More built-in study designs - which ones? | ||
|
||
* Any need to handle designs controlled by more than one sample size? If so, make sure multiple arguments to datagen_fn are handled nicely | ||
|
||
* Guidance for users to specify appropriate GAM formulae for their applications when the default formula is too intensive. Relatedly, appropriate number of PSA samples to use. | ||
|
||
* Add Jalal EVSI method | ||
|
||
* 2-level Monte Carlo again | ||
|
||
* Output analysis material from Anna's EVSI package. | ||
|
||
|
||
|
||
GENERAL | ||
|
||
* Interface to heemod package. Any other packages to interface with? | ||
|
||
|
||
|
||
|
||
## PRINCIPLES OF PACKAGE DEVELOPMENT | ||
|
||
|
||
### Using | ||
|
||
* Most important! | ||
|
||
* Just use it any time you want to do a VoI calculation, and give feedback. | ||
Describe what you had to do to make it work in your example. If you need to do anything tedious, this may suggest how the package could be more helpful. | ||
|
||
* Does other software do anything better? | ||
|
||
|
||
### Design | ||
|
||
* Decide what the package should do, and what is better done with other tools | ||
|
||
* What functions should look like: argument formats, consistency between different parts of the code | ||
|
||
* Identifying where we do the same task multiple times, therefore should have a function for that task | ||
|
||
|
||
### Coding | ||
|
||
* Clean, modular and consistent style. Each function does one thing that can be described concisely. | ||
|
||
* Descriptive/concise variable and function names. | ||
|
||
* Code should be understandable as much as possible by itself without the need for commenting. | ||
|
||
* Comment in cases where it won't be instantly obvious what the code is doing. | ||
|
||
* Any time you add code, add a unit test - a concise example where that code is executed - to ensure that test gives the expected result every time the code is modified. | ||
|
||
* House style: | ||
|
||
- underscores not dots to separate words in function or variable names: `my_variable_name` | ||
|
||
- use spaces to clearly separate elements of code, e.g. | ||
`x <- fn(a, b, c)` is much easier to read than `x<-fn(a,b,c)` | ||
|
||
|
||
|
||
### Documentation | ||
|
||
* Vignettes with worked examples | ||
* 2-level Monte Carlo EVSI | ||
|
||
* Check can reproduce results from ConVoI 1 four case studies | ||
|
||
* Any new ConVoI examples (book, papers) should come with code to do them with this package. | ||
* Standard errors for EVSI methods and INLA EVPPI method | ||
|
||
* Note these may raise "further research is needed" questions! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
## PRINCIPLES OF PACKAGE DEVELOPMENT | ||
|
||
|
||
### Using | ||
|
||
* Most important! | ||
|
||
* Just use it any time you want to do a VoI calculation, and give feedback. Describe what you had to do to make it work in your example. If you need to do anything tedious, this may suggest how the package could be more helpful. | ||
|
||
* Does other software do anything better? | ||
|
||
|
||
### Design | ||
|
||
* Decide what the package should do, and what is better done with other tools | ||
|
||
* What functions should look like: argument formats, consistency between different parts of the code | ||
|
||
* Identifying where we do the same task multiple times, therefore should have a function for that task | ||
|
||
|
||
### Coding | ||
|
||
* Clean, modular and consistent style. Each function does one thing that can be described concisely. | ||
|
||
* Descriptive/concise variable and function names. | ||
|
||
* Code should be understandable as much as possible by itself without the need for commenting. | ||
|
||
* Comment in cases where it won't be instantly obvious what the code is doing. | ||
|
||
* Any time you add code, add a unit test - a concise example where that code is executed - to ensure that test gives the expected result every time the code is modified. | ||
|
||
* House style: | ||
|
||
- underscores not dots to separate words in function or variable names: `my_variable_name` | ||
|
||
- use spaces to clearly separate elements of code, e.g. | ||
`x <- fn(a, b, c)` is much easier to read than `x<-fn(a,b,c)` |
Oops, something went wrong.