请问如何通过图中的程序写出一个读取X y跟数据类别的结果,不能改变程序内容 只能在def里面加,不能用sklearn读取
可以这样处理:
def loadiris_dataset(filename):
with open(filename) as data_file:
lines=data_file.readlines()
X = []; y1=[]
index = 0
#解析文件数据到列表
for line in lines:
line = line.strip()
listFromLine = line.split(',')
X.append(list(map(float,listFromLine[0:4])))
y1.append(listFromLine[-1])
index += 1
class_labels=list(set(y1))
y=[]
for i in y1:
if i=='Iris-setosa':
y.append(0)
elif i=='Iris-versicolor':
y.append(1)
else:
y.append(2)
return X,y,class_labels
#例如,调用函数
X,y,class_labels=loadiris_dataset('data/iris.data')
with open(filename,'r') as f:
iris_data = f.read().strip()
这样就读取成功了,然后设置一下数据和标签就可以了