【发布时间】:2018-01-23 19:41:55
【问题描述】:
以下是数据示例:
Test.Statistic P FDR_P Bonferroni_P Control_mean NH4._mean
1 8.203199 0.01654619 0.7405529 1 0.00 0.000000
2 7.622793 0.02211727 0.7405529 1 0.00 1.095238
3 7.501205 0.02350357 0.7405529 1 2.10 1.761905
4 6.510000 0.03858082 0.7405529 1 0.85 0.000000
5 6.149339 0.04620490 0.7405529 1 0.65 5.095238
6 6.052381 0.04850005 0.7405529 1 0.00 1.428571
NO3._mean
1 0.4285714
2 1.1904762
3 1.1428571
4 0.0000000
5 3.4285714
6 0.0000000
我想将公式 (trt_mean/control_mean)-1 应用于每个处理列(NH4 和 NO3)。我合并了一些 cmets,但仍然无法在 dt 中调用第 1 列(control_mean)。
dt <- as.data.frame.table(kw_res)
cols <- grep("_mean", colnames(dt))
rel_abund_function <- function(z) {
return((z / z[, 1])-1)
}
dt[, lapply(cols, rel_abund_function)]
有什么建议吗?
【问题讨论】:
-
你能发布一些示例数据吗?
-
请提供一个可重现的示例供我们使用并发布该示例的预期输出。您可以使用
dput(head(df))显示您的一些数据。