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.