返回它的方程是这样的:
Total_Eff[PatientDI] = (Total_Eff[PatientDI] + (QALY_PopNorm - QALY_Infert_Decr)*0.5*(0.95^CLOCK[PatientDI]))
在工作区中,有问题的对象具有以下值:
> Total_Eff
[1] 12.03512 0.00000 0.00000 0.00000
> QALY_PopNorm
[1] 0.9363524
> QALY_Infert_Decr
[1] 0.05609429
> CLOCK
[1] 20.716 0.000 0.000 0.000
> PatientDI
[1] 1
当我手动输入方程式时(即在我的代码完成运行后在工作区中),我得到:
> (Total_Eff[PatientDI] + (QALY_PopNorm - QALY_Infert_Decr)*0.5*(0.95^CLOCK[PatientDI]))
[1] 12.18721
没有警告。
问题是我收到了太多这种性质的警告,它们淹没了所有其他可能很重要的警告,当我使用“warnings()”时,我看到的只是这个等式一遍又一遍地重复的错误消息。
谁能看出问题出在哪里?我意识到如果没有整个代码(大约 2000 行长),就不可能始终准确地知道发生了什么,但我确信 QALY_PopNorm 和 QALY_Infert_Decr 总是长度为 1 的向量,所以我不知道关于警告的来源。