加载数字#

sklearn.datasets.load_digits(*, n_class=10, return_X_y=False, as_frame=False)[source]#

加载并返回数字数据集(分类)。

每个数据点都是一个 8x8 的数字图像。

类别

10

每个类别的样本数

~180

样本总数

1797

维数

64

特征

整数 0-16

这是 UCI ML 手写数字数据集测试集的副本 https://archive.ics.uci.edu/ml/datasets/Optical+Recognition+of+Handwritten+Digits

用户指南 中了解更多信息。

参数:
n_classint, default=10

要返回的类别数。介于 0 和 10 之间。

return_X_ybool, default=False

如果为 True,则返回 (data, target) 而不是 Bunch 对象。有关 datatarget 对象的更多信息,请参见下文。

0.18 版本中添加。

as_framebool,默认为 False

如果为 True,则数据是一个 pandas DataFrame,包含具有适当数据类型(数值型)的列。目标是 pandas DataFrame 或 Series,具体取决于目标列的数量。如果 return_X_y 为 True,则 (data, target) 将是如下所述的 pandas DataFrame 或 Series。

0.23 版本中添加。

返回:
dataBunch

类似字典的对象,具有以下属性。

data{ndarray, dataframe} 形状为 (1797, 64)

扁平化的数据矩阵。如果 as_frame=True,则 data 将是一个 pandas DataFrame。

target: {ndarray, Series} 形状为 (1797,)

分类目标。如果 as_frame=True,则 target 将是一个 pandas Series。

feature_names: list

数据集列的名称。

target_names: list

目标类的名称。

0.20 版本中添加。

frame: DataFrame 形状为 (1797, 65)

仅当 as_frame=True 时出现。包含 datatarget 的 DataFrame。

0.23 版本中添加。

images: {ndarray} 形状为 (1797, 8, 8)

原始图像数据。

DESCR: str

数据集的完整描述。

(data, target)如果 return_X_y 为 True,则为元组

默认情况下,包含两个 ndarray 的元组。第一个包含形状为 (1797, 64) 的二维 ndarray,其中每一行表示一个样本,每一列表示特征。第二个形状为 (1797) 的 ndarray 包含目标样本。如果 as_frame=True,则两个数组都是 pandas 对象,即 X 为数据框,y 为序列。

0.18 版本中添加。

示例

加载数据并可视化图像

>>> from sklearn.datasets import load_digits
>>> digits = load_digits()
>>> print(digits.data.shape)
(1797, 64)
>>> import matplotlib.pyplot as plt
>>> plt.gray()
>>> plt.matshow(digits.images[0])
<...>
>>> plt.show()
../../_images/sklearn-datasets-load_digits-1_00.png
../../_images/sklearn-datasets-load_digits-1_01.png