代码
参考文章
#读取txt形式的训练集数据
训练集数据展示形式:数字两两中间均存在空格
# -*- coding: utf-8 -*-
"""
Created on Sat Mar 26 23:20:45 2022
@author:
"""
def loadDataSet(filename): #读取数据
dataMat=[] #X数据特征
labelMat=[] #Y数据类别
with open(filename,'r') as fr:
lines = fr.readlines()
last_line = lines[-1]
#print(last_line)
for line in lines:
lineArr=line.strip().split('t')
'''
#按行读取成列表形式,一个列表包含一行三个数,
#这三个数被引号圈着,为一个大字符串形式,
#两个数中间有两或三个空格 。
#这种:['-0.725568 -0.292022 -1.000000']
'''
lineArr=lineArr[0].split(' ')
'''
#把大字符串取出来,大字符串里各个元素(三个数字和若干空格)
#变成小字符串,不过整体还是被一个列表括着的。
#这种:['-0.725568', '', '', '-0.292022', '', '', '-1.000000']
'''
line1=[]#先建一个空列表
for i in lineArr: #遍历一行列表里的每个元素
if i != '': #如果i不是空格,即为数字
line1.append(i) #把数字存入先前建的line1中
#print(line1)#这种:['-0.725568', '-0.292022', '-1.000000']
dataMat.append([float(line1[0]),float(line1[1])])
labelMat.append(float(line1[2]))
return dataMat,labelMat #返回数据特征和数据类别
filename='train_data.txt'
loadDataSet(filename)
参考文章
https://blog.csdn.net/csqazwsxedc/article/details/71513197



