在R中按列替换示例数据帧

问题描述 投票:2回答:1

我有一个包含40列和七个观察值的数据框。我想对数据集进行1000次但按列重新采样。在列外不替换数据。

当我使用带有替换= TRUE的函数样本时。它替换了列。但是,我想做的是仅对列中的数据进行重新采样,并保持每列不变。我也尝试在示例函数中使用参数组,但失败了。

感谢您的帮助。

# example data 
          c1 c2 c3   c4     c5       c40
r1       1.0  2  4  7.0    14.0      3.5
r2       2.0  4  6  8.0    20.0      5.0
r3       3.0  6 10 15.0     3.0      6.0
r4       1.5  3  5  7.5     1.5      3.0
r5       1.5  3  5  7.5     1.5      3.0
r7       1.5  3  5  7.5     1.5      3.0

trial = sample(group1_base, replace = TRUE)

View(trial)

          c1 c2 c1   c4     c5       c4
r1       1.0  2  4  7.0    14.0      3.5
r2       2.0  4  6  8.0    20.0      5.0
r3       3.0  6 10 15.0     3.0      6.0
r4       1.5  3  5  7.5     1.5      3.0
r5       1.5  3  5  7.5     1.5      3.0
r7       1.5  3  5  7.5     1.5      3.0



r resampling
1个回答
1
投票

我们可以用lapply遍历列并执行sample

group1_base[] <- lapply(group1_base, sample, replace = TRUE)
© www.soinside.com 2019 - 2024. All rights reserved.