【发布时间】:2022-11-19 00:40:47
【问题描述】:
假设我有这么多数据集(假设有 1000 个数据集):
df1 = data.frame(x = 1:10)
df2 = data.frame(x = 2:11)
df3 = data.frame(x = 3:5)
df4 = data.frame(x = 11:20)
我想创建一个名为 L 的列表,如下所示
L = list(df1,df2,df3,df4)
但是如果我有数千个数据帧,就很难在列表中写下每个数据帧的名称。会花很长时间。想要一个可以使创建此列表更容易的功能。谢谢。
【问题讨论】:
-
您的数据框的名称是否有规律?他们是否按顺序命名为 df1、df2、df3 等等?
-
对,那是正确的
-
L = lapply(1:4, function(x) {get(paste0("df",x)) })其中 4 是数据帧末尾的最大数字。 -
非常感谢。您能否将您的答案添加到答案部分,以便每个人都可以看到答案。再次感谢
-
你最初是如何创造这些的?最好不要有一堆名称中带有索引的变量。如果您首先在列表中创建这些相关表,那么思考会容易得多。虽然技术上您可以使用
get()或mget(),但在 R 中它确实是一种糟糕的代码味道。