首页 > 解决方案 > 在 R 中使用 sapply 时如何保留列表的元素名称?

问题描述

我有一个名为 diseaseMutation 的函数,它需要在数据帧joint2 上运行多次,每次都有不同的条件。例如,代码的三个副本如下所示:

Colon <- diseaseMutation(joint2, "Colon/Colorectal Cancer")
Bladder <- diseaseMutation(joint2, "Bladder Cancer")
Lung <- diseaseMutation(joint2, "Lung Cancer")

我想使用以下 lapply 函数对疾病运行循环 diseaseMutation,并将疾病名称保存为每个元素的名称。

results <- lapply(unique(joint2$disease),
                  function(j) diseaseMutation(joint2, j))

如何在运行后应用名称以将疾病保存为输出名称?

标签: r

解决方案


更简单的方法,不需要额外的包

results <- lapply(setNames(nm = unique(joint2$disease)),
                  function(j) diseaseMutation(joint2, j))

推荐阅读