2016-01-07 31 views
1

我有一组数据帧 - 让我们说是report_001,report_002,report_003等 - 我有他们的名称在一个字符向量中,如:将字符向量转换为相同名称的数据帧列表

n <- c('report_001', 'report_002', 'report_003') 

我需要把它变成数据帧列表如下:

dfList <- list(report_001 = report_001, report_002 = report_002, report_003 = report_003) 

,这样我可以指数是这样的:

dfList[['report_002']] 

但是,由于我有大量的数据帧,我不想手动执行此操作。试图做这样的事情,没有工作:

dfList <- sapply(n, function(x) assign(x, as.name(x))) 

对于这个问题,这些数据帧是什么并不重要。为了简单起见,我可以有:

report_001 <- mtcars 
report_002 <- mtcars 
report_003 <- mtcars 

我如何能实现我的数据帧的名称自动转换成同名指数的数据帧的列表?

+1

'dfList < - mget(n)' –

+0

哇...那简单而且基础。甚至不知道。谢谢! – Gopala

回答

3
report_001 <- mtcars 
report_002 <- mtcars 
report_003 <- mtcars 
n <- c('report_001', 'report_002', 'report_003') 
dfList <- mget(n) 
head(dfList[['report_001']]) 
#     mpg cyl disp hp drat wt qsec vs am 
# Mazda RX4   21.0 6 160 110 3.90 2.620 16.46 0 1 
# Mazda RX4 Wag  21.0 6 160 110 3.90 2.875 17.02 0 1 
# Datsun 710  22.8 4 108 93 3.85 2.320 18.61 1 1 
# Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 
# Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 
# Valiant   18.1 6 225 105 2.76 3.460 20.22 1 0 
+1

有趣的是看到名单已经被命名。 –

+0

虽然这是一个冠军,但我有一个可怕的麻烦调用一个闪亮的应用程序后,我的数据集构建此列表。所有看起来都不错,但是当我用空白服务器调用空白的UI时,我得到Error:没有找到'report_001'的值。对于我的生活,我无法弄清楚。奇怪的是,当我在列中使用gsub逗号时,同样的错误会移动到列表中的下一个数据框。有什么想法吗? – Gopala

+0

对于超出第一个问题范围的后续问题,最好完全创建另一个问题。否则,帮助非常困难。 –

相关问题