2016-05-13 59 views
0

我有一个字符串列表list = c("string_1", "string_2", ...),并且基于此向量,我知道在我的环境中有数据框名为df_string_1, df_string_2, ...将一些函数应用于其字符串名称中的变量

我的代码是这样的:

for (i in 1:length(list)){ 
    res = function(i) // dataframe depending on i, same ncol as df_string_i 
    rbind(df_list[i],res) // that's the line I don't know how to code 
} 

我不能找到一个办法让在每次迭代数据帧df_string_i。 我的尝试是得到它的名字paste("df_",list[i],sep=""),但是,那么我该如何处理这个字符串,因为我需要变量在rbind中?

感谢您的帮助!

回答

0

如果您有一个名为df_string_1,...,df_string_n的data.frames的情况,那么从长远来看,将它们存储在列表中并使用工具(如lapply)会更好。为了解决目前的问题,请使用get

for (i in 1:length(list)){ 
    res = function(i) // dataframe depending on i, same ncol as df_string_i 
    rbind(get(paste0("df_",list[i])),res) 
} 
+0

啊,你打我几秒钟的答案。我正在删除我的。但是请注意,数据帧存储为'df_list_i',所以它必须是'paste0'('df_list _',i)'。 – shreyasgm

+0

get()完美无缺!谢谢。是的,我知道所有应用功能,但鉴于我拥有的数据结构,很难使用它。谢谢shreyasgm以及:) – galzra

+0

谢谢@shreyasgm。我认为OP编辑了这个。最新的更新有'list = c(“string_1”,“string_2”,...)'和'paste(“df _”,list [i],sep =“”)''。 – lmo

相关问题