精华内容
下载资源
问答
  • 比较概率抽样和非概率抽样的特点,举例说明什么情况下适合采用概率抽样,什么情况下适合采用非概率抽样。 比较分层抽样、系统抽样和整群抽样 直方图和条形图有何区别? 比较三种不同性质的分布 重复抽样和不重复抽样...
  • Bootstrap重抽样方法

    千次阅读 2019-11-10 18:33:05
    数据表示为n个独立观测向量yobsy_{obs}yobs​, 假设求参数的参数θ^(yobs)\hat{\theta}(y_{obs})θ^(yobs​)的置信区间,非参数bootstrap抽样的步骤如下: 从yobsy_{obs}yobs​中不放回的重抽样nnn次,得到...

    Bootstrap重抽样方法

    Bootstrap重抽样数据集的产生方式主要分为3种方法:

    非参数重抽样 Non-parametric resampling

    此方法不假设数据的分布或模型。数据表示为n个独立观测向量yobsy_{obs}, 假设求参数θ^(yobs)\hat{\theta}(y_{obs})的置信区间,非参数bootstrap抽样的步骤如下:

    1. yobsy_{obs}中进行放回的重抽样nn次,得到bootstrap数据集,表示为YY^*
    2. 计算抽样数据集的统计量:θ^=θ^(Y)\hat{\theta}^* = \hat{\theta}(Y^*)
    3. 重复步骤1,2总共BB次,得到θ^\hat{\theta}^*的bootstrap分布。

    从排序后的系列θ^1,θ^2,,θ^B\hat{\theta}_1^*,\hat{\theta}_2^*,\ldots,\hat{\theta}_B^*,可以计算θ^\hat{\theta}^*的置信区间。

    参数重抽样 Parametric resampling

    1. 根据数据计算总体θ\theta的估计值θ^\hat{\theta},方式比如采用极大似然估计;
    2. 把估计值θ^\hat{\theta}代入模型FY(.;θ^)F_Y(.;\hat{\theta}); 从模型抽取nn个观测,形成数据集YY^*;
    3. 计算θ^=θ^(Y)\hat{\theta}^* = \hat{\theta}(Y^*)
    4. 重复2,3步BB次,得到估计量的参数bootstrap分布。

    参数重抽样和非参数重抽样的主要区别在于bootstrap数据集YY^*的生成,如果是从原始数据生成的,是非参数重抽样;如果是原始数据计算估计参数,然后把估计参数代入模型或分布,再生成数据集的,是参数重抽样。

    半参数重抽样 Semi-parametric resampling

    半参数重抽样是指模型y=g(β,x)+ry=g(\beta,x)+rrr是残差。

    1. r~i=rirˉ\tilde{r}_i=r_i - \bar{r},采用非参数方式重抽样方式得到r1,r2,,rnr_1^*, r_2^*, \ldots, r_n^*
    2. 计算bootstrap数据集(参数方法)yi=g(β^,x)+ri,i1,2,3,,ny_i^*=g(\hat{\beta}, x) + r_i^*, \quad i\in 1,2,3,\ldots,n,得到YY^*
    3. 根据生成的数据集YY^*, 计算β\beta^*
    4. 重复步骤1-3 BB次,得到β\beta^*的bootstrap分布。

    和参数重抽样相比,参数重抽样模型随机的数据来自正态分布N(0,σ2)N(0, \sigma^2),半参数重抽样模型随机的数据来自残差(调整)非参数重抽样。

    展开全文
  • 图解拉丁超立方抽样

    千次阅读 2021-03-06 19:06:54
    2拉丁超立方抽样的步骤 首先确定样本数N,既要抽取的样本数目 将(0,1)区间均分为N段 在这M段中的每一段随机的抽取一个值 将抽取的值通过标准正态分布的反函数映射为标准正态分布样本 打乱抽样顺序,用matlab中的...

    拉丁超立方抽样

    1.拉丁超立方抽样

    拉丁超立方抽样技术最早于1979年由McKay等提出,该方法具有以下优点:

    1. 具有均匀分层的特性
    2. 可以在较少抽样的情况下,得到尾部的样本值

    以上两点使得拉丁超立方抽样比起普通的抽样方法更加的高效。

    2拉丁超立方抽样的步骤

    1. 首先确定样本数N,既要抽取的样本数目
    2. 将(0,1)区间均分为N段
    3. 在这N段中的每一段随机的抽取一个值
    4. 将抽取的值通过标准正态分布的反函数映射为标准正态分布样本
    5. 打乱抽样顺序,用matlab中的sort函数

    通过以上五步便完成了拉丁超立方抽样

    3图解拉丁超立方抽样

    在这里插入图片描述
    从图中可以看出,假设我们要进行6次抽样,即N=6,则把竖轴均分为六等份(以蓝线为界),在每一等份中随机抽取一个值(红线与纵轴的焦点)进行映射得到标准正态分布值(红线与横轴的焦点)。

    下面介绍如何在每一等份中抽取一个值

    1. 首先在(0,1)均匀分布随机抽取一个值,用matlab中的函数rand(1,1),表示抽取一个一行一列的服从(0,1)均匀分布的随机数。
    2. 假设先在(0,1/6)区间抽取随机数,那么就需要把刚才在(0,1)区间上抽取的随机数映射到(0,1/6)即可,这就需要用到公式(rand(1,1)/M+(i-1)/M)rand(1,1)/M表示缩小,(i-1)/M表示平移,即(0,1)均匀分布上的随机数经过缩小平移,就映射到了(0,1/6)区域上。。

    图解映射过程

    在这里插入图片描述
    通过六次映射就完成了六个样本的拉丁超立方抽样。可见,拉丁超立方抽样首先将抽样区间分层,然后在每一层中抽取样本,这样就保证了尾部层中的样本也会被抽取,而这些样本对于结果也是十分重要的。当然,抽取样本点数越多,分层就越多,极端的尾部值就更容易被抽取。

    代码展示

    function newz=LHSNoCorr1(M)
    for i=1:M
        z(1,i)=norminv(rand(1,1)/M+(i-1)/M);  %rand(1,1)表示生成一行一列个01均匀分布随机数
    end
    [temp1,O1]=sort(rand(M,1));    %O1表示一个随机序列,他是对随机生成的M个正态分布进行排序后的数列
    newz(1,:)=z(1,O1)';            %利用刚才生成的随机序列来对z进行乱序排列,这样去除了数据之间的相关性
    
    展开全文
  • 21.1 简单随机抽样 1理解并掌握简单随机抽样的定义特点和适用范围 2掌握两种简单随机抽样的步骤并能用简单随机抽样方法抽取样本 1简单随机抽样 (1)定义一般地设一个总体含有N个个体从中_地抽取n个
  • 生成随机样本时,若是简单的随机抽样,会有数据过度...拉丁立方抽样必须首先明确生成的样本个数 n,拉丁立方抽样的步骤: 1. 将 [0, 1] 分为 n 等份,每个小区间内 [i/n, (i+1)/n] 内根据均匀分布随机产生一个数。...

    生成随机样本时,若是简单的随机抽样,会有数据过度聚集的问题,拉丁超立方抽样解决了这个问题。
    下面用图说明两者的区别:
    这里写图片描述
    图中可以看出,简单随机抽样中的数据大部分在中间,而拉丁立方抽样则均匀产生在各个小区间内。

    拉丁立方抽样必须首先明确生成的样本个数 n,拉丁立方抽样的步骤:

    1. 将 [0, 1] 分为 n 等份,每个小区间内 [i/n, (i+1)/n] 内根据均匀分布随机产生一个数。
    2. 将这 n 个随机数的顺序打乱。
    3. 这 n 各数即为每个随机样本的概率,按照概率分布函数的反函数生成随机分布的值。

    n 的值越大,生成的数据效果越好。Matlab 专门有一个 lhsdesign 函数生成拉丁立方抽样的概率矩阵。自己编写了一个 java 的代码如下,例子中生成了 1000 个两阶段的泊松分布样本。

    import java.util.Arrays;
    
    import umontreal.ssj.probdist.Distribution;
    import umontreal.ssj.probdist.PoissonDist;
    import umontreal.ssj.randvar.UniformGen;
    import umontreal.ssj.randvar.UniformIntGen;
    import umontreal.ssj.rng.MRG32k3aL;
    import umontreal.ssj.rng.RandomStream;
    
    /** 
    * @author chen zhen 
    * @version 创建时间:2018年4月11日 下午4:18:55 
    * @value 类说明: latin hypercube sampling
    */
    public class LHS {
    	
    	static RandomStream stream = new MRG32k3aL();
    	
    
    	
    	 // 生成指定分布的样本
    	
    	static double[][] generateLHSamples(Distribution[] distributions, int sampleNum){
    		int periodNum = distributions.length;		
    		double[][] samples = new double[sampleNum][periodNum]; 
    		
    		// 在每个[i/n, (i+1)/n] 内生成一个随机概率,然后根据概率得到指定分布的数
    		for (int i = 0; i < periodNum; i++)
    			for (int j = 0; j < sampleNum; j++) {
    				double randomNum = UniformGen.nextDouble(stream, 0, 1.0/sampleNum);
    				double lowBound = (double) j/ (double) sampleNum;
    				samples[j][i] = lowBound + randomNum;
    				samples[j][i] = distributions[i].inverseF(samples[j][i]);
    			}
    		
    	    shuffle(samples); // 打乱数组
    		return samples;
    	}
    	
    	// 打乱一个二维数组
    	static double[][] shuffle(double[][] samples){
    		for(int i = 0; i < samples[0].length; i++)
    			for (int j = 0; j < samples.length; j++){
    			int mark = UniformIntGen.nextInt(stream, 0, samples.length - 1);
    			double temp = samples[j][i];
    			samples[j][i] = samples[mark][i];
    			samples[mark][i] = temp;
    		}
    		return samples;
    	}
    	
    	public static void main(String[] args) {
    		int sampleNum = 1000;
    		double[] meanDemand = {20, 5};	
    		
    		PoissonDist[] distributions = new PoissonDist[meanDemand.length];
    		for (int i = 0; i < meanDemand.length; i++)
    			distributions[i] = new PoissonDist(meanDemand[i]);
    		
    		
    		double[][] samples = generateLHSamples(distributions, sampleNum);
    		
    		System.out.println(Arrays.deepToString(samples));
    		
    		for (int i = 0; i < meanDemand.length; i++) {
    			double sum = 0; 
    			for (int j = 0; j < sampleNum; j++) {
    				sum += samples[j][i];
    			}
    			System.out.println(sum/sampleNum);
    		}	
    	}
    }
    

    生成样本的均值为 20.003, 4.998,非常接近所需泊松分布的均值。

    展开全文
  • 数据抽样

    2021-03-07 19:05:01
    抽样的数量不能过少,数据集有5个特征,假如每个特征有2个值域,那么数据记录数需要至少在1000(100×5×2)条以上。 如果是分类问题,经过抽样之后不要人为的造成样本分布不均衡问题 简单随机抽样 im

    抽样是从整体样本中通过一定的方法选择一部分样本。抽样是数据处理的基本步骤之一,也是科学实验、质量检验、社会调查普遍采用的一种经济有效的工作和研究方法。

    • 数据量过大的时候,可能不会使用所有的数据去建模,可以使用数据抽样

    • 数据抽样时候,抽样的数据能够反映全面的业务问题

    • 抽样的数量不能过少,数据集有5个特征,假如每个特征有2个值域,那么数据记录数需要至少在1000(100×5×2)条以上。

    • 如果是分类问题,经过抽样之后不要人为的造成样本分布不均衡问题

    简单随机抽样

    import random  # 导入标准库
    import numpy as np  # 导入第三方库
    shuffle_index = np.random.choice(np.arange(data.shape[0]),2000,True)#随机生成200个行号
    data_sample = data[shuffle_index] #从原始数据中取出200个行号对应的数据
    print(data_sample[:2])  # 打印输出前2条数据
    print(len(data_sample))  # 打印输出抽样样本量
    '''
    [[-9.71885153  9.99005726  5.91372197 -5.84789006 -5.90005311]
     [-5.82327998 -8.52454738  7.1583941   1.37501342  3.44036884]]
    2000
    '''

    等距抽样

    # 等距抽样
    data = np.loadtxt('data3.txt')  # 导入普通数据文件
    sample_count = 2000  # 指定抽样数量
    record_count = data.shape[0]  # 获取最大样本量
    width = record_count / sample_count  # 计算抽样间距
    data_sample = []  # 初始化空白列表,用来存放抽样结果数据
    i = 0  # 自增计数以得到对应索引值
    while len(data_sample) <= sample_count and i * width <= record_count - 1:  # 当样本量小于等于指定抽样数量并且矩阵索引在有效范围内时
        data_sample.append(data[int(i * width)])  # 新增样本
        i += 1  # 自增长
    print(data_sample[:2])  # 打印输出前2条数据
    print(len(data_sample))  # 打印输出样本数量
    '''
    [array([-3.08057779,  8.09020329,  2.02732982,  2.92353937, -6.06318211]), 
    array([-2.11984871,  7.74916701,  5.7318711 ,  4.75148273, -5.68598747])]
    2000
    '''

     

    展开全文
  • 水库抽样

    2021-01-01 01:05:11
    输出:这组数据K个均匀抽样 要求: 仅扫描数据一次 空间复杂性为O(K)【和抽样大小有关,和整个数据量无关,不可把所有数据都放在内存里进行抽样】 扫描到数据前n个数字时(n>K),保存当前已扫描数据K...
  • 本文介绍了计数抽样方案(包括计数调整型抽样方案、百分比抽样方案和标准型抽样方案)计算机模拟软件研制过程,它包括了该软件设计步骤及主要技术问题解决。同时介绍了该软件功能和用途,也为计算机开发...
  • 拉丁超立方抽样

    2020-12-09 15:10:17
    但首先,我们要先了解一下分层抽样的相关内容。分层抽样我们考虑一维的单个变量输入问题:y=f(x),x是一个随机变量。分层抽样通过如下的步骤来进行:1) 定义参与计算机运行的抽样数目N;2) 将x等概率地分成若干个...
  • 蓄水池抽样

    2020-04-04 16:48:56
    1. 问题描述 给定一个长度很长数据流,在处理完成之前不知道其具体长度,如何在遍历...2. 蓄水池抽样算法步骤 如果接收数据量小于m,直接放入蓄水池reservoir 如果接收数量大于m,假设是第i个数据,i>=m,...
  • 适当的抽样方法能帮助我们获取更贴合总体特征样本 - 适当的抽样方法能帮助我们获取更贴合总体特征样本 一、先导知识 点估计(point estimation) 我们使用样本data去计算一些用来估计population parameter...
  • 网上有许多关于随机抽样一致性算法介绍,我理解就是用这个算法可以在一堆离散数据中找到在一条直线上数据,步骤如下: (1)新建一个ransac_demo.m脚本,代码如下: function [bestParameter1,...
  • 先选取数据流中前k个元素,保存在集合A中; 从第j(k + 1 &amp;...重复步骤2直到结束,最后集合A中剩下就是保证随机抽取k个元素。 伪代码: Init : a reservoir with the size: ...
  • 抽样量化编码

    千次阅读 2011-05-08 11:38:00
    信号数字化需要三个步骤抽样、量化和编码。抽样是指用每隔一定时间信号样值序列来代替原来在时间上连续信号,也就是在时间上将模拟信号离散化。量化是用有限个幅度值近似原来连续变化幅度值,把模拟信号...
  • 项目验收的步骤和程序

    万次阅读 2019-02-10 14:46:51
    项目验收步骤:1、提出验收申请;2、制订验收计划;3、成立验收委员会;4、进行验收测试和配置审计;5、进行验收评审;6、形成验收报告;7、移交产品。  正式验收步骤:1、承建单位做出关于项目建设情况、...
  • 仅做个人备份,浏览请看原文 题 已知有无法确定的总人数N(人数太多)参与抽奖,要从中随机抽取k个中奖者,要求保证每个中奖...= N),进行如下的步骤: 产生一个从1到n的随机数r 如果r <= k,则将第n个参与者.
  • 本文围绕hive中分桶问题进行展开研究,分析了hive分桶与分区区别,分桶相关原理、分桶优势,并对分桶操作方法进行详细论述,给出了具体操作步骤及案例,本文所有操作案例均在机器上得到验证,读者可根据...
  • 抽样方法广泛运用于资源环境和社会经济...结合具体案例,介绍了各主要抽样模型实际运用步骤。阅读本书只需概率统计基本知识即可。可以供地学和社会科学领域学者在抽样调查、统计推断和监测网优化设计中使用参考。
  • 大数据处理四大步骤

    万次阅读 2019-06-12 21:59:41
    大数据时代处理数据理念三大转变:要全体不要抽样,要效率不要绝对精确,要相关不要因果。 大数据时代处理数据理念三大转变:要全体不要抽样,要效率不要绝对精确,要相关不要因果。 大数据处理流程  ...
  • MCMC抽样算法要点总结

    万次阅读 2015-12-26 03:14:15
    对MCMC抽样算法几个要点(目的、原理、算法步骤、收敛检测方法)进行总结,并给出了有关概念定义,标注了一些学习MCMC算法中需要特别注意地方。最后指出M-H算法和Gibbs算法改进点和这些改进点实现方式。
  • 样是从整体样本中通过一定方法选择一部分样本。抽样是数据处理基本步骤之一,也是科学实验、质量检验、社会调查普遍采用一种经济有效工作和研究方法。
  • numpy2.随机抽样

    2020-11-25 00:32:44
    numpy2随机抽样学习目标:学习内容:学习时间:学习产出:前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 学习目标: 提示:这里可以添加学习目标 例如:一周掌握 Java 入门知识 学习内容: 提示:这里...
  • Bootstrap Sample (有放回抽样)

    万次阅读 2014-12-24 21:59:37
    重复抽样步骤100次,问抽样得到不重复小球个数是多少? 问题分析 首先,问题答案应该是一个概率意义上值。 考虑一个特定小球A,每次抽样A被抽到概率为1/100,A没有被抽到概率为1 - 1/100,则经过100...
  • PCBN模型的参数估计及模拟算法,赵子然,王斌会,本文给出了建立Pair-Copula Bayesian Network(PCBN)模型时参数估计和模拟抽样的步骤,并以具体的算法表示. 参数估计和模拟抽样算法的关键在于
  • 【原】水库抽样详解

    2019-10-03 16:01:51
    此经典算法收录于TAOCP中,但高大爷只给... 选择抽样算法: 可顺序扫描N个记录,对第t+1个记录以概率(n-m)/(N-t)来选择(m为已选得记录数),但这样做必须事先顺序扫描一遍文件以获得N大小。 2. 水库抽样算法:...
  • 整群(聚类)抽样的例子例题与方法步骤 转述一下例子 一个年级有3k名学生,要调查他们的数学成绩吧 一共有60个班(群),每个班50人。 大概只需要调查其中1000人,也就是20个班(群)。 因此只需要在60个群里面随机...
  • RANSAC迭代步骤 RANSAC基础版本每次迭代包括5个步骤: 1.在原始数据中随机选取一个(最小)子集作为假设内点; 2.根据假设内点拟合一个模型; 3.判断剩余原始数据是否符合拟合模型,将其分为内点和外点。...
  • 蓄水池抽样算法

    2018-06-23 00:37:30
    将N个球放入容积为K袋子中,如何保证每个球仍然在袋子中概率相同?1.处理1-K号球时,直接放进袋子里;2.处理第i号球时,以K/i概率决定是否将第i号球放进袋子里。...3.处理第i+1号球时,重复步骤1和2....
  • 导读:抽样是从整体样本中通过一定方法选择一部分样本。抽样是数据处理基本步骤之一,也是科学实验、质量检验、社会调查普遍采用一种经济有效工作和研究方法。作者:宋天龙来源:如需转载请联...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 455
精华内容 182
关键字:

抽样的步骤