load_iris() 得到了意外的关键字参数 'as_frame'

load_iris() got an unexpected keyword argument 'as_frame'

我尝试将 iris 数据集导入 daraframe 但它显示以下错误。我检查了 scikit-learn 文档有 as_frame 命名参数 load_iris().

我的代码:

from sklearn.datasets import load_iris
df = load_iris(as_frame=True)

错误:

TypeError                                 Traceback (most recent call last)
<ipython-input-7-1f51689afac6> in <module>
      1 from sklearn.datasets import load_iris
----> 2 df = load_iris(as_frame=True)
      3 df

TypeError: load_iris() got an unexpected keyword argument 'as_frame'

这可能是一个不错的选择:

from sklearn.datasets import load_iris
import pandas as pd

data = load_iris()
df = pd.DataFrame(data.data, columns=data.feature_names)
df.head()

您使用的是旧版本的 sklearn,这就是您收到错误的原因。要解决此问题,只需安装一个版本的 sklearn >= 0.23

例如:

pip install scikit-learn==0.23

Sklearn 文档:

as_framebool, default=False If True, the data is a pandas DataFrame including columns with appropriate dtypes (numeric). The target is a pandas DataFrame or Series depending on the number of target columns. If return_X_y is True, then (data, target) will be pandas DataFrames or Series as described below.

New in version 0.23.

或者如果你也想显示目标:

from sklearn.datasets import load_iris
import pandas as pd

pd.set_option("max_columns", None)
pd.set_option("max_rows", None)

data = load_iris()
df = pd.DataFrame(data.data, columns=data.feature_names)
df.insert(4, "target", data.target, allow_duplicates=False)
df

pd.set_option()用于将列和行作为一个整体显示