浅析pandas随机排列与随机抽样

随机排列

利用 numpy.random.permutation() 函数,可以返回一个序列的随机排列。将此随机排列作为 take() 函数的参数,通过应用 take() 函数就可实现按此随机排列来调整 Series 对象或 DataFrame 对象各行的顺序。
其示例代码 example1.py 如下:

import numpy as np
import pandas as pd
#创建DataFrame
df = pd.DataFrame(np.arange(12).reshape(4,3))
print(df)
 0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11

#创建随机排列
order = np.random.permutation(4)
#通过随机排列调整DataFrame各行顺序
newDf = df.take(order)
print(newDf)
 0 1 2
2 6 7 8
3 9 10 11
0 0 1 2
1 3 4 5

随机抽样

随机抽样是指随机从数据中按照一定的行数或者比例抽取数据。随机抽样的函数如下:

numpy.random.randint(start,end,size)

函数中的参数说明如下:

  • start:随机数的开始值;
  • end:随机数的终止值;
  • size:抽样个数。

通过 numpy.random.randint() 函数产生随机抽样的数据,通过应用 take() 函数就可实现随机抽取 Series 对象或 DataFrame 对象中的数据。其示例代码 example2.py 如下

import numpy as np
import pandas as pd
#创建DataFrame
df = pd.DataFrame(np.arange(12).reshape(4,3))
print(df)
0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11

#随机抽样
order = np.random.randint(0,len(df),size=3)
#通过随机抽样抽取DataFrame中的行
newDf = df.take(order)
print(newDf)
0 1 2
0 0 1 2
1 3 4 5
1 3 4 5

以上就是详解pandas随机排列与随机抽样的详细内容,更多关于pandas随机排列与随机抽样的资料请关注我们其它相关文章!

(0)

