在MNIST分类器代码使用X[0]显示KeyError: 0

在学习使用 MNIST 数据集进行分类是输入以下代码报错KeyError: 0

import matplotlib as mpl
import matplotlib.pyplot as plt

some_digit = X[0]
some_digit_image = some_digit.reshape(28, 28)

plt.imshow(some_digit_image, cmap="binary")
plt.axis("off")
plt.show() 

经过查资料了解fetch_openml版本之间更改的 API 。在早期版本中,它返回一个numpy.ndarray数组。自0.24.0(2020 年 12 月)以来,as_frame参数 offetch_openml设置为auto(而不是之前的False默认选项),这为您pandas.DataFrame提供了 MNIST 数据。numpy.ndarray您可以通过设置强制将数据读取为 as_frame = False。

因此只需加上 as_frame = False即可

from sklearn.datasets import fetch_openml
mnist = fetch_openml('mnist_784', version= 1, as_frame= False)
mnist.keys()

你可能感兴趣的:(机器学习,python)