注释:定义两个空列表,分别存储训练和验证数据集

train_list = [] val_list = []

注释:遍历 sum_list 中的每一个元素

for i in range(len(sum_list)): # 注释:从当前元素的数据总量中随机选择 80% 的数据作为训练数据 train_indices = np.random.choice(len(sum_list[i]), int(len(sum_list[i])*0.8), replace=False) # 注释:剩下的 20% 数据作为验证数据 val_indices = list(set(list(range(len(sum_list[i]))))-set(train_indices)) # 注释:将训练数据集中的每一个样本添加到 train_list 中 for j in range(len(train_indices)): train_list.append((sum_list[i][train_indices[j]][0],sum_list[i][train_indices[j]][1])) # 注释:将验证数据集中的每一个样本添加到 val_list 中 for l in range(len(val_indices)): val_list.append((sum_list[i][val_indices[l]][0],sum_list[i][val_indices[l]][1]))

注释:将 train_list 写入 train.csv 文件中

with open('train.csv', 'a+', newline='') as a_trian: writer = csv.writer(a_trian) writer.writerows(train_list) a_trian.close()

注释:将 val_list 写入 val.csv 文件中

with open('val.csv', 'a+', newline='') as a_val: writer = csv.writer(a_val) writer.writerows(val_list) a_val.close()

该代码实现的功能是将给定的数据集 sum_list 按照 80% 和 20% 的比例划分为训练数据集和验证数据集,然后将划分好的数据集分别写入 train.csv 和 val.csv 文件中。

train.csv 和 val.csv 文件的来源:由于该代码中没有给出 train.csv 和 val.csv 文件的来源,因此可以推测这两个文件可能是在程序运行之前已经存在的,或者是由其他程序或方法生成的。

Python 代码实现数据集划分:将数据分割为训练集和验证集并保存到 CSV 文件

原文地址: https://www.cveoy.top/t/topic/oD0F 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录