假设我有一个矩阵,有m行n列,每个单元格包含一个整数。列表示单个受试者的数据,行表示每个受试者的重复测量。
对于每一列,我想从m行中选择一个(且只有一个),然后计算所有选定单元格的平均值,我想这样做,以便我可以得到所有可能的组合,从m行中为n列中的每一行选择1行。
例如,对于一个3行4列的矩阵,一个选择将(用粗体标记):
87 5 4
6 8 7 5
6 8 9 7
另一个是
8 7 5 4
68 7 5
8 9 7
所以我正在努力与一个算法(我在R工作室工作),它给了我所有可能的"组合",我已经描述。
谁能给我一些关于如何处理这个问题的建议?非常感谢!
问候,
巴特
当您想将4列中的3个元素相互组合时,您将有3^4 = 81种组合。可以使用expand命令。像这样的网格:
dt = data.frame(x1 = c(8,6,6),
x2 = c(7,8,8),
x3 = c(5,7,9),
x4 = c(4,5,7))
dt2 = expand.grid(dt$x1, dt$x2, dt$x3, dt$x4)
dt2$MEAN = apply(dt2, 1, mean)