首页 > 解决方案 > R:如何获取存储在向量中的数据框?

问题描述

我有 20 个 csv 文件,我需要上传我在循环中制作的文件,然后我将每个 data.frame 添加到一个向量中。最后,在向量“list_df”中,我有 20 个元素,其中存储了 20 个数据帧的名称。

现在我正在尝试获取存储在 list_df 中的那些日期帧,但它不起作用。 任何想法如何获取存储在向量中的那些数据帧以进行进一步计算?

list_df[1][column_name] 

或者

list_df[1]$column_name

不工作

path<-'thats my path'

list_of_files<-list.files(path) 

list_df<-c() #creating empty vector
for (i in 1:length(list_of_files)){
  assign(paste("dffile",list_of_files[i],sep=""),(read.table(paste(path,list_of_files[i],sep=""), sep=",", header=TRUE)))
  list_df[i]<-paste("dffile",list_of_files[i],sep="")
}

标签: rdataframevectorread.table

解决方案


我们可以初始化list_df 为一个字符向量

list_df <- character(length(list_of_files))

现在,基于索引的分配应该可以工作了。


由于 'list_df' 包含作为字符串的对象名称,如果我们需要获取这些元素的值,请使用get(对于单个对象)或mget(对于列表中的所有对象)

get(list_df[1])
mget(list_df)

推荐阅读