maxDose | R Documentation |
Determine the upper limit of the next dose based on the increments rule.
maxDose(increments, data, ...) ## S4 method for signature 'IncrementsRelative,Data' maxDose(increments, data, ...) ## S4 method for signature 'IncrementsNumDoseLevels,Data' maxDose(increments, data, ...) ## S4 method for signature 'IncrementsRelativeParts,DataParts' maxDose(increments, data, ...) ## S4 method for signature 'IncrementsRelativeDLT,Data' maxDose(increments, data, ...) ## S4 method for signature 'IncrementMin,Data' maxDose(increments, data, ...)
increments |
The rule, an object of class
|
data |
The data input, an object of class |
... |
further arguments |
This function outputs the maximum possible next dose, based on the
corresponding rule increments
and the data
.
the maximum possible next dose
maxDose(increments = IncrementsRelative, data = Data)
: Determine the maximum possible next dose based on
relative increments
maxDose(increments = IncrementsNumDoseLevels, data = Data)
: Determine the maximum possible next dose based on
maximum dose levels to increment for the next dose
maxDose(increments = IncrementsRelativeParts, data = DataParts)
: Determine the maximum possible next dose based on
relative increments and part 1 and 2
maxDose(increments = IncrementsRelativeDLT, data = Data)
: Determine the maximum possible next dose based on
relative increments determined by DLTs so far
maxDose(increments = IncrementMin, data = Data)
: Determine the maximum possible next dose based on
multiple increment rules (taking the minimum across individual increments).
# Create the data data <- Data(x=c(0.1, 0.5, 1.5, 3, 6, 8, 8, 8), y=c(0, 0, 0, 0, 0, 0, 1, 0), cohort=c(0, 1, 2, 3, 4, 5, 5, 5), doseGrid= c(0.1, 0.5, 1.5, 3, 6, 8, seq(from=10, to=80, by=2))) # In this example we define a rule for dose increments which would allow: # - doubling the dose if the last dose was below 20 # - only increasing the dose by 1.33 if the last dose was equal or above 20 myIncrements <- IncrementsRelative(intervals=c(0, 20), increments=c(1, 0.33)) # Based on the rule above, we then calculate the maximum dose allowed nextMaxDose <- maxDose(myIncrements, data=data) # Create the data data <- Data(x=c(0.1, 0.5, 1.5, 3, 6, 8, 8, 8), y=c(0, 0, 0, 0, 0, 0, 1, 0), cohort=c(0, 1, 2, 3, 4, 5, 5, 5), doseGrid= c(0.1, 0.5, 1.5, 3, 6, 8, seq(from=10, to=80, by=2))) # In this example we define a rule for dose increments which would allow: # maximum skip one dose level, that is 2 dose levels higher is maximum # increment myIncrements <- IncrementsNumDoseLevels(maxLevels=2) # Based on the rule above, we then calculate the maximum dose allowed nextMaxDose <- maxDose(myIncrements, data=data) # create an object of class 'DataParts' myData <- DataParts(x=c(0.1,0.5,1.5), y=c(0,0,0), doseGrid=c(0.1,0.5,1.5,3,6, seq(from=10,to=80,by=2)), part=c(1L,1L,1L), nextPart=1L, part1Ladder=c(0.1,0.5,1.5,3,6,10)) myIncrements <- IncrementsRelativeParts(dltStart=0, cleanStart=1) nextMaxDose <- maxDose(myIncrements, data=myData) # Create the data data <- Data(x=c(0.1, 0.5, 1.5, 3, 6, 10, 10, 10), y=c(0, 0, 0, 0, 0, 0, 1, 0), cohort=c(0, 1, 2, 3, 4, 5, 5, 5), doseGrid= c(0.1, 0.5, 1.5, 3, 6, seq(from=10, to=80, by=2))) # In this example we define a rule for dose increments which would allow: # - doubling the dose if no DLTs were yet observed # - only increasing the dose by 1.33 if 1 or 2 DLTs were already observed # - only increasing the dose by 1.2 if at least 3 DLTs were already observed myIncrements <- IncrementsRelativeDLT(DLTintervals = c(0, 1, 3), increments = c(1, 0.33, 0.2)) # Based on the rule above, we then calculate the maximum dose allowed nextMaxDose <- maxDose(myIncrements, data=data) # Create the data data <- Data(x=c(0.1, 0.5, 1.5, 3, 6, 8, 8, 8), y=c(0, 0, 0, 0, 0, 0, 1, 0), cohort=c(0, 1, 2, 3, 4, 5, 5, 5), doseGrid= c(0.1, 0.5, 1.5, 3, 6, 8, seq(from=10, to=80, by=2))) # As example, here we are combining 2 different increment rules. # The first rule is the following: # maximum doubling the dose if no DLTs were observed at the current dose # or maximum increasing the dose by 1.33 if 1 or 2 DLTs were observed at the current dose # or maximum increasing the dose by 1.22 if 3 or more DLTs were observed # The second rule is the following: # maximum doubling the dose if the current dose is <20 # OR only maximum increasing the dose by 1.33 if the current dose is >=20 myIncrements1 <- IncrementsRelativeDLT(DLTintervals = c(0, 1, 3), increments = c(1, 0.33, 0.2)) myIncrements2 <- IncrementsRelative(intervals=c(0, 20), increments=c(1, 0.33)) # Now we combine the 2 rules combIncrement <- IncrementMin(IncrementsList= list(myIncrements1,myIncrements2)) # Finally we then calculate the maximum dose allowed by taking the minimum of the two rules nextMaxDose <- maxDose(combIncrement, data)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.