对Python random模块打乱数组顺序的实例讲解


Posted in Python onNovember 08, 2018

在我们使用一些数据的过程中,我们想要打乱数组内数据的顺序但不改变数据本身,可以通过改变索引值来实现,也就是将索引值重新随机排列,然后生成新的数组。功能主要由python中random模块的sample()函数实现。

sample(population, k) method of random.Random instance
 Chooses k unique random elements from a population sequence or set.

下面的代码实现的是打乱iris数据,iris数据是网上下载的csv格式文件,相信大家不陌生的了,原始数据是三种鸢尾(iris)顺序排列的,三种花分别是:setosa,versicolor 和 virginica ,记录的数据有SepalLengthCm(花萼长度), SepalWidthCm(花萼宽度), PetalLengthCm(花瓣长度), PetalWidthCm (花瓣宽度)

对Python random模块打乱数组顺序的实例讲解

在做聚类分析的时候曾经用到过iris数据,当然,如果安装了scikit learn 模块的话,可以通过

from sklearn import datasets
iris = datasets.load_iris()

获取

参考链接:http://scikit-learn.org/stable/auto_examples/datasets/plot_iris_dataset.html

下面的程序实现打乱iris的数据顺序:

import pandas as pd
import random as rd # 导入random模块,使用里面的sample函数
from pylab import *
iris = pd.read_csv('D:\\Iris.csv')
a1=reshape(iris['Id'],[150,1])
a2=reshape(iris['SepalLengthCm'],[150,1])
a3=reshape(iris['SepalWidthCm'],[150,1])
data=c_[a1,a2,a3]
idx=rd.sample(range(150),150) 

iris = data[idx] # 打乱顺序,这里只选取了花萼长度和宽度这两个特征值

2017/7/10 updated

打乱顺序的方法还可以使用random.shuffle(iterable),这样会直接改变iterable的顺序,shuffle 是洗牌的意思,顾名思义,需要注意的是random.shufle()函数没有返回值,如果写成

mylist = random.shuffle(list1)

将不会得到任何结果

以上这篇对Python random模块打乱数组顺序的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用在线API查询IP对应的地理位置信息实例
Jun 01 Python
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
简单谈谈python的反射机制
Jun 28 Python
Django实现的自定义访问日志模块示例
Jun 23 Python
Python实现爬虫设置代理IP和伪装成浏览器的方法分享
May 07 Python
浅谈Python 多进程默认不能共享全局变量的问题
Jan 11 Python
使用Python调取任意数字资产钱包余额功能
Aug 15 Python
关于python3中setup.py小概念解析
Aug 22 Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
Feb 26 Python
用python对excel查重
Dec 07 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
Dec 10 Python
Python实现Hash算法
Mar 18 Python
Python中对数组集进行按行打乱shuffle的方法
Nov 08 #Python
python绘制热力图heatmap
Mar 23 #Python
Django 路由控制的实现代码
Nov 08 #Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
Nov 07 #Python
在Python中分别打印列表中的每一个元素方法
Nov 07 #Python
对python中数组的del,remove,pop区别详解
Nov 07 #Python
对Python中plt的画图函数详解
Nov 07 #Python
You might like
php中filter_input函数用法分析
2014/11/15 PHP
PHP操作文件的一些基本函数使用示例
2014/11/18 PHP
使用php+swoole对client数据实时更新(一)
2016/01/07 PHP
PHP实现随机数字、字母的验证码功能
2018/08/01 PHP
PHP通过GD库实现验证码功能示例
2019/02/23 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
JavaScript中获取未知对象属性的代码
2011/04/27 Javascript
JS中判断null、undefined与NaN的方法
2014/03/26 Javascript
网页右下角弹出窗体实现代码
2014/06/05 Javascript
jQuery针对各类元素操作基础教程
2014/08/29 Javascript
Angular 页面跳转时传参问题
2016/08/01 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
浅谈Node.js 中间件模式
2018/06/12 Javascript
详解angularjs4部署文件过大解决过程
2018/12/05 Javascript
[01:49]一目了然!DOTA2DotA快捷操作对比第二弹
2014/05/16 DOTA
[31:29]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第一场 12.20
2020/12/23 DOTA
Linux下Python获取IP地址的代码
2014/11/30 Python
python的paramiko模块实现远程控制和传输示例
2017/10/13 Python
Python实现PS图像抽象画风效果的方法
2018/01/23 Python
Django 创建新App及其常用命令的实现方法
2019/08/04 Python
Django Admin后台添加数据库视图过程解析
2020/04/01 Python
django 外键创建注意事项说明
2020/05/20 Python
keras model.fit 解决validation_spilt=num 的问题
2020/06/19 Python
Pytest测试框架基本使用方法详解
2020/11/25 Python
python对输出的奇数偶数排序实例代码
2020/12/04 Python
CSS中的字体大小设置属性总结
2016/05/24 HTML / CSS
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
医药大学生求职简历的自我评价
2013/10/17 职场文书
西门豹教学反思
2014/02/04 职场文书
护士工作失误检讨书
2014/09/14 职场文书
全国法制宣传日活动总结2014
2014/11/01 职场文书
2015年机关纠风工作总结
2015/05/15 职场文书
逃出克隆岛观后感
2015/06/09 职场文书
物业保洁员管理制度
2015/08/05 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书
如何书写公司员工保密协议?
2019/06/27 职场文书