r - 使用 survRM2 包中的 rmst2 函数(受限制的平均生存时间)时出错
问题描述
我希望使用 R 中的受限平均生存时间来比较两条生存曲线。因此,我正在使用 survRM2 包并遵循这个R 小插图。
我可以通过执行以下命令获得未经调整的分析,如第 3.1 节所述:
dataset_analise <- as.data.frame(dataset_analise_coxph)
time <- dataset_analise$time
status <- dataset_analise$status
All_episodes_RC_var <- dataset_analise$All_episodes_RC
All_episodes_RC_analysis <- rmst2(time, status, All_episodes_RC_var)
并获得:
The truncation time, tau, was not specified. Thus, the default tau (the minimum of the largest observed time on each of the two groups) 9.342 is used.
Restricted Mean Survival Time (RMST) by arm
Est. se lower .95 upper .95
RMST (arm=1) 3.998 0.051 3.898 4.099
RMST (arm=0) 1.084 0.013 1.059 1.109
Restricted Mean Time Lost (RMTL) by arm
Est. se lower .95 upper .95
RMTL (arm=1) 5.343 0.051 5.243 5.444
RMTL (arm=0) 8.257 0.013 8.232 8.282
Between-group contrast
Est. lower .95 upper .95 p
RMST (arm=1)-(arm=0) 2.914 2.810 3.017 0
RMST (arm=1)/(arm=0) 3.687 3.564 3.815 0
RMTL (arm=1)/(arm=0) 0.647 0.635 0.660 0
在未调整分析成功执行后,我想获得调整分析的结果,如第 3.2 节所示。为此,我使用以下代码设置协变量:
> x <- dataset_analise[,c(4,6,7)]
> head(x)
Age_at_diagnosis Length_of_stay Number_infections
1 59 83 2
2 34 12 0
3 65 18 0
4 86 17 0
5 78 6 0
6 77 0 0
但是,当我尝试获取调整后的分析时,出现以下错误:
> All_episodes_RC_analysis_ajustado <- rmst2(time, status, All_episodes_RC_var, tau=8, covariates=x)
Error in `[[<-.data.frame`(`*tmp*`, i, value = c(112L, 112L, 112L, 112L, :
replacement has 465330 rows, data has 93066
检查变量的 nrow 和长度似乎很好(都具有相同的长度):
> nrow(x)
[1] 93066
> length(time)
[1] 93066
> length(status)
[1] 93066
> length(All_episodes_RC_var)
[1] 93066
因此我不知道之前错误中提到的 465330 行来自哪里。知道为什么会弹出此错误吗?谢谢你。
解决方案
推荐阅读
- mysql - MySQL - 使用 WHERE IN 子句加入 2 个表
- html - CSS文本对齐在浏览器之间的工作方式不同?
- excel - 在计算完成之前如何显示消息框?
- xampp - XAMPP 无法在带有 macOS Big Sur 的 Mac 上运行
- r - 我在安装 SimRAD 包时遇到问题
- performance - FFmpeg 在重复拆分、选择、覆盖时使用太多内存
- python - 如何使用 Xarray 从 OCO-2/Tropomi NETCDF4 文件中绘制甲烷图?
- excel - 通过文本框搜索以自动更新列表框条目
- json - 在 laravel Json 响应中仅将一个字段转换为 int(不带逗号)
- c# - Asp.Net Core 2.2 将大型 Cshtml 文件转换为 Pdf