【问题标题】:TypeError: must be str, not numpy.int64TypeError:必须是 str,而不是 numpy.int64
【发布时间】:2019-09-02 16:19:34
【问题描述】:

这应该可以工作,因为我已经看到它可以在其他人身上工作,但是这对我不起作用。我正在做一个测试/训练模型并尝试训练图像

这就是我所尝试的全部。保存在谷歌驱动器上的数据

train_image = []
for i in tqdm(range(train.shape[0])):
    img = image.load_img('/content/drive/My Drive/Colab Notebooks/data/train/'+train['file_id'][i], target_size=(128,173,1), color_mode='grayscale')
    img = image.img_to_array(img)
    img = img/255
    train_image.append(img)
x_train = np.array(train_image)

      0%|          | 0/5377 [00:00<?, ?it/s]
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-5-ef9f3fb90a16> in <module>()
      1 train_image = []
      2 for i in tqdm(range(train.shape[0])):
----> 3     img = image.load_img('/content/drive/My Drive/Colab Notebooks/data/train/'+train['file_id'][i], target_size=(128,173,1), color_mode='grayscale')
      4     img = image.img_to_array(img)
      5     img = img/255

TypeError: must be str, not numpy.int64

【问题讨论】:

  • TypeError: 必须是 str,而不是 numpy.int64
  • 你能粘贴你得到的整个错误吗?错误发生在哪一行?
  • @ErtySeidohl 你能看到为什么它会进入 TypeError。
  • 我感觉这与您对 target_size 的使用有关,因为元组只需要两个部分(宽度,高度),而您传递了三个(128,173,1)
  • @ErtySeidohl 更改目标大小不会产生影响/更改。仍然得到同样的错误。如果它是元组 TypeError 的问题,那将是不同的。我得到的错误与代码的第 3 行有关,它假设它应该是 str 的地方有 int。

标签: string typeerror int64


【解决方案1】:

检查load_img和img_to_array传入的参数是否正确。我的代码也有同样的错误。这是因为我正在调用一个方法来获取特定参数来创建返回字符(键入错误)并影响它的路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多