最近一次做R语言练习的时候,要求将数据集Hi2_raw中的除字符变量(League,Division)外的其他变量中的缺失数据填补为该变量中除去缺失值的平均值。
于是我采用了apply并自定义了一个填补函数,填补函数主要目的就是为了跳过字符变量,填补数值变量。
于是我使用if语句跳过字符变量
在输出结果中,所有变量全部变成了字符变量。
当我将填补函数应用在数据框某一列的时候,得到的结果时正常的数值型。
于是我猜测可能是apply本身对数据集操作机制的原因,于是我将数据集中的字符变量去掉,重新输出,得到的是预期的结果
产生这种结果的具体原因是什么呢?在面对有字符变量时要填充数值变量时如何避免产生这种数据类型改变的结果?