Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.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
从R中加载.rda文件获取数据帧的名称_R_Load_Dataframe_Rda - Fatal编程技术网

从R中加载.rda文件获取数据帧的名称

从R中加载.rda文件获取数据帧的名称,r,load,dataframe,rda,R,Load,Dataframe,Rda,我试图在r中加载一个.rda文件,它是一个保存的数据帧。不过我不记得它的名字了 我试过了 a<-load("al.rda") 我也尝试过使用=符号 如何加载这个.rda文件以便使用它 我用load重新启动R(“al.rda”),我知道会出现以下错误 Error: C stack usage is too close to the limit 在名称参数中使用“attach”和“ls”。类似于: attach("al.rda") ls("file:al.rda") 数据文件现在位于位置

我试图在r中加载一个.rda文件,它是一个保存的数据帧。不过我不记得它的名字了

我试过了

a<-load("al.rda")
我也尝试过使用=符号

如何加载这个.rda文件以便使用它

我用load重新启动R(“al.rda”),我知道会出现以下错误

Error: C stack usage is too close to the limit

在名称参数中使用“attach”和“ls”。类似于:

attach("al.rda")
ls("file:al.rda")
数据文件现在位于位置2的搜索路径上,很可能是。请执行以下操作:

search()
ls(pos=2)
作为启示。键入保存在al.rda中的任何对象的名称现在都会得到它,除非您在搜索路径位置1中有东西,但是R可能会用一些消息警告您,如果有东西掩盖了另一个东西

但是,我现在怀疑您在RData文件中没有保存任何内容。原因有二:

  • 你说你没有收到错误信息
  • 负载表示没有负载
  • 我可以重复这种情况。如果您保存(file=“foo.RData”),那么您将得到一个空的RData文件-您可能想做的是保存所有对象的save.image(file=“foo.RData”)


    你的.rda文件有多大?如果它小于100字节(我的空RData文件长度为42字节),那么我怀疑这就是问题所在。

    load函数会返回它加载的变量列表。我怀疑你在加载“al.rda”时确实出错“。加载时R究竟输出什么

    它应该如何工作的示例:

    编辑由于加载文件时出现错误,因此文件可能在某种程度上已损坏。试试这个,说出它打印的内容:

    file.info("a1.rda") # Prints the file size etc...
    readBin("a1.rda", "raw", 50) # reads first 50 bytes from the file
    

    如果无法访问该文件,很难进行更多调查。。。也许你可以分享这个文件(http://www.filedropper.com 或者类似的)?

    我不得不重新安装R…不知怎的,它被损坏了。我所期望的简单命令

    load("al.rda")
    

    终于成功了。

    我通常使用save只保存单个对象,然后使用下面的实用程序方法使用load将该对象检索到给定的变量名中,但检索到临时名称空间中,以避免覆盖现有对象。也许这对其他人也有帮助:

    load_first_object <- function(fname){
        e <- new.env(parent = parent.frame())
        load(fname, e)
        return(e[[ls(e)[1]]])
    }
    

    load_first_object我遇到了一个类似的问题,在没有重新安装R的情况下解决了这个问题。例如

    load(“al.rda)
    工作正常,但如果您这样做
    a just do
    load(“al.rda”)
    和do
    ls()
    来检查在全局环境中加载了哪些R对象。最后我关闭了未使用的连接3(al.rda)。我应该在这里寻找什么?@megv-还有一些事情要尝试:1.安装旧版本的R并尝试在那里加载它-可能是文件旧了,而新的R版本有问题。2.尝试在Linux上加载它。猜测可能的问题,
    getwd()
    list.files()
    (或
    load(file.choose()))
    是一些可能有用的工具,用于找出文件可能未加载(如果未加载)的原因;并确保文件确实被称为
    al.rda
    而不是
    a1.rda
    …这是我使用的命令>l1 l1错误:未找到对象“l1”。此外:警告消息:关闭未使用的连接3(al.rda)@megv-什么是
    找到(“加载”)
    打印的?是的,这是我的问题。
    加载本身设置变量值。
    加载(“al.rda”)上方缺少结束引号。
    file.info("a1.rda") # Prints the file size etc...
    readBin("a1.rda", "raw", 50) # reads first 50 bytes from the file
    
    load("al.rda")
    
    load_first_object <- function(fname){
        e <- new.env(parent = parent.frame())
        load(fname, e)
        return(e[[ls(e)[1]]])
    }