# Defining Accrual Time and Accrual Intensity with rpact

Utilities
Survival
This document provides a technical overview on the different alternatives to define accrual time and accrual intensity with rpact.
Author

Friedrich Pahlke and Gernot Wassmer

Published

July 6, 2023

``````library(rpact)
packageVersion("rpact") # version should be version 3.0 or later``````
`` '3.4.0'``

# Case 1

End of accrual, absolute accrual intensity and `maxNumberOfSubjects` are given, `followUpTime` shall be calculated.

## Example: vector based definition

``````accrualTime <- getAccrualTime(
accrualTime = c(0, 6, 30),
accrualIntensity = c(22, 33), maxNumberOfSubjects = 924
)
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 22
• 6 - <=30: 33

Formula

• maxNumberOfSubjects = 924 = 6 * 22 + 24 * 33

Case (#1)

• End of accrual, absolute accrual intensity and ‘maxNumberOfSubjects’ are given, ‘followUpTime’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(22, 33), maxNumberOfSubjects = 924)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity: 22.0, 33.0
• Maximum number of subjects: 924

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: TRUE

## Example: list based definition

``````accrualTime <- getAccrualTime(
list(
"0 - <6" = 22,
"6 - <= 30" = 33
),
maxNumberOfSubjects = 924
)
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 22
• 6 - <=30: 33

Formula

• maxNumberOfSubjects = 924 = 6 * 22 + 24 * 33

Case (#1)

• End of accrual, absolute accrual intensity and ‘maxNumberOfSubjects’ are given, ‘followUpTime’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(22, 33), maxNumberOfSubjects = 924)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity: 22.0, 33.0
• Maximum number of subjects: 924

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: TRUE

## Example: how to use accrual time object

``kable(getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3))``

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.230
• Assumed control rate: 0.300
• Maximum number of subjects: 924
• Accrual time: 6.00, 30.00
• Accrual intensity: 22.0, 33.0

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 31.8
• median(2): 23.3
• lambda(1): 0.0218
• lambda(2): 0.0297
• Hazard ratio: 0.733
• Number of events: 324.8
• Total accrual time: 30.00
• Number of events fixed: 324.8
• Number of subjects fixed: 924
• Number of subjects fixed (1): 462
• Number of subjects fixed (2): 462
• Analysis times: 33.66
• Study duration: 33.66
• Critical values (treatment effect scale): 0.805

Legend

• (i): values of treatment arm i

# Case 2

End of accrual, relative accrual intensity and `maxNumberOfSubjects` are given, absolute accrual intensity and `followUpTime` shall be calculated.

## Example: vector based definition

``````accrualTime <- getAccrualTime(
accrualTime = c(0, 6, 30),
accrualIntensity = c(0.22, 0.33), maxNumberOfSubjects = 1000
)
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 23.80952
• 6 - <=30: 35.71429

Formula

• maxNumberOfSubjects = 1000 = 6 * 23.8095 + 24 * 35.7143

Case (#2)

• End of accrual, relative accrual intensity and ‘maxNumberOfSubjects’ are given, absolute accrual intensity* and ‘followUpTime’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(0.22, 0.33), maxNumberOfSubjects = 1000)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity (relative): 0.22, 0.33
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: FALSE
• Accrual intensity: 23.8, 35.7
• Remaining time: 24.00

## Example: list based definition

``````accrualTime <- getAccrualTime(
list(
"0 - <6" = 0.22,
"6 - <= 30" = 0.33
),
maxNumberOfSubjects = 1000
)
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 23.80952
• 6 - <=30: 35.71429

Formula

• maxNumberOfSubjects = 1000 = 6 * 23.8095 + 24 * 35.7143

Case (#2)

• End of accrual, relative accrual intensity and ‘maxNumberOfSubjects’ are given, absolute accrual intensity* and ‘followUpTime’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(0.22, 0.33), maxNumberOfSubjects = 1000)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity (relative): 0.22, 0.33
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: FALSE
• Accrual intensity: 23.8, 35.7
• Remaining time: 24.00

## Example: how to use accrual time object

