R语言 基于组进行随机抽样
R编程语言为我们提供了许多包,可以从数据对象、数据框架或数据表中提取随机样本,并将它们汇总成组。
方法1:使用plyr库
可以安装 “plyr “库,并将其加载到工作空间中,用来进行数据操作和统计。ddply()方法被应用于指定数据框架的每个子集,然后将结果合并到一个数据框架中。
语法
ddply(.data, .variables, .fun = NULL)
参数 –
data – 要使用的数据框
variables – 分组参数
fun – 要应用的函数。在本例中,应用sample(nrow(x),y)方法,从ddply()方法的第二个参数中选择的变量中提取每组的y行。
例子
输出
方法2:使用dplyr库
可以安装 “dplyr “库,并将其加载到工作空间,用于执行数据操作。这个包允许大量的方法来过滤、子集和提取基于应用约束和条件的数据。数据框架使用管道操作符进行多种操作。
group_by方法是用来根据特定列中包含的组来划分和隔离日期的。需要分组的列被指定为这个函数的一个参数。它可以包含多个列名。
语法
group_by(col1, col2, ...)
随后应用sample_n()方法从数据框中选择随机行,参数为从每组中抽出的行数。
例子
输出
方法3:使用data.table
库data.table可以用来快速汇总组织成表格结构的大量数据。该包可以被加载并安装到工作空间中。
数据表的索引可以使用.SD参数进行,该参数使用 “by “参数选择一个样本分组数据。从每组中选择的行数取决于索引方法中指定的大小属性。输出结果以data.table的形式返回。
语法
例子
输出