循环两个数据框进行元分析
Loop two data frames to make meta analysis
我有 DF1
和 DF2
具有相同的维度,例如,
DF1
hr se m
1 0.5 1.5 a
2 1.5 2.5 b
3 2.5 3.5 c
4 3.5 4.5 d
DF2
hr se m
5 4.5 5.5 a
6 5.5 6.5 b
7 6.5 7.5 c
8 7.5 8.5 d
我需要做元分析。
我知道对于一个 DF
的所有行,我可以将其设为
library(rmeta)
d <- meta.summaries(DF1$hr, DF1$se, names = DF1$m, method = c("fixed"))
但我想要的是对这两个数据框的每一行进行元分析。例如,DF1
的 row 1
与 DF2
的 row 1
进行元分析。
我可能认为我需要循环或 lapply
函数。
感谢您提供任何提示或建议。
一个选择是只使用 rbind
,然后 split
by m
得到一个列表:
df3 <- rbind(df1, df2)
split(df3, df3$m)
$a
hr se x m
1 1 0.5 1.5 a
5 5 4.5 5.5 a
$b
hr se x m
2 2 1.5 2.5 b
6 6 5.5 6.5 b
$c
hr se x m
3 3 2.5 3.5 c
7 7 6.5 7.5 c
$d
hr se x m
4 4 3.5 4.5 d
8 8 7.5 8.5 d
然后您可以使用 for
循环或 lapply
来获得结果。为此,只需 Google 表示 for loop R
或 apply family R
.
我有 DF1
和 DF2
具有相同的维度,例如,
DF1
hr se m
1 0.5 1.5 a
2 1.5 2.5 b
3 2.5 3.5 c
4 3.5 4.5 d
DF2
hr se m
5 4.5 5.5 a
6 5.5 6.5 b
7 6.5 7.5 c
8 7.5 8.5 d
我需要做元分析。
我知道对于一个 DF
的所有行,我可以将其设为
library(rmeta)
d <- meta.summaries(DF1$hr, DF1$se, names = DF1$m, method = c("fixed"))
但我想要的是对这两个数据框的每一行进行元分析。例如,DF1
的 row 1
与 DF2
的 row 1
进行元分析。
我可能认为我需要循环或 lapply
函数。
感谢您提供任何提示或建议。
一个选择是只使用 rbind
,然后 split
by m
得到一个列表:
df3 <- rbind(df1, df2)
split(df3, df3$m)
$a
hr se x m
1 1 0.5 1.5 a
5 5 4.5 5.5 a
$b
hr se x m
2 2 1.5 2.5 b
6 6 5.5 6.5 b
$c
hr se x m
3 3 2.5 3.5 c
7 7 6.5 7.5 c
$d
hr se x m
4 4 3.5 4.5 d
8 8 7.5 8.5 d
然后您可以使用 for
循环或 lapply
来获得结果。为此,只需 Google 表示 for loop R
或 apply family R
.