1
A
回答
6
replicate(3, sample(200, 50))
其中200
是數據幀中的行數(相應地進行調整)。更自動的,假設數據是在對象df
replicate(3, sample(nrow(df), 50))
下面是一個例子
set.seed(10)
df <- data.frame(x1 = rnorm(1000), x2 = rnorm(1000))
ind <- replicate(3, sample(nrow(df), 50))
head(ind)
> head(ind)
[,1] [,2] [,3]
[1,] 380 220 702
[2,] 75 751 720
[3,] 775 278 153
[4,] 988 612 340
[5,] 282 568 925
[6,] 266 794 812
列包含你想要的3子集。然後,您可以使用它來索引原始數據幀,例如
df[ind[,1], "x2"]
> df[ind[,1], "x2"]
[1] 0.57982435 0.27016645 -0.08435526 1.16768142 1.38124150 0.62444167
[7] -0.54887437 1.91301831 1.84116197 0.94045377 -1.15417235 -0.06809104
[13] -2.03652525 1.06773801 -0.34235315 -0.24707548 -1.80470122 0.11993674
[19] -0.36358182 0.16819156 -1.84507669 -0.16707925 -1.80789383 0.78894210
[25] -0.05741295 -0.28905260 2.38724835 2.75762831 -0.18082554 1.61820620
[31] -0.48192569 -0.03298339 0.52087746 0.32774925 1.52103207 -0.15619668
[37] -0.49687983 -0.06623606 2.21855213 -0.48727519 1.01115806 0.25213485
[43] 1.01927105 0.31362619 0.40260968 0.26795767 0.01803656 0.19579576
[49] -0.26464131 0.48141105
其中I採取所述第一子集和僅可變x2
。
注意這裏假定您想要樣品沒有更換;換句話說df
中的每一行都可以發生0或1次只有在一個子集中,而不是多次。如果您想要後者,請參閱?sample
中的replace
參數。
1
@Gavin解決方案很好,但它可能會生成非空交集的子集。我的解決方案保證每行最多隻有一個子集。
k <- 3
x <- sample(nrow(df), 50*k, replace = FALSE)
split(x, ceiling(seq_along(x)/50))
$`1`
[1] 595 392 370 504 494 167 633 264 648 465 757 566 914 406 104 486 965 360 426 724 442 583
[23] 252 732 588 513 76 514 142 843 923 806 540 470 128 356 20 391 117 879 185 977 849 820
[45] 174 170 157 737 692 308
$`2`
[1] 48 207 7 415 850 777 525 85 389 440 503 459 718 455 865 108 453 810 864 608 567 184
[23] 731 954 575 579 784 795 435 898 106 53 450 841 916 768 26 919 860 502 858 481 225 303
[45] 272 646 49 422 803 320
$`3`
[1] 596 447 516 789 948 893 218 838 100 493 958 410 353 982 93 581 188 822 660 230 696 891
[23] 892 368 161 786 50 326 984 944 478 483 690 776 642 522 203 475 325 449 305 134 463 582
[45] 432 548 759 1 578 825
相關問題
- 1. MSSQL選擇在大數據中隨機
- 2. R中的多個隨機選擇
- 3. 從文件中選擇隨機數據
- 4. 從數據框中隨機選擇列
- 5. 從數據庫中隨機選擇
- 6. 選擇隨機數
- 7. 在r中隨機化數據幀
- 8. 在R中隨機分割數據
- 9. 在R中隨機分類數據
- 10. 在SQLite中沒有數據返回時選擇隨機數據
- 11. 隨機選擇XSLT中的節點
- 12. 使用DataMapper選擇隨機數據
- 13. 根據隨機數選擇物品
- 14. 隨機選擇直方圖數據MATLAB
- 15. 如何選擇隨機數據庫ID?
- 16. memcached與隨機選擇數據庫
- 17. 選擇隨機
- 18. 隨機選擇
- 19. 隨機選擇
- 20. 隨機選擇
- 21. 從mvc4中的數據庫中選擇隨機數據C#
- 22. 隨機選擇飛機中的點,選擇更接近點的概率更高
- 23. 選擇一個隨機數
- 24. 隨機數 - 選擇種子
- 25. 隨機函數選擇
- 26. 隨機選擇函數
- 27. 隨機選擇函數
- 28. AS2數組隨機選擇
- 29. jQuery - 隨機選擇數字
- 30. 隨機數字選擇