对数据集中每行的列进行 t.test

lei*_*ili 3 statistics r dataframe hypothesis-test t-test

我有一组数据x,由 12 列和 167 行组成。第一列是每行的复合 ID。我想t.test将 3 列作为一组运行,将其他 3 组作为第二组运行,每行分别运行。我的代码如下,但它不起作用。

for (i in 1:nrow(x)) {
 function(i)c(compound=i,
    t.test(x[2:4],x[8:10],
      x[x$compound==i, ],
      alternative='two.sided',conf.level=0.95)
    )
}
print(c(compound=i,t.test(x[2:4],x[8:10],x[x$compound==i,],
    alternative='two.sided',conf.level=0.95)))
Run Code Online (Sandbox Code Playgroud)

我的目的是t.test对 AC 组和 SC 组之间的每种代谢物(化合物)进行分析,这是两组细胞。

compound    AC-1     AC-2     AC-3     AM-1      AM-2      AM-3      SC-1     SC-2     SC-3     SM-1      SM-2      SM-3
alanine     27612820 22338050 15359640 19741350  18726880  18510800  10914980 12071660 16036180 16890860  16066960  16364300
arginine    7067206  7172234  5933320  136272600 131596800 134717600 6102838  7186256  6770344  140127100 155341300 151748000
asparagine  3151398  2141378  1240904  11522180  8907711   9842342   1677299  2265826  2942991  11690360  12552660  12102620                        
Run Code Online (Sandbox Code Playgroud)

Ada*_*amm 5

x$stat <- sapply(1:nrow(x), function(i) t.test(as.numeric(as.character(unlist(x[i,2:4]))), as.numeric(as.character(unlist(x[i,8:10]))))[c("p.value")])
Run Code Online (Sandbox Code Playgroud)