Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何选择要在for循环中使用的数据帧对象_R - Fatal编程技术网

如何选择要在for循环中使用的数据帧对象

如何选择要在for循环中使用的数据帧对象,r,R,我想创建一些数据帧对象的不同类型的绘图。我的工作区中有25个数据帧对象,但我只想要其中16个的绘图 为什么要创建一个for循环,只选择这16个对象 我不知道这是否有帮助,但这16个对象的名称以单词“top_”开头,它们的行数和列数都相同(所有其他对象的大小都不同) 关于,这可能有助于: ls(pattern="^top_") 请注意,如果您有多个数据帧(或其他对象)想要执行完全相同的操作,那么从长远来看,如果您将这些数据帧/对象放在一个列表中并在其中使用它们,您的生活将变得更轻松 快速将数据

我想创建一些数据帧对象的不同类型的绘图。我的工作区中有25个数据帧对象,但我只想要其中16个的绘图

为什么要创建一个for循环,只选择这16个对象

我不知道这是否有帮助,但这16个对象的名称以单词“top_”开头,它们的行数和列数都相同(所有其他对象的大小都不同)

关于,

这可能有助于:

 ls(pattern="^top_")

请注意,如果您有多个数据帧(或其他对象)想要执行完全相同的操作,那么从长远来看,如果您将这些数据帧/对象放在一个列表中并在其中使用它们,您的生活将变得更轻松

快速将数据帧放入列表的一种方法是使用
mget

mydata <- mget( ls(pat='^top_') )
现在,如果要从每个数据帧绘制
x
y
列,可以执行以下操作:

lapply( mydata, function(df) plot(df$x, df$y) )


请提供最小值(例如,4个微小的数据帧,您希望绘制其中的2个),并向我们展示您的尝试。欢迎访问该网站@user2794659。你需要为这个问题添加一个答案。太好了!!费迪南德,你帮了我很多!非常感谢。我将完成代码并将其发布在这里。谢谢Greg,提供了这些有用的信息!嗨,伙计们,有些事你们可能已经知道了。。。但它可能对某些人有用:这个代码lappy(ls(pattern=“^top”),函数(x)get(x))似乎与这个mget(ls(pat=“^top”)相等,因为两者都创建了一个包含元素的列表。尽管如此,使用第一个代码您无法获得名称!这可能是一个很大的缺点!
lapply( mydata, function(df) plot(df$x, df$y) )
lapply( names(mydata), function(dfn) plot( y ~ x, data=mydata[[dfn]], main=dfn ) )
for( i in seq_along(mydata) ) {
  plot( y ~ x, data= mydata[[i]], main=names(mydata)[[i]] )
}