簡體   English   中英

顯示 100 個 mnist 數據集

[英]displaying 100 mnist dataset

這是我用來打印 100 mnist 數據的原始未簡化圖片的代碼,但它不斷給我一個錯誤。 即使嘗試了很多,我也找不到解決方案。 征求建議

 from sklearn.datasets import fetch_openml
   mnist = fetch_openml('mnist_784')
   X = mnist["data"]
   y = mnist["target"]
   X_train, X_test, y_train, y_test = X[:60000], X[60000:], y[:60000],y[60000:]
   pca = PCA()
   pca.fit(X_train)
   cumsum = np.cumsum(pca.explained_variance_ratio_)
   d = np.argmax(cumsum >= 0.90) + 1

   #Setup a figure 8 inches by 8 inches
   fig = plt.figure(figsize=(8,8))
   fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.05)
    for i in range(100):
        ax = fig.add_subplot(10, 10, i+1, xticks=[], yticks=[])
        ax.imshow(X_train[i].reshape(28,28), cmap=plt.cm.bone, interpolation='nearest')
        plt.show()

這就是您的 plot 顯示語句仍在循環中的地方。 只需將其移出循環,它就會顯示正常。 給下面一個 go;

from sklearn.datasets import fetch_openml
from sklearn.decomposition import PCA
from sklearn.model_selection import train_test_split
import numpy as np
import matplotlib.pyplot as plt

mnist = fetch_openml('mnist_784')
X = mnist["data"]
y = mnist["target"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.20, 
 random_state=44)
pca = PCA()
pca.fit(X_train)

fig = plt.figure(figsize=(8,8))
fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.05)
for i in range(100):
    ax = fig.add_subplot(10, 10, i+1, xticks=[], yticks=[])
    ax.imshow(X_train[i].reshape(28,28), cmap=plt.cm.bone, interpolation='nearest')

plt.show()
import matplotlib.pyplot as plt

fig,ax = plt.subplots(5, 10)

for i in range(10):
    for j in range(10):
      ax[i,j].imshow(X_train[(10*i)+j].reshape(8, 8), cmap='binary')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM