将字符向量转换为相同名称的数据帧列表

时间:2016-01-07 16:01:58

标签: r

我有一组数据框 - 我们称之为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 个答案:

答案 0 :(得分: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