Sklearn的不当v / s df.fillnan用列均值替换nan值

3 python dataframe pandas scikit-learn

我发现了两种在python中替换nan值的方法,一种使用sklearn的imputer类,另一种使用df.fillnan(),后一种似乎用更少的代码就容易了。但是效率方面更好。谁能解释每个的用例?

May*_*kar 5

我觉得不熟练的班级有其自身的好处,因为您可以简单地提到均值或中位数来执行某些操作,这与Fillna中需要提供值的情况不同。但是在不完美的情况下,您需要调整和转换数据集,这意味着需要更多的代码行。但这可能会比fillna更快,但除非真正的大数据集无关紧要。

但是fillna的确很酷。您甚至可以使用有时可能需要的自定义值来填充na。即使fillna的执行速度较慢,它也可以使它更好的恕我直言。