Skip to main content

用于 Python 的 sas7bdat 文件阅读器

项目描述

sas7bdat.py

该模块将使用纯 Python(2.6+、3+)读取 sas7bdat 文件。无需 SAS 软件!该模块最初是作为同名 R 脚本的一个端口,可在此处找到:https ://github.com/BioStatMatt/sas7bdat ,但此后已完全重写。

该库还包含一个简单的命令行脚本, sas7bdat_to_csv它将 sas7bdat 文件转换为 csv 文件。它还将使用该--header选项打印出标题信息和元数据,并且还将批量转换文件。使用该--help选项了解更多信息。

照原样,我已经成功测试了我在互联网上找到的近三百个示例文件的脚本。在大多数情况下,它运作良好。我们现在可以读取压缩文件了!

我敢肯定还有更多我还没有遇到的问题。如果您遇到不受支持的数据文件,请告诉我,我会看看是否可以添加对该文件的支持。

用法

要安装,请运行:

pip install sas7bdat

要创建 sas7bdat 对象,只需向构造函数传递文件路径。该对象是可迭代的,因此您可以像这样读取内容:

#!python
from sas7bdat import SAS7BDAT
with SAS7BDAT('foo.sas7bdat', skip_header=True) as reader:
    for row in reader:
        print row

每行将是类型为string、float、datetime.date、 datetime.datetime或的值的列表datetime.time。如果没有skip_header,则返回的第一行将是 SAS 变量名称。

如果您想获得 pandas DataFrame,请使用以下to_data_frame方法:

#!python
df = reader.to_data_frame()

变量属性 可从reader.columns. 这些列的顺序将与每个 中的相应值相同row。每个Column都有以下属性:

  • col_id( int) - 列号
  • name( bytes)
  • label( bytes)
  • format( str)
  • type( str)
  • length( int)

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

sas7bdat-2.2.3.tar.gz (16.1 kB 查看哈希)

已上传 source