我有一个SBML file,其中包含一系列生化反应的详细信息。每个反应都有一组反应物(代谢物)。我的目标是获得每个反应的反应物列表。我可以手动访问反应物列表,如下所示。
library(SBMLR)
currentFile = readSBML("Sample.xml")
currentReactants = currentFile$reactions$R_DM_4CRSOL$reactants
此处 R_DM_4CRSOL 是第一个反应的名称。每当我想获得反应物列表时,我需要指定reactionID。但问题是我有2700个反应,我需要自动化这个过程。我尝试将ReactioinID分配给变量并执行如下命令。但它没有如下工作。
a = "R_DM_4CRSOL"
b = currentFile$reactions$a$reactants
最后我想到为每个反应创建一个可执行命令的字符串。我能够创建字符串,但我不知道如何执行它。我尝试使用sys但它给了我一个警告如下。
a = "$R_DM_4CRSOL"
b = paste("currentFile$reactions",a,"$reactants",sep="")
d = system(b)
警告消息:正在运行命令 ' currentFile $ $反应$ R_DM_4CRSOL反应'状态为127
有人可以告诉我如何实现这一目标?提前谢谢。