gpt4 book ai didi

r - 将字符串转换为 R 中函数的内容用于管道

转载 作者:行者123 更新时间:2023-12-04 10:15:46 27 4
gpt4 key购买 nike

我正在使用 makeContrasts作为管道的一部分(带有 limma)。
我有几项研究,这些研究一个接一个地进入管道。对于其中两个,makeContrasts 函数如下所示:

aarts_1_cm = makeContrasts(R10d = labelR - labelP,
R1nMRap = labelR1 - labelP,
R10nMRap_OSKM = labelR10 - labelO,
levels = Design)


aarts_2_cm = makeContrasts(OSKM14 = labelO14 - labelP14,
OSKM14mTORsh_OSKM14p21sh = labelOT14 - labelOp14,
OSKM20mTORsh_OSKM20p21sh = labelOT20 - labelOp20,
levels = Design)

由于每项研究的对比不同,我无法将它们合并到流程中。因此,我将函数的内容转换为字符串:
aarts_2 = "OSKM14 = labelO14 - labelP14,
OSKM14mTORsh_OSKM14p21sh = labelOT14 - labelOp14,
OSKM20mTORsh_OSKM20p21sh = labelOT20 - labelOp20,
levels = Design"

这样我就可以做 makeContrasts(unstring(aarts_2)) ,但我不知道如何解开 aarts_2以便函数读取它。或者如果有更好的方法来做到这一点。我将不胜感激。

谢谢。

最佳答案

我认为没有办法写 unstring你想要的功能,但你可以这样做:

makeContrastsFromString <- function(s)
eval(parse(text = paste("makeContrasts(", s, ")")))

然后
makeContrastsFromString(aarts_2)

应该给你想要的。我没有测试过,因为我无法安装 limma获取 makeContrasts .我的功能很脆弱;如果用户将行拆分为字符串向量的单独元素,则它将不起作用。我会把它留给你,让它对那种事情有抵抗力。

关于r - 将字符串转换为 R 中函数的内容用于管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61064678/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com