``kable(getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3))``

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.230
• Assumed control rate: 0.300
• Maximum number of subjects: 1000
• Accrual time: 6.00, 30.00

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 31.8
• median(2): 23.3
• lambda(1): 0.0218
• lambda(2): 0.0297
• Hazard ratio: 0.733
• Number of events: 324.8
• Total accrual time: 30.00
• Accrual intensity: 23.8, 35.7
• Number of events fixed: 324.8
• Number of subjects fixed: 1000
• Number of subjects fixed (1): 500
• Number of subjects fixed (2): 500
• Analysis times: 32.07
• Study duration: 32.07
• Critical values (treatment effect scale): 0.805

Legend

• (i): values of treatment arm i

# Case 3

End of accrual and absolute accrual intensity are given, `maxNumberOfSubjects` and `followUpTime` shall be calculated.

## Example: vector based definition

``accrualTime <- getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(22, 33))``

## Example: list based definition

``````accrualTime <- getAccrualTime(list(
"0 - <6" = 22,
"6 - <= 30" = 33
))
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 22
• 6 - <=30: 33

Formula

• maxNumberOfSubjects = 924 = 6 * 22 + 24 * 33

Case (#3)

• End of accrual and absolute accrual intensity are given, ‘maxNumberOfSubjects’* and ‘followUpTime’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(22, 33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity: 22.0, 33.0

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: TRUE
• Maximum number of subjects: 924
• Remaining time: 24.00

## Example: how to use accrual time object

``kable(getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3))``

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.230
• Assumed control rate: 0.300
• Accrual time: 6.00, 30.00
• Accrual intensity: 22.0, 33.0

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 31.8
• median(2): 23.3
• lambda(1): 0.0218
• lambda(2): 0.0297
• Hazard ratio: 0.733
• Maximum number of subjects: 924
• Number of events: 324.8
• Total accrual time: 30.00
• Number of events fixed: 324.8
• Number of subjects fixed: 924
• Number of subjects fixed (1): 462
• Number of subjects fixed (2): 462
• Analysis times: 33.66
• Study duration: 33.66
• Critical values (treatment effect scale): 0.805

Legend

• (i): values of treatment arm i

# Case 4

End of accrual, relative accrual intensity and `followUpTime` are given, absolute accrual intensity and `maxNumberOfSubjects` shall be calculated.

## Example: vector based definition

``````accrualTime <- getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(0.22, 0.33))
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 0.22
• 6 - <=30: 0.33

Formula

• maxNumberOfSubjects = 6 * 0.22 * c + 24 * 0.33 * c , where ‘c’ is a constant factor

