from sklearn.preprocessing import OneHotEncoder
X = data.iloc[:,1:4]
enc = OneHotEncoder(categories='auto').fit(X)
result = enc.transform(X).toarray()
result
enc.get_feature_names()
newdata = pd.concat([data,pd.DataFrame(result)],axis=1)
newdata.columns
显示结果为Index(['总里程','业务类型','需求类型1','需求类型2','线路价格(不含税)',……,0,1,2, 3,4,5], dtype ='object'),以上都正常
newdata.drop(['业务类型','需求类型1','需求类型2'],axis=1,inplace=True)
KeyError Traceback (most recent call last)
<ipython-input-70-dda56039a1d9> in <module>
----> 1 newdata.drop(['业务类型','需求类型1','需求类型2'],axis=1,inplace=True)
C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py in drop(self, labels, axis, index, columns, level, inplace, errors)
4100 level=level,
4101 inplace=inplace,
-> 4102 errors=errors,
4103 )
4104
C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py in drop(self, labels, axis, index, columns, level, inplace, errors)
3912 for axis, labels in axes.items():
3913 if labels is not None:
-> 3914 obj = obj._drop_axis(labels, axis, level=level, errors=errors)
3915
3916 if inplace:
C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py in _drop_axis(self, labels, axis, level, errors)
3944 new_axis = axis.drop(labels, level=level, errors=errors)
3945 else:
-> 3946 new_axis = axis.drop(labels, errors=errors)
3947 result = self.reindex(**{axis_name: new_axis})
3948
C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in drop(self, labels, errors)
5338 if mask.any():
5339 if errors != "ignore":
-> 5340 raise KeyError("{} not found in axis".format(labels[mask]))
5341 indexer = indexer[~mask]
5342 return self.delete(indexer)
KeyError: "['业务类型' '需求类型1' '需求类型2'] not found in axis"
请问哪里出错了?