Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有一个R函数来重复创建对象?_R_Loops_For Loop_Object - Fatal编程技术网

是否有一个R函数来重复创建对象?

是否有一个R函数来重复创建对象?,r,loops,for-loop,object,R,Loops,For Loop,Object,我有一个数据框架(虽然我不认为我拥有的源对象的类型很重要),它有一个51个基因的列表,我希望获得路径信息(使用rWikiPathways,但同样,这也可以应用于更一般的问题) 我想用从rWikiPathways检索到的这51个基因的信息创建一个对象 我一直在尝试使用for循环、赋值和粘贴函数,但没有任何东西能像我希望的那样工作,因此我复制了这行代码51次: pathway.gene.1也许你需要list2env list2env(setNames(Vectorize(findPathwaysBy

我有一个数据框架(虽然我不认为我拥有的源对象的类型很重要),它有一个51个基因的列表,我希望获得路径信息(使用rWikiPathways,但同样,这也可以应用于更一般的问题)

我想用从rWikiPathways检索到的这51个基因的信息创建一个对象

我一直在尝试使用for循环、赋值和粘贴函数,但没有任何东西能像我希望的那样工作,因此我复制了这行代码51次:


pathway.gene.1也许你需要
list2env

list2env(setNames(Vectorize(findPathwaysByXref)(genes$Encode.ID,"En"),paste0("pathway.gene.",1:51)),.GlobalEnv)

说明
代码
集合名(lapply(genes$Encode.ID,findPathwaysByXref,“En”),paste0(“pathway.gene.”,1:51)
为您提供从
findPathwaysByXref
获得的命名值列表,而
list2env
帮助您从列表到全局环境生成具有给定名称的对象。

路径。gene我更喜欢使用帧列表,而不是环境中的单个、相同用途/结构化对象请看,从中您可以看到使用
lappy
并将所有返回值捕获到单个
列表中的价值。可以稍微改进上面的My
lappy
来命名条目(如果需要的话)从这里开始,无论你倾向于在一个
pathway.gene.#
对象上做什么,你都可以用
lappy(pathway.gene,function(pwg)…)
。谢谢!这与@ThomasIsCoding所说的非常相似,列出了一个列表,实际上列出了其中的每个对象。但是,接下来你又产生了一个新问题:关于
pathway.gene.1
pathway.gene.2
pathway.gene.3
,…,
pathway.gene.51
,在你的环境中,你是如何处理的它们?你可以把
get
assign
弄得一团糟,但要把它们放在一个列表中(跳过这个答案的
list2env
部分)无论你下一步做什么,通常都会容易得多。嘿,这帮了大忙!真的是我一直在寻找的,因为现在我有一个列表列表,最终可以查看它来提取个人数据之类的。list2env所做的对于我可能需要它的东西来说确实有点太多了。非常感谢!@GregorThomas Yes,没错,为了方便起见,最好将所有这些对象都放在列表中,而不是放在全局环境中use@GTrentadue不客气!也许你可以跳过
list2env
list2env(setNames(lapply(genes$Encode.ID, findPathwaysByXref, "En"),paste0("pathway.gene.",1:51),.GlobalEnv)