Case (#4)

• End of accrual, relative accrual intensity and ‘followUpTime’ are given, absolute accrual intensity** and ‘maxNumberOfSubjects’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(0.22, 0.33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity: 0.22, 0.33

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: FALSE

## Example: list based definition

``````accrualTime <- getAccrualTime(list(
"0 - <6" = 0.22,
"6 - <= 30" = 0.33
))
kable(accrualTime)``````

Accrual time and intensity

• 0 - < 6: 0.22
• 6 - <=30: 0.33

Formula

• maxNumberOfSubjects = 6 * 0.22 * c + 24 * 0.33 * c , where ‘c’ is a constant factor

Case (#4)

• End of accrual, relative accrual intensity and ‘followUpTime’ are given, absolute accrual intensity** and ‘maxNumberOfSubjects’** shall be calculated.
• Example: getAccrualTime(accrualTime = c(0, 6, 30), accrualIntensity = c(0.22, 0.33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 30.00
• Accrual intensity: 0.22, 0.33

Generated parameters

• End of accrual is user defined: TRUE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: FALSE

## Example: how to use accrual time object

``kable(getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3, followUpTime = 6))``

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.230
• Assumed control rate: 0.300
• Accrual time: 6.00, 30.00

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 31.8
• median(2): 23.3
• lambda(1): 0.0218
• lambda(2): 0.0297
• Hazard ratio: 0.733
• Number of events: 324.8
• Total accrual time: 30.00
• Accrual intensity: 139.1, 27.8
• Number of events fixed: 324.8
• Number of subjects fixed: 834.7
• Number of subjects fixed (1): 417.4
• Number of subjects fixed (2): 417.4
• Analysis times: 36.00
• Study duration: 36.00
• Critical values (treatment effect scale): 0.805

Legend

• (i): values of treatment arm i

# Case 5

`maxNumberOfSubjects` and absolute accrual intensity are given, end of accrual and `followUpTime` shall be calculated

## Example: vector based definition

``````accrualTime <- getAccrualTime(
accrualTime = c(0, 6),
accrualIntensity = c(22, 33), maxNumberOfSubjects = 1000
)
kable(accrualTime)``````

Accrual time and intensity

• 0.00000 - < 6.00000: 22
• 6.00000 - <=32.30303: 33

Formula

• maxNumberOfSubjects = 1000 = 6 * 22 + 26.303 * 33

Case (#5)

• ‘maxNumberOfSubjects’ and absolute accrual intensity are given, end of accrual* and ‘followUpTime’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33), maxNumberOfSubjects = 1000)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 32.30
• Accrual intensity: 22.0, 33.0
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: TRUE
• Remaining time: 26.30

## Example: list based definition

``````accrualTime <- getAccrualTime(
list(
"0 - <6" = 22,
"6" = 33
),
maxNumberOfSubjects = 1000
)
kable(accrualTime)``````

Accrual time and intensity

• 0.00000 - < 6.00000: 22
• 6.00000 - <=32.30303: 33

Formula

• maxNumberOfSubjects = 1000 = 6 * 22 + 26.303 * 33

Case (#5)

• ‘maxNumberOfSubjects’ and absolute accrual intensity are given, end of accrual* and ‘followUpTime’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33), maxNumberOfSubjects = 1000)
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00, 32.30
• Accrual intensity: 22.0, 33.0
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: TRUE
• Remaining time: 26.30

## Example: how to use accrual time object

``kable(getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3))``

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.230
• Assumed control rate: 0.300
• Maximum number of subjects: 1000
• Accrual time: 6.00, 32.30
• Accrual intensity: 22.0, 33.0

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 31.8
• median(2): 23.3
• lambda(1): 0.0218
• lambda(2): 0.0297
• Hazard ratio: 0.733
• Number of events: 324.8
• Total accrual time: 32.30
• Number of events fixed: 324.8
• Number of subjects fixed: 1000
• Number of subjects fixed (1): 500
• Number of subjects fixed (2): 500
• Analysis times: 33.38
• Study duration: 33.38
• Critical values (treatment effect scale): 0.805

Legend

• (i): values of treatment arm i

# Case 6 (not possible)

`maxNumberOfSubjects` and relative accrual intensity are given, absolute accrual intensity[x], end of accrual and `followUpTime` shall be calculated

## Example: vector based definition

``````accrualTime <- getAccrualTime(
accrualTime = c(0, 6),
accrualIntensity = c(0.22, 0.33),
maxNumberOfSubjects = 1000
)``````
``````Warning: The specified accrual time and intensity cannot be supplemented
automatically with the missing information; therefore further calculations are
not possible``````
``kable(accrualTime)``

Accrual time and intensity

• 0 - <=6: 0.22

Formula

• maxNumberOfSubjects = 1000 = 6 * 0.22 * c + (x - 6) * 0.33 * c , where ‘x’ is the unknown last accrual time and ‘c’ a constant factor

Case (#6)

• ‘maxNumberOfSubjects’ and relative accrual intensity are given, absolute accrual intensity@, end of accrual* and ‘followUpTime’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(0.22, 0.33), maxNumberOfSubjects = 1000)
1. Cannot be calculated.
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 0.22, 0.33
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: FALSE

## Example: list based definition

``````accrualTime <- getAccrualTime(
list(
"0 - <6" = 0.22,
"6" = 0.33
),
maxNumberOfSubjects = 1000
)``````
``````Warning: The specified accrual time and intensity cannot be supplemented
automatically with the missing information; therefore further calculations are
not possible``````
``kable(accrualTime)``

Accrual time and intensity

• 0 - <=6: 0.22

Formula

• maxNumberOfSubjects = 1000 = 6 * 0.22 * c + (x - 6) * 0.33 * c , where ‘x’ is the unknown last accrual time and ‘c’ a constant factor

Case (#6)

• ‘maxNumberOfSubjects’ and relative accrual intensity are given, absolute accrual intensity@, end of accrual* and ‘followUpTime’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(0.22, 0.33), maxNumberOfSubjects = 1000)
1. Cannot be calculated.
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 0.22, 0.33
• Maximum number of subjects: 1000

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: FALSE
• Max number of subjects is user defined: TRUE
• Max number of subjects can be calculated directly: TRUE
• Absolute accrual intensity is enabled: FALSE

## Example: how to use accrual time object

Case 6 is not allowed and therefore an error will be shown:

``````tryCatch(
{
getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3)
},
error = function(e) {
print(e\$message)
}
)``````
`` "Illegal argument: the calculation of 'followUpTime' for given 'maxNumberOfSubjects' and relative accrual intensities (< 1) can only be done if end of accrual is defined"``

