• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

候乐

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

数据集

  • scikit learn python语言机器学习的工具有着丰富的API 数据集有着训练和测试两个不同的 具体多上自己定

  • scikit learn接口有 分类 聚类 回归 特征工程 模型选择 调优

  • 加载数据集 sklearn.datasets

    • datasets.load_*() 加载小规模的数据数据包
    • datasets.fetch_*(data_home = 数据集默认下载目录)默认 ~/scikit_learn_data/
    • sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’)训练集【 train(训练) test(测试) all(全部)】
    • 数据集返回值得类型
      • data:特征数据数组,是 [n_samples * n_features] 的二维 numpy.ndarray 数组
      • target:标签数组,是 n_samples 的一维 numpy.ndarray 数组
      • DESCR 数据描述
      • feature_names 特征名字
      • target_names:标签名
    • 鸢尾花数据集是原则20世纪30年代的经典数据集。它是用统计进行分类的鼻祖。该数据集包括3个鸢尾花类别,每个类别有50个样本。其中一个类别是与另外两类线性可分的,而另外两类不能线性可分。
    • 鸢尾花就是前面有着四个数据然后会判断第五字段的属性是哪一个 里面有共有三个属性 鸢尾花数据一共150组 就是150行
  • 数据集 进行划分

  • from sklearn.model_selection import train_test_split

    • x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=22)
    • x 数据集的特征值
    • y 数据集的标签值
    • test_size 测试集的大小,一般为float
      random_state 随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。
  • 这里面主要是用了鸢尾花就是因为他是现成的数据 使用起来比较方便 然后在sklearn里面发现这个API的种子数量不同结果就不同 然后还有自动他给分开了 使用数据是多少 测试的是多少 这里就是 112/150 38/150

  • fit(x,y)传两个参数的是有监督学习的算法,fit(x)传一个参数的是无监督学习的算法,比如降维、特征提取、标准化。

  • fit和transform没有任何关系,之所以出来这么个函数名,仅仅是为了写代码方便,所以会发现transform()和fit_transform()的运行结果是一样的。

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split


iris = load_iris()

# print("鸢尾花数据 ",iris)
# print("----------------")
# print(iris["data"])
# print("----------------")
# print(iris.target)
# print("----------------")
# print(iris.feature_names)
# print("----------------")
# print(iris.target_names)
# print("----------------")
# print(iris.DESCR)

# xtrain,xtest,ytrain,ytest = train_test_split(iris.data,iris.target, random_state=30)
# print(xtrain)
# print("----------------------")
# print(xtrain.shape)
# print("----------------------")
# print(ytrain.shape)
# print("----------------------")
# print(xtest.shape)
# print("----------------------")
# print(ytest.shape)

 # 2、对鸢尾花数据集进行分割
# 训练集的特征值x_train 测试集的特征值x_test 训练集的目标值y_train 测试集的目标值y_test
x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=22)
print("x_train:\n", x_train.shape)
# 随机数种子
x_train1, x_test1, y_train1, y_test1 = train_test_split(iris.data, iris.target, random_state=6)
x_train2, x_test2, y_train2, y_test2 = train_test_split(iris.data, iris.target, random_state=6)
print("如果随机数种子不一致:\n", x_train == x_train1)
print("-------------------------")
print("如果随机数种子一致:\n", x_train1 == x_train2)

posted on 2020-04-03 19:12  候乐  阅读(235)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3