#はじめに
オライリージャパンの「Pythonではじめる機械学習」の4章のp.210の以下のコードを打ち込んだ時,エラーが発生しました.
features = data_dummies.ix[:,"age":"occupation_ Transport-moving"]
#NumPy配列を取り出す
X = features.values
y = data_dummies["income_ >50K"].values
print("X.shape: {} y.shape: {}".format(X.shape,y.shape))
エラー内容
'DataFrame' object has no attribute 'ix'
#解決法
調べてみると,2020年2月に導入されたpandas-1.0.0で,以前バージョン0.7.3まで使用できたDataFrameの.ixが廃止されたそうです.
しかし,代わりにlocを用いることで解決できます.
features = data_dummies.loc[:,"age":"occupation_ Transport-moving"]
#NumPy配列を取り出す
X = features.values
y = data_dummies["income_ >50K"].values
print("X.shape: {} y.shape: {}".format(X.shape,y.shape))
loc使用後
X.shape: (32561, 44) y.shape: (32561,)
エラーが消えました.
#参考
https://ebcrpa.jamstec.go.jp/~yyousuke/matplotlib/info.html ,2021/2/25参照