建模数据预处理流程中的核心原则:任何用于数据转换的参数(无论是用于填充的统计量,还是用于缩放的均值/标准差)都必须仅从训练集中学习得到。然后,将这些学习到的参数应用到训练集和测试集(以及未来的新数据)上。A 选项在整个数据集上计算参数,会将测试集的信息泄漏到训练过程中。C 选项对训练集和测试集使用不同的参数进行转换,会导致两个数据集的特征分布和尺度不一致,模型在测试集上的表现将不可靠。D 选项的顺序是错误的。如果先缩放,缺失值的位置会影响缩放参数的计算;并且,在缩放后再用均值/中位数填充,填充的值(例如0,对于StandardScaler)可能与原始分布中的真实均值/中位数代表的意义完全不同。因此,标准的流程是先填充,后缩放。