我在全局环境中有10个数据框 – 5个具有名称模式,另外5个具有另一个命名模式.我想将具有相同命名模式的数据帧放入每个列表中(两个列表 – 每个模式一个),所以最终我可以使用这样的lapply对每个列表运行检查:
@H_301_19@解决方法
lapply(listofdataframes,function(x) range(x[,"date"]))`
因此命名模式是 – 模式1:q32013local,q42013local,q12014local等.
模式2:q32013国家,q42013国家等
我以前用过这个:
Filter(function(x) is(x,"data.frame"),mget(ls()))`
但它显然列出了全球环境中的所有数据框.
我一直在寻找如何使用grep和ls.我在这里找到了关于它的bash等效问题List files with certain extensions with ls and grep但是没有R等价物.我确实提到了这两个相关的问题,但它们完全不同:
Return elements of list as independent objects in global environment,How can I make a list of all dataframes that are in my global environment?
我使用了以下内容,显然需要对每个模式重复一次.
Pattern1<-grep("local",names(.GlobalEnv),value=TRUE) Pattern1_list<-do.call("list",mget(Pattern1))