import random

读取数据集

data = [] with open("data.txt", "r") as file: for line in file: line = line.strip().split(",") features = list(map(int, line[:23])) label = int(line[23]) data.append((features, label))

分类数据

classes = [[] for _ in range(8)] for features, label in data: classes[label].append((features, label))

随机打乱数据集

for class_data in classes: random.shuffle(class_data)

划分训练集、验证集和测试集

train_set = [] valid_set = [] test_set = []

for class_data in classes: train_set.extend(class_data[:8000]) valid_set.extend(class_data[8000:8800]) test_set.extend(class_data[8800:9600])

保存训练集

with open("train_set.txt", "w") as file: for features, label in train_set: file.write(",".join(map(str, features)) + "," + str(label) + "\n")

保存验证集

with open("valid_set.txt", "w") as file: for features, label in valid_set: file.write(",".join(map(str, features)) + "," + str(label) + "\n")

保存测试集

with open("test_set.txt", "w") as file: for features, label in test_set: file.write(",".join(map(str, features)) + "," + str(label) + "\n")

7718323310103103100252142194002100321234771832331010310310025219080201021008649800872802731100701830903103002512390802010010101007在一txt文件夹中有如上格式的数据集每条样本前23位为特征值最后1位为类别标签标签共有8个类别在这个数据集中给每个类别分别随机取8000条作

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

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