解决Python代码中出现的AttributeError: ‘DataFrame’ object has no attribute ‘ix’报错问题

在编写如下 python 代码过程中出现:AttributeError: ‘DataFrame’ object has no attribute ‘ix’

fdata.ix[fdata['time']=='Diner','time']='Dinner'
fdata.ix[fdata['time']=='Dier','time']='Dinner'
fdata['time'].unique()

错误截图:

请添加图片描述
中文意思:“DataFrame”对象没有属性“ix”

原因是,pandas 的 ‘ix’ 属性已经在最新版本中被弃用了。
pandas的新版本已经对该函数进行了升级和重构,可以使用( ‘loc’–>可以表示行 和 ‘iloc’—->可以表示列 )属性来替代 ‘ix’,它们都可以用于选择 DataFrame 中的行和列。
所以只需要将" ix" 改为 “loc”,就可以解决以上问题。

fdata.loc[fdata['time']=='Diner','time']='Dinner'
fdata.loc[fdata['time']=='Dier','time']='Dinner'
fdata['time'].unique()

输出结果:

请添加图片描述

物联沃分享整理
物联沃-IOTWORD物联网 » 解决Python代码中出现的AttributeError: ‘DataFrame’ object has no attribute ‘ix’报错问题

发表评论