load_digits#

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

載入並回傳數字資料集(分類)。

每個資料點都是一個 8x8 的數字影像。

類別

10

每個類別的樣本數

~180

樣本總數

1797

維度

64

特徵

整數 0-16

這是 UCI ML 手寫數字資料集的測試集副本 https://archive.ics.uci.edu/ml/datasets/Optical+Recognition+of+Handwritten+Digits

請在 使用者指南 中閱讀更多資訊。

參數:
n_classint,預設值為 10

要回傳的類別數量。介於 0 和 10 之間。

return_X_ybool,預設值為 False

如果為 True,則回傳 (data, target) 而不是 Bunch 物件。有關 datatarget 物件的更多資訊,請參閱下文。

在版本 0.18 中新增。

as_framebool,預設值為 False

如果為 True,則資料為 pandas DataFrame,其中包括具有適當 dtype(數值)的欄位。目標是 pandas DataFrame 或 Series,具體取決於目標欄位的數量。如果 return_X_y 為 True,則 (data, target) 將會是如下所述的 pandas DataFrames 或 Series。

在版本 0.23 中新增。

回傳值:
dataBunch

類似字典的物件,具有以下屬性。

data形狀為 (1797, 64) 的 {ndarray, dataframe}

扁平化資料矩陣。如果 as_frame=Truedata 將會是 pandas DataFrame。

target: 形狀為 (1797,) 的 {ndarray, Series}

分類目標。如果 as_frame=Truetarget 將會是 pandas Series。

feature_names: list

資料集欄位的名稱。

target_names: list

目標類別的名稱。

在版本 0.20 中新增。

frame: 形狀為 (1797, 65) 的 DataFrame

僅當 as_frame=True 時才會出現。具有 datatarget 的 DataFrame。

在版本 0.23 中新增。

images: 形狀為 (1797, 8, 8) 的 {ndarray}

原始影像資料。

DESCR: str

資料集的完整描述。

(data, target)如果 return_X_y 為 True 則為 tuple

預設為兩個 ndarray 的 tuple。第一個包含形狀為 (1797, 64) 的 2D ndarray,其中每列代表一個樣本,每欄代表特徵。第二個形狀為 (1797) 的 ndarray 包含目標樣本。如果 as_frame=True,則兩個陣列都是 pandas 物件,即 X 為 DataFrame,而 y 為 Series。

在版本 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