相关推荐

  • Pandas直接读取sql脚本的方法

    之前有群友反应同事给了他一个几百MB的sql脚本,导入数据库再从数据库读取数据有点慢,想了解下有没有可以直接读取sql脚本到pandas的方法. 解析sql脚本文本文件替换成csv格式并加载 我考虑了一下sql脚本也就只是一个文本文件而已,而且只有几百MB,现代的机器足以把它一次性全部加载到内存中,使用python来处理也不会太慢. 我简单研究了一下sql脚本的导出格式,并根据格式写出了以下sql脚本的读取方法. 注意:该读取方法只针对SQLyog导出的mysql脚本测试,其他数据库可能代码需要

  • 使用pandas实现筛选出指定列值所对应的行

    在pandas中怎么样实现类似mysql查找语句的功能: select * from table where column_name = some_value; pandas中获取数据的有以下几种方法: 布尔索引 位置索引 标签索引 使用API 假设数据如下: import pandas as pd import numpy as np df = pd.DataFrame({'A': 'foo bar foo bar foo bar foo foo'.split(), 'B': 'one one

  • python读写数据读写csv文件(pandas用法)

    python中数据处理是比较方便的,经常用的就是读写文件,提取数据等,本博客主要介绍其中的一些用法.Pandas是一个强大的分析结构化数据的工具集;它的使用基础是Numpy(提供高性能的矩阵运算);用于数据挖掘和数据分析,同时也提供数据清洗功能. 一.pandas读取csv文件 数据处理过程中csv文件用的比较多. import pandas as pd data = pd.read_csv('F:/Zhu/test/test.csv') 下面看一下pd.read_csv常用的参数: panda

  • pandas按照列的值排序(某一列或者多列)

    按照某一列排序 d = {'A': [3, 6, 6, 7, 9], 'B': [2, 5, 8, 0, 0]} df = pd.DataFrame(data=d) print('排序前:\n', df) ''' 排序前: A B 0 3 2 1 6 5 2 6 8 3 7 0 4 9 0 ''' res = df.sort_values(by='A', ascending=False) print('按照A列的值排序:\n', res) ''' 按照A列的值排序: A B 4 9 0 3 7

  • Pandas 数据框增、删、改、查、去重、抽样基本操作方法

    总括 pandas的索引函数主要有三种: loc 标签索引,行和列的名称 iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0 ix 是 iloc 和 loc的合体 at是loc的快捷方式 iat是iloc的快捷方式 建立测试数据集: import pandas as pd df = pd.DataFrame({'a': [1, 2, 3], 'b': ['a', 'b', 'c'],'c': ["A","B","C"]}) p

  • python使用pandas抽样训练数据中某个类别实例

    废话真的一句也不想多说,直接看代码吧! # -*- coding: utf-8 -*- import numpy from sklearn import metrics from sklearn.svm import LinearSVC from sklearn.naive_bayes import MultinomialNB from sklearn import linear_model from sklearn.datasets import load_iris from sklearn.

  • pandas抽取行列数据的几种方法

    取行和列的几种常用方式: data[ 列名 ]: 取单列或多列,不能用连续方式取,也不能用于取行. data.列名: 只用于取单列,不能用于行. data[ i:j ]: 用起始行下标(i)和终止行下标(j)取单行或者连续多行,不能用于列的选取. data.loc[行名,列名]: 用对象的.loc[]方法实现各种取数据方式. data.iloc[行下标,列下标]: 用对象的.iloc[]方法实现各种取数据方式. 首先生成一个DataFrame对象: import pandas as pd sco

  • python Pandas如何对数据集随机抽样

    摘要:有时候我们只需要数据集中的一部分,并不需要全部的数据.这个时候我们就要对数据集进行随机的抽样.pandas中自带有抽样的方法. 应用场景: 我有10W行数据,每一行都11列的属性. 现在,我们只需要随机抽取其中的2W行. 实现方法很简单: 利用Pandas库中的sample. DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None) n是要抽取的行数.(例如n

  • 浅析pandas随机排列与随机抽样

    随机排列 利用 numpy.random.permutation() 函数,可以返回一个序列的随机排列.将此随机排列作为 take() 函数的参数,通过应用 take() 函数就可实现按此随机排列来调整 Series 对象或 DataFrame 对象各行的顺序. 其示例代码 example1.py 如下: import numpy as np import pandas as pd #创建DataFrame df = pd.DataFrame(np.arange(12).reshape(4,3)

  • 浅析pandas 数据结构中的DataFrame

    DataFrame 类型类似于数据库表结构的数据结构,其含有行索引和列索引,可以将DataFrame 想成是由相同索引的Series组成的Dict类型.在其底层是通过二维以及一维的数据块实现. 1. DataFrame 对象的构建 1.1 用包含等长的列表或者是NumPy数组的字典创建DataFrame对象 In [68]: import pandas as pd In [69]: from pandas import Series,DataFrame # 建立包含等长列表的字典类型 In [7

  • pandas之query方法和sample随机抽样操作

    query方法 在 pandas 中,支持把字符串形式的查询表达式传入 query 方法来查询数据,其表达式的执行结果必须返回布尔列表.在进行复杂索引时,由于这种检索方式无需像普通方法一样重复使用 DataFrame 的名字来引用列名,一般而言会使代码长度在不降低可读性的前提下有所减少. 例如 In [61]: df.query('((School == "Fudan University")&' ....: ' (Grade == "Senior")&am

  • Pandas sample随机抽样的实现

    随机抽样,是统计学中常用的一种方法,它可以帮助我们从大量的数据中快速地构建出一组数据分析模型.在 Pandas 中,如果想要对数据集进行随机抽样,需要使用 sample() 函数. sample() 函数的语法格式如下: DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None) 参数说明如下表所示: 参数名称 参数说明 n 表示要抽取的行数. frac 表示抽取的比

  • 浅析Python pandas模块输出每行中间省略号问题

    关于Python数据分析中pandas模块在输出的时候,每行的中间会有省略号出现,和行与行中间的省略号....问题,其他的站点(百度)中的大部分都是瞎写,根本就是复制黏贴以前的版本,你要想知道其他问题答案就得去读官方文档吧. #!/usr/bin/python # -*- coding: UTF-8 -*- import numpy as np import pandas as pd import MySQLdb df = pd.read_csv('C:\\Users\\Administrato

  • 深入浅析python的第三方库pandas

    pandas模块 pandas是一个强大的分析结构化数据的工具集:它的使用基础是Numpy(提供高性能的矩阵运算):用于数据挖掘和数据分析,同时也提供数据清洗功能. 作为pandas系列的最终章,本文引出一个数据"复制"问题. 示例如下: 从上图中可以看到:我们对data_pd做了删除一行的操作,但是这并没有改变变量data_pd在内存中的值,而是将删减一行后的数据放置在一块新开辟的内存区域. 可以这么理解,这种机制是在复制的一份原数据上进行操作,从而保护原数据不受改变,保证了原数据的

  • pandas如何删除没有列名的列浅析

    实际工作中,偶尔遇到如下情况,例如使用Pandas计算如下相关系数,并把结果写入Excel文件中. correlations = df.corr(method='pearson',min_periods=1) #计算特征之间的相关系数矩阵 correlations.to_excel('dcorr202002.xlsx') 当再次读取Excel文件时,出现了没有列名的列. import pandas as pd correlations= pd.read_excel('dcorr202002.xl

  • Python 数据处理库 pandas进阶教程

    前言 本文紧接着前一篇的入门教程,会介绍一些关于pandas的进阶知识.建议读者在阅读本文之前先看完pandas入门教程. 同样的,本文的测试数据和源码可以在这里获取: Github:pandas_tutorial. 数据访问 在入门教程中,我们已经使用过访问数据的方法.这里我们再集中看一下. 注:这里的数据访问方法既适用于Series,也适用于DataFrame. 基础方法:[]和. 这是两种最直观的方法,任何有面向对象编程经验的人应该都很容易理解.下面是一个代码示例: # select_da

随机推荐