一、初始数据类型
使用数据样例为excel表中的文本类型,一共两列,第一列为文本数据,第二列为数据标签,为数字。
示例:
数据文本 | 标签 |
---|---|
AAAAAAAAA | 1 |
BBBBBBB | 2 |
CCCCCCCCCC | 1 |
DDDDDD | 3 |
… | … |
二、步骤代码
1.引入库
代码如下(示例):
from sklearn.model_selection import train_test_split
import xlrd
import xlwt
2.数据要求
这里要求使用数据传入必须是xls 格式,如果表格格式为xlsx,由于xlrd库的高版本不再支持xlsx格式,就会产生无法读取的错误。
(可以修改xlsx为xls格式,但是不能直接修改后缀,要打开之后另存为xls或者另外创建一个xls并复制数据)
3.读入数据
代码如下(示例):
将数据按6:2:2将数据分隔为训练集、测试集、验证集
f1 = xlrd.open_workbook('初始数据表.xls')
sheet = f1.sheet_by_index(0)
rows = sheet.nrows
data = [[] for i in range(rows-1)]
for i in range(1, rows):
data[i-1] = sheet.row_values(i)[0:2] # 去掉序号,取四个数据
for i in range(0,len(data)):
#如果是String类型的数据,strip()方法那么可以将文本前后的所得空格去掉
if isinstance(data[i][0], str):
data[i][0] = data[i][0].strip()
#分为测试集和训练集,测试集占比0.2
train, c_test = train_test_split(data, test_size=0.2, random_state=42)
#将训练集的四分之一设置为验证集,使训练集、测试集、验证集的比例为6:2:2
c_train, c_dev = train_test_split(train, test_size=0.25, random_state=42)
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("Sheet")
for i in range(len(c_train)):
for j in range(len(c_train[i])):
sheet.write(i, j, c_train[i][j])
workbook.save("train.xls")
workbook2 = xlwt.Workbook()
sheet = workbook2.add_sheet("Sheet")
for i in range(len(c_test)):
for j in range(len(c_test[i])):
sheet.write(i, j, c_test[i][j])
workbook2.save("test.xls")
workbook3 = xlwt.Workbook()
sheet = workbook3.add_sheet("Sheet")
for i in range(len(c_dev)):
for j in range(len(c_dev[i])):
sheet.write(i, j, c_dev[i][j])
workbook3.save("dev.xls")