回答您的第一个问题:是的,这是正确的方法。训练和验证集的整个想法是,您根据训练集做出关于模型的所有决定(这里:添加哪些变量)。然后使用验证集来评估您在训练集中的结果有多稳健。通过这种方式,您可以检查过度拟合、异常值、数据错误等。
但是,我不推荐逐步回归方法。请参阅这篇文章的最佳答案:https ://stats.stackexchange.com/questions/115843/backward-selection-for-cox-model-using-r 。
第二个问题:不,你不应该忽略无关紧要的变量。这正是您拥有验证集的原因。也许您的训练集有几个非常有影响力的观察结果(异常值)?或者是其他东西?无论如何,你必须做一些额外的研究。
你指的是哪个假设?我假设您的意思是比例风险(PH)假设不成立,因为这个假设经常被违反。与您的第一个问题的答案相同的推理方式。首先在训练集上检查假设。如果它也不存在,请在您的模型中进行调整。如果确实违反了变量的 PH 假设,请添加时间交互或制作分层 cox 模型。[参见例如:http ://www.dbc.wroc.pl/Content/27006/Borucka_Extensions_of_Cox_model_For_non_proportional.pdf ]
我不完全确定我对第三个问题的回答,但这里是:如果 X 未包含在您的训练模型中,则将其包含在您的验证模型中是不正确的。变量处理是一个因素,因此在回归中,它基本上会更改为每个级别的虚拟 (0/1) 变量。因此,包括 X 与在您的验证模型中引入一个全新的变量相同,这是违反直觉的。
希望这可以帮助!