用pandas划分数据集实现训练集和测试集


Posted in Python onJuly 20, 2020

1、使用model_select子模块中的train_test_split函数进行划分

数据:使用kaggle上Titanic数据集

划分方法:随机划分

# 导入pandas模块,sklearn中model_select模块
import pandas as pd
from sklearn.model_select import train_test_split
# 读取数据
data = pd.read_csv('.../titanic_dataset/train.csv')
# 将特征划分到 X 中,标签划分到 Y 中
x = data.iloc[:, 2:]
y = data.loc['Survived']
# 使用train_test_split函数划分数据集(训练集占75%,测试集占25%)

x_train, x_test, y_train,y_test = train_test_split(x, y, test_size=0.25, ramdon_state=0)

缺点:1、数据浪费严重,只对部分数据进行了验证

            2、容易过拟合

2、k折交叉验证(kfold)

原理:将数据集划分成n个不相交的子集,每次选择其中一个作为测试集,剩余n-1个子集作为            训练集,共生成 n 组数据

使用方法:sklearn.model_select.KFold(n_splits=5,shuffle=False,random_state=0)

参数说明:n_splits:数据集划分的份数,

                  shuffle:每次划分前是否重新洗牌 ,False表示划分前不洗牌,每次划分结果一样,True表示划分前洗牌,每次划分结果不同

                 random_state:随机种子数

(1)shuffle=False 情况下数据划分情况

# 不洗牌模式下数据划分情况
import numpy as np
from sklearn.model_selection import KFold
x = np.arange(46).reshape(23,2)
kf = KFold(n_splits=5,shuffle=False)
for train_index, test_index in kf.split(x):
  print(train_index,test_index)
[ 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22] [0 1 2 3 4]
[ 0 1 2 3 4 10 11 12 13 14 15 16 17 18 19 20 21 22] [5 6 7 8 9]
[ 0 1 2 3 4 5 6 7 8 9 15 16 17 18 19 20 21 22] [10 11 12 13 14]
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 19 20 21 22] [15 16 17 18]
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18] [19 20 21 22]

(2)shuffle=True 情况下数据划分情况 

import numpy as np
from sklearn.model_selection import KFold
x = np.arange(46).reshape(23,2)
kf = KFold(n_splits=5,shuffle=True)
for train_index, test_index in kf.split(x):
  print(train_index,test_index)
[ 0 3 4 5 6 7 8 9 10 11 12 14 15 16 17 19 20 21] [ 1 2 13 18 22]
[ 0 1 2 3 5 6 7 10 11 13 15 16 17 18 19 20 21 22] [ 4 8 9 12 14]
[ 0 1 2 3 4 7 8 9 10 12 13 14 15 16 17 18 19 22] [ 5 6 11 20 21]
[ 1 2 3 4 5 6 8 9 10 11 12 13 14 15 18 19 20 21 22] [ 0 7 16 17]
[ 0 1 2 4 5 6 7 8 9 11 12 13 14 16 17 18 20 21 22] [ 3 10 15 19]

总结:从数据中可以看出shuffle=True情况下数据的划分是打乱的,而shuffle=False情况下数据的划分是有序的

到此这篇关于用pandas划分数据集实现训练集和测试集的文章就介绍到这了,更多相关pandas划分数据集 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现的生成自我描述脚本分享(很有意思的程序)
Jul 18 Python
详解python中的 is 操作符
Dec 26 Python
Pandas中把dataframe转成array的方法
Apr 13 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
使用python的pexpect模块,实现远程免密登录的示例
Feb 14 Python
python实现对列表中的元素进行倒序打印
Nov 23 Python
python飞机大战pygame游戏之敌机出场实现方法详解
Dec 17 Python
详解Python3 中的字符串格式化语法
Jan 15 Python
Python判断字符串是否为合法标示符操作
Sep 03 Python
Python 实现国产SM3加密算法的示例代码
Sep 21 Python
Python爬虫实现selenium处理iframe作用域问题
Jan 27 Python
Python批量解压&压缩文件夹的示例代码
Apr 04 Python
Python数据可视化实现漏斗图过程图解
Jul 20 #Python
浅谈pandas dataframe对除数是零的处理
Jul 20 #Python
为什么说python更适合树莓派编程
Jul 20 #Python
Python faker生成器生成虚拟数据代码实例
Jul 20 #Python
Python DataFrame使用drop_duplicates()函数去重(保留重复值,取重复值)
Jul 20 #Python
python pandas dataframe 去重函数的具体使用
Jul 20 #Python
Pandas中DataFrame基本函数整理(小结)
Jul 20 #Python
You might like
基于php实现长连接的方法与注意事项的问题
2013/05/10 PHP
php实现memcache缓存示例讲解
2013/12/04 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
Laravel5.4框架中视图共享数据的方法详解
2019/09/05 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
2019/10/17 PHP
Convert Seconds To Hours
2007/06/16 Javascript
javascript 文章截取部分无损html显示实现代码
2010/05/04 Javascript
js打印纸函数代码(递归)
2010/06/18 Javascript
Javascript中string转date示例代码
2013/11/01 Javascript
Javascript表单验证要注意的事项
2014/09/29 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
2016/08/02 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
.vue文件 加scoped 样式不起作用的解决方法
2018/05/28 Javascript
JavaScript实现移动小精灵的案例代码
2020/12/12 Javascript
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python机器学习之神经网络(一)
2017/12/20 Python
Python使用base64模块进行二进制数据编码详解
2018/01/11 Python
python逆向入门教程
2018/01/15 Python
Python @property装饰器原理解析
2020/01/22 Python
tensorflow 环境变量设置方式
2020/02/06 Python
利用Python pandas对Excel进行合并的方法示例
2020/11/04 Python
计算机应用专业推荐信
2013/11/13 职场文书
计算机专业毕业生求职信分享
2013/12/24 职场文书
博士学位自我鉴定范文
2013/12/26 职场文书
网上商城创业计划书范文
2014/01/31 职场文书
开门红主持词
2014/04/02 职场文书
2014年学校法制宣传日活动总结
2014/11/01 职场文书
结婚保证书
2015/01/16 职场文书
老乡会致辞
2015/07/28 职场文书
品德与社会教学反思
2016/02/24 职场文书
创业计划书之小型广告公司
2019/10/22 职场文书
CSS3 制作的彩虹按钮样式
2021/04/11 HTML / CSS
python 安全地删除列表元素的方法
2022/03/16 Python