小白研究生学习,学习机器入门,学习来源黑马程序员
1.先导包
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
2.训练集与测试集准备
以sklearn自带的鸢尾花数据集为主,一下代码是将150条数据,按照0.8和0.2的比例划分为训练集和测试集。
def datasets_demo():
'''
sklearn数据集使用
return
'''
#获取数据集
iris = load_iris();
print("鸢尾花数据集的返回值:\n", iris);
print("鸢尾花的属性:\n",iris["DESCR"]);
print("查看特征值的名字:\n",iris.feature_names);
print("查看特征值:\n",iris.data,iris.data.shape);
#数据集划分
#print(iris.data.shape);
x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=0.2,random_state=22);
# 默认为0.25
print("训练集的特征值:\n",x_train,x_train.shape);
return None
if __name__== "__main__":
#代码1:sklearn数据集使用
datasets_demo()
以下代码是将鸢尾花数据集生成scv保存到本地,不需要可以忽略。
from sklearn import datasets
import pandas as pd
breast_cancer = datasets.load_breast_cancer()
data = pd.DataFrame(data=breast_cancer.data,columns=breast_cancer.feature_names)
print(data)
data.to_csv('./load_iris',index=None)
总结:
1.机器学习一般的数据集会划分为两个部分:
①训练数据:用于训练,构建模型
②测试数据;在模型验证时使用,用于评估模型是否有效
③划分比例:
训练集:70% 80% 75%
测试集:30% 20% 25%
2.数据集划分api
sklearn.model_selection.train_test_split(arrays,*options)
x数据集的特征值
y数据集的标签值
test-size测试集的大小,一般为float
radom_state随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果不同。 不同的算法比较效果,再用数据集划分这个方法,种子相同。
训练集特征值 | 测试集特征值 | 训练集目标值 | 测试集目标值 |
x_train | x_test | y_train | y_test |