主要内容

datasample.

从数据中随机取样,有无替换

描述

例子

y= datasample (数据K.的)回报K.从数据中随机采取的观察均匀地取样,从数据中替换数据

例子

y= datasample (数据K.暗淡的)返回沿尺寸采取的样本暗淡数据

例子

y= datasample (___名称,价值的)返回上一个语法中的任何输入参数的示例,其中一个或多个名称值对参数指定的其他选项。例如,'替换',假指定不替换抽样。

例子

y= datasample (S.___的)使用随机数流S.产生随机数。的选项S.可以在前一个语法中之前在任何输入参数之前。

例子

[yidx] = DataSample(___的)还返回指示哪个值的索引矢量datasample.从采样数据使用先前语法中的任何输入参数。

例子

全部收缩

为再现性创建随机数流。

s = RandStream (“mlfg6331_64”);

从整数中绘制五个唯一的值110

Y =数据征(S,1:10,5,“替换”假)
y =1×51 . 9 8 6 6

为再现性创建随机数流。

s = RandStream (“mlfg6331_64”);

生成48序列中的随机字符acgt.每个指定的概率。

seq = datasample(年代,“ACGT”现年48岁的'重量',[0.15 0.35 0.35 0.15])
seq ='ggcggcgcaaggcgccggacctggctgcacgccgttcctgctactcg'

设置随机种子以进行结果的再现性。

rng (10,'twister'的)

生成一个10行1000列的矩阵。

x = randn(10,1000);

创建随机数流的再现性datasample.

s = RandStream (“mlfg6331_64”);

随机选择五列唯一列X

X, Y = datasample(年代,5,2,“替换”假)
Y =10×50.4317 -0.3327 0.9112 -2.3244 0.9559 0.6977 -0.7422 0.4578 -1.3745 -0.8634 -0.8543 -0.3105 0.9836 -0.6434 -0.4457 0.1686 0.6609 -0.0553 -0.1202 -1.3699 -1.7649 -1.1607 -0.3513 -1.5533 0.0597 -0.3821 0.5696 -1.6264 -0.2104 -1.5486-1.6844 0.7148 -0.6876 -0.4447 -1.4615-0.4170 1.3696 1.1874 -0.9901 0.5875 -0.2410 1.4703 -2.5003 -1.1321 -1.8451 0.6212 1.4118 -0.4518 0.8697 0.8093

从数据集数组重新取样观察以创建引导复制数据集。看到引导重采样有关引导的更多信息。

加载样本数据集。

加载医院

创建一个大小与医院数据集,并包含从医院数据集。

y = datasample(医院、尺寸(医院,1));

根据从另一个向量中选择的样本的索引,从数据中选择样本。

生成两个随机向量。

x1 = randn (100 1);x2 = randn (100 1);

选取10向量的元素x1,并返回向量中的样品的索引idx

[idx日元]= datasample (x1, 10);

选取10向量的元素x2使用载体中的索引idx

Y2 = x2(IDX);

输入参数

全部收缩

要采样的输入数据,指定为向量、矩阵、多维数组、表或数据集数组。默认情况下,datasample.的第一个非单次维的样本数据.例如,如果数据是一个矩阵datasample.行中的示例。改变这种行为暗淡输入参数。

数据类型:||逻辑|字符|字符串|桌子

样本数量,指定为正整数。

例子:datasample(100年数据)返回从数据中均匀随机采样的100个观察值数据

数据类型:|

样本的维度,指定为正整数。例如,如果数据是一个矩阵暗淡2y包含一系列列数据.如果数据是表或数据集数组和暗淡2y包含一系列变量数据.用暗淡确保沿特定尺寸取样,不论是否数据是矢量,矩阵或N.- 阵列数量。

数据类型:|

随机数流,指定为全局流或RandStream.例如,s = randstream('mlfg6331_64')创建一个使用乘法滞后斐波那契生成算法的随机数流。有关详细信息,请参见创建和控制随机数流

rng函数提供了一种控制全局流的简单方法。例如,rng(种子)使用非负整数种子给随机数生成器种子。有关详细信息,请参见使用RandStream管理全局流

名称 - 值参数

指定可选的逗号分离对名称,价值参数。的名字是参数名称和价值为对应值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“替换”,假的,“权重”,那些(datasize, 1)不需要替换的样本,其概率与元素成正比重量,在那里数据化为被采样维度的大小。

替换取样指示器,指定为逗号分隔对组成“替换”,要么真正的错误的

替换等样品“替换”真正的,或者如果没有替代“替换”错误的.如果“替换”错误的, 然后K.不能大于被采样尺寸的大小。例如,如果data = [1 3 Inf;2 4 5]y = datasample(数据、k“取代”,假), 然后K.不能大于2

数据类型:逻辑

抽样权值,指定为逗号分隔的对,由'重量'和一个非负数值的向量。向量是大小的数据化,在那里数据化为被采样维度的大小。向量必须至少有一个正值且不能包含值。这datasample.概率与元素成比例的函数样本'重量'

例子:'Weights',[0.1 0.5 0.35 0.46]

数据类型:|

输出参数

全部收缩

样本,返回为向量,矩阵,多维数组,表或数据集数组。

  • 如果数据是一个矢量,然后y是一个含有的矢量K.元素选择数据

  • 如果数据是一个矩阵暗淡=1, 然后y是一个包含的矩阵K.行选自数据.或者,如果暗淡=2, 然后y是一个包含的矩阵K.选中的列数据

  • 如果数据是一个N.- 统计阵列和暗淡=1, 然后y是一个N.- 沿着第一个不连贯的尺寸截取的样本数量数据.或者,如果您为暗淡名称值对参数,datasample.沿尺寸的样本暗淡

  • 如果数据是一张表暗淡=1, 然后y是一个包含K.行选自数据.或者,如果暗淡=2, 然后y是一个包含K.变量选择数据

  • 如果数据是一个数据集数组和暗淡=1, 然后y是一个包含的数据集数组K.行选自数据.或者,如果暗淡=2, 然后y是一个包含的数据集数组K.变量选择数据

如果输入数据包含缺少的观察结果值,datasample.从整个输入,包括值。例如,y = data ([NaN 6 14],2) / /数据可以返回y = NaN 14

当样本被替换(默认)时,y可以包含重复的观察数据.设定取代名称 - 值对参数错误的取样而不更换。

索引,作为向量指示指示哪个元素的矢量datasample.选择从数据创建y.例如:

  • 如果数据是一个矢量,然后y =数据(idx)

  • 如果数据是一个矩阵暗淡=1, 然后y =数据(idx,:)

  • 如果数据是一个矩阵暗淡=2, 然后y =数据(:,idx)

提示

  • 使用范围更换,使用随机整数,使用兰迪

  • 要采样随机整数而不进行替换,请使用randpermdatasample.

  • 从数据中随机采样,有或没有更换,使用datasample.

算法

datasample.使用randperm兰特,或兰迪生成随机值。因此,datasample.改变matlab的状态®全局随机数生成器。控制随机数生成器使用rng

用于在不替换的情况下选择加权样品,datasample.使用Wong和Easton的算法[1]

替代功能

您可以使用兰迪randperm生成随机抽样的指数,分别分别有或不替换。然而,datasample.可以更方便地使用,因为它直接来自您的数据。datasample.还允许加权采样。

参考文献

[1] Wong, c.k.和m.c. Easton。“一种有效的不替换加权抽样方法”。计算学报9(1), pp. 111-113, 1980。

扩展功能

介绍在R2011B.