如何获取数据的特征名称?

我对 python 环境中包含的 iris 数据集使用了以下说明


iris_data=load_iris()

feature_names = iris_data.feature_names 

k= tree.export_text(model.estimators_[i],feature_names)

我通过这个形状得到了规则


"""\

|--- petal length (cm) <= 2.35

|   |--- class: 0.0

|--- petal length (cm) >  2.35

|   |--- petal width (cm) <= 1.65

|   |   |--- class: 1.0

|   |--- petal width (cm) >  1.65

|   |   |--- petal width (cm) <= 1.75

|   |   |   |--- sepal length (cm) <= 5.80

|   |   |   |   |--- class: 2.0"


但是当我尝试对外部数据集使用相同的指令时,当我尝试通过此指令获取功能名称时,我收到此错误 AttributeError: 'DataFrame' object has no attribute 'feature_names'


fnm = list(dataset.columns.values.tolist())

k= tree.export_text(model.estimators_[i],fnm)

并使用同一行 Expert_text 我收到以下错误File "C:\Anaconda3\lib\site-packages\sklearn\tree_export.py", line 886, in export_textlen(feature_names))) ValueError: feature_names 必须包含 3 个元素,得到 53


不负相思意
浏览 147回答 1
1回答

RISEBY

该方法sklearn.datasets.load_iris返回一个sklearn.utils.Bunch具有feature_names属性的对象。您的新数据集是一个pandas.DataFrame具有columns属性的对象。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python