我有一个images
列表,其中包含图像矢量和相关标签(即类)。
images.append([np.array(image_array_to_vector),np.array([label])])
如果要阅读X
中的图像和y
中的标签,请执行以下操作:
X = np.array([i[0] for i in images])
y = [i[1] for i in images]
然后我想将X
保存在文本文件中,如下所示:
X_to_text_file = np.savetxt('x.txt', X.reshape(np.shape(X)), fmt='%5f')
以上工作正常。我要进行的更改是将标签附加到X
中的矢量上,然后将其保存到文本文件中。
我尝试例如这样做:
X = np.array([[i[0],i[1]] for i in images])
但是,出现以下错误:
TypeError: Mismatch between array dtype ('object') and format specifier ('%5f %5f')
而且,当尝试按以下方式使用字典时:
X = np.array([{i[1]:i[0]} for i in images])
我收到此错误:
TypeError: unhashable type: 'numpy.ndarray'
那么,是的,如何将标签附加到矢量上并将其保存在文本文件中?
谢谢。
答案 0 :(得分:0)
在不知道原始数据的外观或将来希望如何从.txt检索信息的情况下很难回答这个问题,而是将“%5f”格式更改为字符串“%s”格式应该可以解决您的问题:
X_to_text_file = np.savetxt('x.txt', X.reshape(np.shape(X)), fmt='%s')