我有许多名称相似的数据框,我想将它们放入一个列表中。
数据框的名称包括"df1b"、"df10b"、"df273b"等。数据框名称的中间部分始终由数字组成。
我有一个部分解决方案,但它是有缺陷的。我希望列表包含以"df"开头并以"b"结尾的所有数据帧。我已经尝试了这个解决方案。
list <- mget(ls(pattern = "df.b"))
但是,此解决方案仅适用于"df"和"b"之间有一个数字的名称。如何修改代码以适用于"df"和"b"之间的任意数量的数字字符?
你可以
试试
list_df <- mget(ls(pattern = "^df\d+b$"))
这将得到所有以 df
开头并以 b
结尾的对象。
试试这个:
list <- mget(ls(pattern = "^df[0-9]+b$"))
请注意,pattern
包含一个正则表达式:
-
^df
表示您需要以 df 开头的元素。 -
[0-9]+
表示至少应有一个数字(+
表示"一个或多个"( -
b$
意味着它应该以b
结尾。
尝试:
list <- mget(ls(pattern = "df.*b"))