如何在两个numpy数组中的相同索引处取50个样本[批处理]

时间:2017-05-06 01:23:05

标签: python python-3.x numpy

基本上,我尝试为我的NN创建批次,但我正在努力这样做。这是我最初的尝试:

  for i in range(300):
    batch_index = random.sample(range(0,100),50)
    if i % 5 == 0:
      [train_accuracy, s] = sess.run([accuracy, summ], feed_dict={x: train[batch_index], y: labels_final[batch_index]})
      writer.add_summary(s, i)
      print ("train accuracy:", train_accuracy)
    sess.run(train_step, feed_dict={x: train[batch_index], y: labels_final[batch_index]})

我收到以下错误:

TypeError: list indices must be integers, not list

编辑:train不是一个numpy数组。使它成为一个numpy数组使代码工作。

1 个答案:

答案 0 :(得分:0)

您的问题是random.sample会返回一个列表。您无法通过列表索引列表train。您必须用整数对其进行索引。