import csv
import numpy as np
def readData(filename):
"""
:param filename:cvs数据文件
:return: X1,y1,X2,y2,X3,y3
X: list with shape[50,4],特征 //更新:此处应该为[x;1],为shape[50,5],后面对应修改
y: list with shape[50,],标签
"""
X1, X2, X3 = [], [], []
y1, y2, y3 = [], [], []
# 读数据
with open(filename, 'r') as f:
reader = csv.reader(f)
for line in reader:
if line[4] == 'Iris-setosa':
X1.append([float(line[0]), float(line[1]), float(line[2]), float(line[3]), 1.0])
y1.append(line[4])
elif line[4] == 'Iris-versicolor':
X2.append([float(line[0]), float(line[1]), float(line[2]), float(line[3]), 1.0])
y2.append(line[4])
else:
X3.append([float(line[0]), float(line[1]), float(line[2]), float(line[3]), 1.0])
y3.append(line[4])
return X1, X2, X3, y1, y2, y3
def te