对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 的 with 语句详解
Jun 13 Python
python将每个单词按空格分开并保存到文件中
Mar 19 Python
python通过Windows下远程控制Linux系统
Jun 20 Python
python+Splinter实现12306抢票功能
Sep 25 Python
Python实现的KMeans聚类算法实例分析
Dec 29 Python
pyshp创建shp点文件的方法
Dec 31 Python
python使用正则筛选信用卡
Jan 27 Python
Linux下升级安装python3.8并配置pip及yum的教程
Jan 02 Python
Python中的sys.stdout.write实现打印刷新功能
Feb 21 Python
对django 2.x版本中models.ForeignKey()外键说明介绍
Mar 30 Python
Pytorch十九种损失函数的使用详解
Apr 29 Python
Python代码需要缩进吗
Jul 01 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
解析isset与is_null的区别
2013/08/09 PHP
PHP $_FILES中error返回值详解
2014/01/30 PHP
smarty中js的调用方法示例
2014/10/27 PHP
php过滤表单提交的html等危险代码
2014/11/03 PHP
js代码实现微博导航栏
2015/07/30 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
ThinkPHP5.1验证码功能实现的示例代码
2020/06/08 PHP
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
基于JQuery的抓取博客园首页RSS的代码
2011/12/01 Javascript
封装html的select标签的js操作实例
2013/07/02 Javascript
jquery文本框中的事件应用以输入邮箱为例
2014/05/06 Javascript
js+html5操作sqlite数据库的方法
2016/02/02 Javascript
jQuery绑定事件-多种实现方式总结
2016/05/09 Javascript
javascript 利用arguments实现可变长参数
2016/11/21 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
Nodejs回调加超时限制两种实现方法
2017/06/09 NodeJs
jquery单击文字或图片内容放大并居中显示
2017/06/23 jQuery
Angular实现双向折叠列表组件的示例代码
2017/11/21 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
微信小程序 导入图标实现过程详解
2019/10/11 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
[02:19]DOTA选手解说齐贺岁
2018/02/11 DOTA
[15:20]DOTA2-DPC中国联赛 正赛 Elephant vs Aster 选手采访
2021/03/11 DOTA
python基于queue和threading实现多线程下载实例
2014/10/08 Python
tensorflow转换ckpt为savermodel模型的实现
2020/05/25 Python
用python对excel进行操作(读,写,修改)
2020/12/25 Python
关于box-sizing的全面理解
2016/07/28 HTML / CSS
西班牙语在线票务市场:SuperBoletería
2019/06/10 全球购物
TUMI香港官网:国际领先的行李箱、背囊品牌
2021/03/01 全球购物
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
大四毕业生学习总结的自我评价
2013/10/31 职场文书
中文专业毕业生自荐书范文
2014/01/04 职场文书
美德好少年主要事迹
2014/01/29 职场文书
机电专业求职信
2014/06/14 职场文书
2015年社区计生工作总结
2015/04/21 职场文书