文章目录:
1 数据说明
1、在test_data
目录下是我们的数据集(我虚构的,只是为了说明下面的处理过程)
图片来源这里,不要问,没有联系方式!
- 每张图片名中的数字是样本
数据的标签label
- 这里我们的数据规模大小是5张数据
2、数据保存成csv文件要求
- 每一行代表一个样本
- 每一行的第一列表示文件的路径,每一行的第二列表示样本的标签
2 把数据集文件信息使用python pandas保存成csv文件
1、根据上面保存成csv文件的要求,把数据集相关信息保存到csv文件中:
# coding=utf-8
"""
Copyright (c) 2018-2022. All Rights Reserved.
@author: shliang
@email: shliang0603@gmail.com
创建和导入csv文件
"""
import pandas as pd
import glob
import os
import numpy as np
# 创建csv文件
def create_csv_file():
'''
把test_data目录下的文件绝对路径保存到csv文件中,同时把文件名中的label也保存下来
保存两列 filename, label
:return:
'''
img_paths_list = glob.glob("../test_data/*.png")
labes_list = []
img_label_list = []
for path in img_paths_list:
img_name = os.path.split(path)[-1]
prefix = os.path.splitext(img_name)[0]
label = prefix.split('_')[-1]
labes_list.append(str(label))
# abspath = os.path.abspath(path)
img_label_list.append([path, label])
# 通过zip函数组合每一个样本的path和label: (path, label)
print(img_paths_list)
print(labes_list)
img_label_list2 = list(zip(img_paths_list, labes_list))
print(img_label_list)
print(img_label_list2)
# 保存数据data格式,嵌套列表,每个子列表中表示每一行数据
# df = pd.DataFrame(data=np.array([[img0, label0],[img1, label1],...,[img4, label4]]),
# columns=['filepath', 'label'])
df1 = pd.DataFr