在使用 Pandas 进行数据处理时,经常会出现”AttributeError:'DataFrame'object has no attribute 'dropna'“这样的错误提示,这是因为在 Pandas 0.21 版本之前,dropna() 函数是 DataFrame 类的方法,但是在之后的版本中,dropna() 函数被移动到了 pandas.core.series 中,所以在 DataFrame 中使用 dropna() 方法会出现该错误。
解决办法
1.升级 pandas 版本:最简单的解决办法是将 Pandas 升级到0.21版本以上,这样就可以在 DataFrame 中直接使用 dropna() 方法了,命令为:pip install --upgrade pandas。
2.使用 dropna() 函数:如果不能升级 Pandas,那么可以使用 dropna() 函数来代替 dropna() 方法。这里需要注意的是,dropna() 函数是 Series 类的方法,而不是 DataFrame 类的方法。如果需要在 DataFrame 中使用 dropna() 函数,需要指定子集,例如:df[['col1','col2']].dropna()。
3.使用 pandas.core.series 方法:如果既不能升级 Pandas 也不能使用 dropna() 函数,那么可以使用 pandas.core.series 中的 dropna() 方法代替 DataFrame 中的 dropna() 方法。具体使用方法为:df.apply(lambda x: x.dropna(), axis=0)。
总之,在遇到”AttributeError:'DataFrame'object has no attribute 'dropna'“这个错误时,需要查看 Pandas 版本、使用的方法或函数,找到合适的解决办法。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas报”AttributeError:’DataFrame’object has no attribute’dropna’“的原因以及解决办法 - Python技术站