在R中使用sas数据集(sas7bdat)的不同方法

时间:2014-08-08 18:37:59

标签: r csv statistics sas rstudio

我的SAS数据集至少约为100MB +。我试着把它读成R.我发现了以下内容。

sas7bdat package
read.sas7bdat

但我正在研究这是否是常用的方法?或者,如果可以推荐另一种方式?

我正在尝试的另一种方法是将sas7bdat转换为csv,但如果我这样做了 - 我应该注意哪些潜在的问题?谢谢。

2 个答案:

答案 0 :(得分:1)

如果您想使用SAS以外的其他方式访问SAS数据,通常最好使用XPORT引擎将其导出为“传输文件”(扩展名:.xpt.xport) 。 SAS希望此文件格式独立于操作环境(请参阅here),因此可供其他软件使用。

相比之下,.sas7bdat文件仅供SAS使用。将它们读入R必然取决于在您的计算机上拥有SAS的许可版本,或者(如您提到的sas7bdat包的情况)reverse engineering解决方案。对于使用.sas7bdat文件但没有SAS许可证的人,您可以尝试下载Stat/Transfer的免费试用版。

获得.xpt文件后,您可以将其读入R,如下所示:

require(foreign)
read.xport("path/to/file/data.xpt")

还有其他非常好的解决方案可用于读取.xpt文件,例如sas.get()(Hmisc包)和read.ssd(外包),但它们可能更难实现。 SASxport软件包是一个新的尝试,以改进我上面给出的解决方案,但我还不能担保它。

答案 1 :(得分:0)

简单的解决方案

库(港湾)

datain< - read_sas(" filename.sas7bdat",NULL)

或者你可以作弊并点击并指向RStudio