保存for循环

时间:2017-09-05 13:48:36

标签: r

我之前已经问过这些问题,并在佐贺的帮助下解决了这个问题。 我正在进行模拟研究。我必须重新组织我的结果并继续分析。

我有一个包含可能结果的数据矩阵

> data
It S  X     Y   F
1  1  0.5  0.8  2.39
1  2  0.3  0.2  1.56
2  1  1.56 2.13 1.48
3  1  2.08 1.05 2.14
3  2  1.56 2.04 2.45
.......

显示迭代 S显示在IT内部工作的第二次迭代 X表示从方法获得的X的坐标 Y表示从方法获得的Y的坐标 F显示F统计量。

我的问题是我必须为每次迭代找到最小F值。所以我必须将每次迭代存储在不同的矩阵或数据帧上,并找到最小的F值。

我尝试过很多东西但没有奏效。任何帮助,想法将不胜感激。

编辑:更新了表格信息

这是解决方案:

  

库(dplyr)

     

数据%>%      group_by(It)%>%      切片(which.min(F))

A tibble:3 x 5

群组:[3]

 It     S     X     Y     F

1 1 2 0.30 0.20 1.56 2 2 1 1.56 2.13 1.48 3 3 1 2.08 1.05 2.14

但是,我将继续另一个for循环,我想选择提供上述条件的每个X值。

例如当我使用数据$ X [i]时此代码不选择X的值(0.30,1.56,2.08)。它在分组之前从“数据”中选择原始值。我怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

我希望这是你所期待的:

> library(dplyr)

> data %>% 
   group_by(It) %>% 
   slice(which.min(F))

# A tibble: 3 x 5
# Groups:   It [3]
     It     S     X     Y     F
  <dbl> <dbl> <dbl> <dbl> <dbl>
1     1     2  0.30  0.20  1.56
2     2     1  1.56  2.13  1.48
3     3     1  2.08  1.05  2.14