代码之家  ›  专栏  ›  技术社区  ›  Raunak Thomas

数据不存在

  •  0
  • Raunak Thomas  · 技术社区  · 6 年前

    我面临一个非常奇怪的问题。

    我已指定一个libname,例如

    libname TEST_LIB "/Info-One/...." /*have removed the exact location*/
    
    /*The dataset TEST_DATA is visible in this output*/
    proc datasets lib = TEST_LIB;
    RUN;
    
    /*This statement throws an error saying the file does not exist*/
    DATA TEST_DATA_2;
      set TEST_LIB.TEST_DATA;
    RUN;
    

    我正在连接到远程服务器的SAS Enterprise guide中运行此代码。

    我还可以从“文件资源管理器”导航到该位置,并将其拖到“企业指南”中,然后数据集就可见了。但是,即使我双击定义库中的数据集,它也会说该数据集不存在。

    我现在已经没有主意了,我不知道如何解决这个问题。

    我试过/检查过的几件事

    1. 文件名没有空格
    2. 我拥有该文件夹的权限,因为我可以正常使用我创建并放置在该文件夹中的另一个数据集
    3. 事实上,如果我将数据复制到excel,将excel上载到SAS以创建SAS数据集,并将其放置在具有不同名称的相同位置,我将面临相同的问题!!

    我非常感谢你们的任何想法,不仅仅是关于为什么会这样,还有如何绕过它

    2 回复  |  直到 6 年前
        1
  •  4
  •   Richard    6 年前

    从评论转移并扩展

    这里有两种可能性:



    1. 在Unix系统上,文件名区分大小写。SAS程序中的数据集名称将在内部映射到相应的小写命名数据文件(这些 sas7bdat 操作系统级别的文件)。如果复制过程以某种方式创建 .sas7bdat Unix上名称为混合大小写或大写的数据文件,SAS会话将不会映射到该文件。在这种情况下,SAS文件资源管理器可能会列出一个数据集,但无法打开它。但是,对数据集的直接文件引用可能会起作用,例如
      set '~/project1/datasets/MyWeirdlyCasedDataset';

    2. ls -l )您可能还需要查看访问控制列表( lsacl )让网络和IT管理员参与进来。

        2
  •  0
  •   Wilson Jimenez    6 年前

    您确定这是一个数据集吗? 将memtype=数据放入Proc数据集中,如下所示

    推荐文章