14

如何将数据框添加到 R 中的列表中?我正在尝试以下代码。

首先,我从 csv 文件创建一个数据框(任何 csv 文件都可以)

> a <- read.csv(csvFile)
> class(a)
[1] "data.frame"

所以,我有一个名为“a”的数据框。现在我创建一个包含一个字符项的列表,如下所示

> b <- list("hello world")

现在,我将我的数据框“a”附加到列表 b 中,如下所示

> b[[length(b)+1]] <- a
> class(b)
[1] "list"
> length(b)
[1] 2

到目前为止,一切都很好。列表 b 现在有 2 个项目(字符串“hello world”和数据框 a)。现在让我困惑的是以下代码

> class(b[2])
[1] "list"

为什么 class(b[2]) 显示为列表而不是数据框?我希望能够将我的数据框“a”添加到列表“b”中,而无需将 a 隐式转换为列表。谁能帮我理解如何做到这一点?

4

1 回答 1

16

这记录在?"["(或?Extract)中,在“递归(类似列表)对象”部分(强调添加):

'[' 索引类似于原子向量并选择指定元素的列表。

'[[' 和 '$' 都选择列表的单个元素

由于b[2]返回一个列表,因此您要使用[[,即b[[2]]

于 2012-08-16T15:19:13.010 回答