复制相同的data.frame n次并将它们保存到列表中

时间:2017-05-08 17:31:34

标签: r list dataframe replicate

我只需要复制我的data.frame n次(例如100次)并将所有输出保存到列表中。

它应该非常简单明了,但我找不到任何解决方案。

假数据。框架:

df = read.table(text = 'a b
1 2
5 6
4 4
11 78
23 99', header = TRUE)

3 个答案:

答案 0 :(得分:7)

使用lapply

df_list <- lapply(1:100, function(x) df)

答案 1 :(得分:5)

我们可以使用replicate

n <- 100
lst <- replicate(n, df, simplify = FALSE)

答案 2 :(得分:1)

如果您将rep包裹在list中,可以使用rep,因为df_list <- rep(list(df), 100) str(df_list[1:2]) #> List of 2 #> $ :'data.frame': 5 obs. of 2 variables: #> ..$ a: int [1:5] 1 5 4 11 23 #> ..$ b: int [1:5] 2 6 4 78 99 #> $ :'data.frame': 5 obs. of 2 variables: #> ..$ a: int [1:5] 1 5 4 11 23 #> ..$ b: int [1:5] 2 6 4 78 99 尝试返回您传递的相同类型的对象:

int[]