我正在对图像数据集进行分类。我想将图像的所有像素值存储在pandas数据框中的一行中。 我能够将图像转换为矩阵,然后转换为数组,但是当我保存该数组时,它会保存在列中。
我用过
img = mpimg.imread(path_for_png) #for getting image data into matrix
img = np.ravel(img) #this method for converting it into an array
现在,当我应用此代码时:
df = pd.DataFrame(img) #to convert it into dataframe
我以如下所示的格式获取数据框,但我想将其转换为单个示例的一行。
0
0 1.0
1 1.0
2 1.0
3 1.0
4 1.0
答案 0 :(得分:3)
在列表图像上使用pd.DataFrame
将每个图像放在单独的行上。由于此处仅一张图像,因此根据您想要的输出添加[]
就足够了。
df = pd.DataFrame([img])
会给予
0 1 2 3 4
0 1.0 1.0 1.0 1.0 1.0
同时
df = pd.DataFrame([[img]])
给予
0
0 [1.0, 1.0, 1.0, 1.0, 1.0]
如果数组很长,第二个输出很可能就是您想要的。