【问题标题】:Read a sample from sas7bdat file in R从 R 中的 sas7bdat 文件中读取样本
【发布时间】:2017-08-17 17:22:58
【问题描述】:

我有一个大小约为 80 GB 的 sas7bdat 文件。由于我的电脑有 4 GB 的内存,我能看到的唯一方法是读取它的一些行。我尝试在 R 中使用 sas7bdat 包,它给出了错误“不支持大端文件” Haven 中的 read_sas() 函数似乎有效,但该函数仅在我需要读取包含所有列的行的任何子集时才支持读取特定列。比如我能读懂1%的数据就可以了。 有没有办法做到这一点?任何可以工作的软件包? 稍后我计划读取文件的部分内容并将其分成 100 个左右的部分

【问题讨论】:

  • 这是商业、研究、教育还是非盈利类型的作品?
  • 我正在出于教育目的进行尝试。我没有 sas 许可证
  • SAS 对于教育目的是免费的。请参阅 SAS Analytics U,您可以下载该软件。 80GB 仍然很大,所以我建议将您的工作文件夹切换到共享位置而不是默认位置,但您可以在那里处理它。或者至少将其读入并将其导出为 txt 或您想要的任何形式。
  • 是否有不需要使用 sas 的替代方案?基本上我想用 R 处理这个问题
  • 这里的解析逻辑是用 R 语法编写的:github.com/BioStatMatt/sas7bdat/blob/master/R/sas7bdat.R 我想你可以得到 few k 行原始数据并在没有“幻数”检查的情况下运行它。也许?

标签: r sas


【解决方案1】:

如果您有 Windows,则可以使用免费的 SAS Universal Viewerexport the dataset to CSV。然后,您可以将 CSV 以更易读的块 using this method 的形式导入 R。

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 2020-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多