【问题标题】:IndexError: Target 5 is out of boundsIndexError:目标 5 越界
【发布时间】:2023-01-02 03:03:28
【问题描述】:

我正在尝试训练 ANN 但得到

IndexError:目标 5 越界

我认为问题出在我拆分数据的这部分代码中:

from sklearn.datasets import fetch_california_housing
california = fetch_california_housing()
data = pd.DataFrame(california.data)
data.columns = california.feature_names
data['Price'] = california.target

X = data.iloc[:, 0:8]
y = data.iloc[:, 8]

我在这里做错了什么吗?

【问题讨论】:

  • 你让我们猜测错误在哪里。请编辑问题并添加整个错误回溯消息。

标签: python scikit-learn deep-learning neural-network kaggle


【解决方案1】:

添加新列然后按列索引进行选择很容易出错。

scikit-learn>=0.23.0中,fetch_california_housing已经可以返回带有as_frame参数的数据帧。

如果您需要数据框,您的代码结构应如下所示:

from sklearn.datasets import fetch_california_housing

california = fetch_california_housing(as_frame=True)

X = california.data
y = california.target

【讨论】: