我可以列出按日期排序的对象吗?

Fra*_*fka 7 r

这对我来说非常有用.我可以ls()按日期(最后修改或类似的东西)对输出进行排序吗?

背景:我有一个非常凌乱的工作空间,各种各样的data.frames,variablesplots.我需要找到一个data.frame,我不记得我称它为什么,只是我最近正在研究它.因此ls()按修改日期排序将帮助我找出我称之为的内容.

澄清一下:这不是关于使用的问题history().我经常使用历史记录,并且在我认为可能需要时经常保存它.在这种情况下,历史不包括所需的时间,所以我找不到data.frame使用history().

附加:除了找到最近创建的任务之外data.frame,一般来说,能够ls()根据日期排序是非常有用的.我在工作区中有超过100个物体,我已经工作了2年多(搜索2年history也听起来不是很有趣).如果可以按时间顺序对这些对象进行排序,那么我会想到哪些对象是较新的(可能是编辑过的),哪些是较旧的(也许是原始的).

我试图通过将单个对象缓慢移动到较小的相关工作空间来改进我的工作流程.但是这个过程需要时间,而且基本上没有意义(因为我接近数据分析的结束).

flo*_*del 2

不可以,但您应该使用该history函数通过您运行的最新命令来查找其名称。

默认情况下,history将显示最后 25 行代码,但您可以通过执行以下操作来请求更多内容:

history(max.show = 100)
Run Code Online (Sandbox Code Playgroud)

您可以显示的行数也有严格限制。它等于环境变量的值,R_HISTSIZE默认值为 512。但正如文档所述:

会话期间保留的历史记录行数没有限制 [...]

所以你可以这样做:

Sys.setenv("R_HISTSIZE" = 10000)
history(max.show = 10000)
Run Code Online (Sandbox Code Playgroud)

并且您应该能够看到自开始会话以来的所有历史记录(假设您运行的代码少于 10000 行。)