[英]how to write data row wise in csv file by following code?
运行以下代码时出现错误,如何解决?
错误:
csv.Error:预期可迭代,而不是 numpy.int64
y_test = np.array(test_labels)
print('y_test_labels:', y_test.shape) # (230,123)
with open('/content/drive/My Drive/GEINet_and_PEINet/VGG_CSV/test.csv', mode='w') as employee_file:
employee_writer = csv.writer(employee_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
#employee_writer.writerow(y_test)
x,y = y_test.shape
print('x: ',x)
for num in range(0, x):
employee_writer.writerows(y_test[num,:])
试试这个employee_writer.writerows(list(y_test[num,:]))
您应该使y_test[num,:]
可迭代,将其修改为列表序列,您可以将y_test[num,:]
替换为map(lambda x: [x], y_test[num,:])
。 另一种方法不是制作 NumPy 数组y_test
,而是使用 pandas Series
中的to_csv()
方法从头开始迭代test_labels
数据帧。
您可以直接在数组上调用writerows
:
employee_writer.writerows(y_test)
你可以这样做:
with open('/content/drive/My Drive/GEINet_and_PEINet/VGG_CSV/test.csv', mode='w') as employee_file:
employee_writer.writerows(y_test)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.