# Case 7

`followUpTime` and absolute accrual intensity are given,
end of accrual and `maxNumberOfSubjects` shall be calculated

## Example: vector based definition

``````accrualTime <- getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33))
kable(accrualTime)``````

Accrual time and intensity

• 0 - <=6: 22
• 6 - <=[?]: 33

Formula

• maxNumberOfSubjects = 6 * 22 + (x - 6) * 33, where ‘x’ is the unknown last accrual time

Case (#7)

• ‘followUpTime’ and absolute accrual intensity are given, end of accrual** and ‘maxNumberOfSubjects’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 22.0, 33.0

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: TRUE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: TRUE

## Example: list based definition

``````accrualTime <- getAccrualTime(list(
"0 - <6" = 22,
"6" = 33
))
kable(accrualTime)``````

Accrual time and intensity

• 0 - <=6: 22
• 6 - <=[?]: 33

Formula

• maxNumberOfSubjects = 6 * 22 + (x - 6) * 33, where ‘x’ is the unknown last accrual time

Case (#7)

• ‘followUpTime’ and absolute accrual intensity are given, end of accrual** and ‘maxNumberOfSubjects’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 22.0, 33.0

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: TRUE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: TRUE

## Example: how to use accrual time object

``````kable(getSampleSizeSurvival(
accrualTime = accrualTime,
pi1 = 0.4, pi2 = 0.2, followUpTime = 6
))``````

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• Assumed treatment rate: 0.400
• Accrual intensity: 22.0, 33.0

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Assumed control rate: 0.200
• Planned allocation ratio: 1
• Event time: 12
• kappa: 1
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: TRUE
• median(1): 16.3
• median(2): 37.3
• lambda(1): 0.0426
• lambda(2): 0.0186
• Hazard ratio: 2.289
• Maximum number of subjects: 186.1
• Number of events: 45.8
• Accrual time: 6.00, 7.64
• Total accrual time: 7.64
• Number of events fixed: 45.8
• Number of subjects fixed: 186.1
• Number of subjects fixed (1): 93
• Number of subjects fixed (2): 93
• Analysis times: 13.64
• Study duration: 13.64
• Critical values (treatment effect scale): 1.785

Legend

• (i): values of treatment arm i

# Case 8 (not possible)

`followUpTime` and relative accrual intensity are given,
absolute accrual intensity[x], end of accrual and `maxNumberOfSubjects` shall be calculated

## Example: vector based definition

``accrualTime <- getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(0.22, 0.33))``
``````Warning: The specified accrual time and intensity cannot be supplemented
automatically with the missing information; therefore further calculations are
not possible``````
``kable(accrualTime)``

Accrual time and intensity

• 0 - <=6: 0.22
• 6 - <=[?]: 0.33

Formula

• maxNumberOfSubjects = 6 * 0.22 * c + (x - 6) * 0.33 * c , where ‘x’ is the unknown last accrual time and ‘c’ a constant factor

Case (#8)

• ‘followUpTime’ and relative accrual intensity are given, absolute accrual intensity@, end of accrual and ‘maxNumberOfSubjects’ shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(0.22, 0.33))
1. Cannot be calculated.
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 0.22, 0.33

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: TRUE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: FALSE

## Example: list based definition

``````accrualTime <- getAccrualTime(list(
"0 - <6" = 0.22,
"6" = 0.33
))``````
``````Warning: The specified accrual time and intensity cannot be supplemented
automatically with the missing information; therefore further calculations are
not possible``````
``kable(accrualTime)``

Accrual time and intensity

• 0 - <=6: 0.22
• 6 - <=[?]: 0.33

Formula

• maxNumberOfSubjects = 6 * 0.22 * c + (x - 6) * 0.33 * c , where ‘x’ is the unknown last accrual time and ‘c’ a constant factor

Case (#8)

• ‘followUpTime’ and relative accrual intensity are given, absolute accrual intensity@, end of accrual and ‘maxNumberOfSubjects’ shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(0.22, 0.33))
1. Cannot be calculated.
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 0.22, 0.33

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: TRUE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: FALSE

## Example: how to use accrual time object

Case 8 is not allowed and therefore an error will be shown:

``````tryCatch(
{
getSampleSizeSurvival(accrualTime = accrualTime, pi1 = 0.23, pi2 = 0.3, followUpTime = 6)
},
error = function(e) {
print(e\$message)
}
)``````
`` "Illegal argument: the calculation of 'maxNumberOfSubjects' for given 'followUpTime' and relative accrual intensities (< 1) can only be done if end of accrual is defined"``

# How to show accrual time details

You can use a sample size or power object as argument for function `getAccrualTime`:

``````sampleSize <- getSampleSizeSurvival(
accrualTime = c(0, 6), accrualIntensity = c(22, 53),
lambda2 = 0.05, hazardRatio = 0.8, followUpTime = 6
)
kable(sampleSize)``````

Design plan parameters and output for survival data

Design parameters

• Critical values: 1.96
• Significance level: 0.0250
• Type II error rate: 0.2000
• Test: one-sided

User defined parameters

• lambda(2): 0.050
• Hazard ratio: 0.800
• Accrual intensity: 22.0, 53.0

Default parameters

• Theta H0: 1
• Type of computation: Schoenfeld
• Planned allocation ratio: 1
• kappa: 1
• Piecewise survival times: 0.00
• Drop-out rate (1): 0.000
• Drop-out rate (2): 0.000
• Drop-out time: 12.00

Sample size and output

• Direction upper: FALSE
• median(1): 17.3
• median(2): 13.9
• lambda(1): 0.040
• Maximum number of subjects: 1205.9
• Number of events: 630.5
• Accrual time: 6.00, 26.26
• Total accrual time: 26.26
• Number of events fixed: 630.5
• Number of subjects fixed: 1205.9
• Number of subjects fixed (1): 602.9
• Number of subjects fixed (2): 602.9
• Analysis times: 32.26
• Study duration: 32.26
• Critical values (treatment effect scale): 0.855

Legend

• (i): values of treatment arm i
``````accrualTime <- getAccrualTime(sampleSize)
kable(accrualTime)``````

Accrual time and intensity

• 0 - <=6: 22
• 6 - <=[?]: 53

Formula

• maxNumberOfSubjects = 6 * 22 + (x - 6) * 53, where ‘x’ is the unknown last accrual time

Case (#7)

• ‘followUpTime’ and absolute accrual intensity are given, end of accrual** and ‘maxNumberOfSubjects’** shall be calculated
• Example: getAccrualTime(accrualTime = c(0, 6), accrualIntensity = c(22, 33))
• (*) Can be calculated directly.
• (**) Cannot be calculated directly but with ‘getSampleSizeSurvival()’ or ‘getPowerSurvival()’.

Details

User defined parameters

• Accrual time: 0.00, 6.00
• Accrual intensity: 22.0, 53.0

Generated parameters

• End of accrual is user defined: FALSE
• Follow-up time must be user defined: TRUE
• Max number of subjects is user defined: FALSE
• Max number of subjects can be calculated directly: FALSE
• Absolute accrual intensity is enabled: TRUE

System: rpact 3.4.0, R version 4.2.2 (2022-10-31 ucrt), platform: x86_64-w64-mingw32

To cite R in publications use:

R Core Team (2022). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL https://www.R-project.org/.

To cite package ‘rpact’ in publications use:

Wassmer G, Pahlke F (2023). rpact: Confirmatory Adaptive Clinical Trial Design and Analysis. https://www.rpact.org, https://www.rpact.com, https://github.com/rpact-com/rpact, https://rpact-com.github.io/rpact/.