【发布时间】:2020-02-19 15:20:08
【问题描述】:
我正在尝试从具有 1000 行(和六列)的数据框中选择随机行,其中行的偏度大于给定值(例如 Sk > 0.3)。
我已经生成了以下数据框
df=data.frame(replicate(6,sample(10:100,1000,rep=TRUE)))
我可以从 fbasics 包中获得行偏度:
rowSkewness(df) 给出:
[8] -0.2243295435 0.5306809351 0.0707122386 0.0341447417 0.3339384838 -0.3910593364 -0.6443905090
[15] 0.5603809206 0.4406091534 -0.3736108832 0.0397860038 0.9970040772 -0.7702547535 0.2065830354
但是现在,我需要选择 df 的 10 行,它们的行偏度大于 0.1... 可能与
for (a in 1:10) {
sample.data[a,] = sample(x=df[wich(rowSkewness(df[sample(1:nrow(df),1)>0.1),], size = 1, replace = TRUE)
}
还是这样的?
对此的任何想法将不胜感激。 提前致谢。
【问题讨论】:
标签: r dataframe select random rows