gpt4 book ai didi

python - 尝试 reshape 数组时出错

转载 作者:行者123 更新时间:2023-11-30 09:18:36 25 4
gpt4 key购买 nike

我使用 2 个独立的数据集,一个用于训练,另一个用于测试

import numpy as np
import pandas as pd
import matplotlib.pyplot as pt
from sklearn.tree import DecisionTreeClassifier

data = pd.read_csv("train.csv").as_matrix()
data2 = pd.read_csv("test.csv").as_matrix()
clf = DecisionTreeClassifier()
# Dataset for training

train_data = data[0:41999,1:]
train_label = data[0:41999,0]

clf.fit(train_data,train_label)

# Dataset for Testing

test_data = data2[0:27999,1:]
actual_lable = data2[0:27999,0]
index = 5

sample = test_data[5]

sample.shape=(28,28)
pt.imshow(255-sample,cmap='gray')

print(clf.predict([test_data[5]]))
pt.show()

我在第 35 行遇到以下错误:

sample.shape=(28,28)

我收到以下错误:

ValueError: cannot reshape array of size 783 into shape (28,28)

但是如果我使用 train_data 中的值,那么就没有错误IE而不是使用

sample = test_data[5]

如果我使用

sample = train_data[5]

我没有收到任何错误。您能解释一下为什么上面的代码会出错吗?

  • 列出项目

最佳答案

28*28 = 784,对于分割后的测试数据,只有 783 个值,这就是它在 reshape 过程中导致错误的原因。

您必须打开测试文件并查看到底有多少列。如果只有 784 列,那么你应该这样做:

test_data = data2[0:27999,:]

并且 true_label 可能存储在其他地方。

关于python - 尝试 reshape 数组时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48609276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com