【发布时间】:2018-02-13 20:22:08
【问题描述】:
我以前问过这些问题,并在 Saga 的帮助下解决了这个问题。 我正在进行一项模拟研究。我必须重新组织我的结果并继续分析。
我有一个数据矩阵,其中可能包含这样的结果
> 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(它) %>% 切片(which.min(F))
小标题: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 值。
例如,当我使用 data$X[i] 时,此代码不会选择 X 的值(0.30、1.56、2.08)。它在分组之前从“数据”中选择原始值。我怎么解决这个问题?
【问题讨论】:
-
你能提供一个可复制的例子*.com/questions/5963269/…
-
你想要的输出是什么?如果为
It的每个值找到F的最小值,sapply(unique(data$It), function(i) min(subset(data, It == i)$F)是否有效?
标签: r