将dbf文件转换为csv、dataframes、hdf5表和sql表。python3兼容。

simpledbf的Python项目详细描述


简化bf

simpledbf 是一个用于转换基本dbf文件的python库(请参见 csv文件、pandas数据帧、sql表或hdf5表的 限制 。 这个包与python>;=3.4完全兼容,几乎是完整的 python 2.7支持 。转换为csv和sql(请参见 to_textsql 下面)完全是用python编写的,因此没有额外的 依赖是必要的。有关其他导出格式,请参见可选 要求。这段代码设计得非常简单、快速和内存 高效,便于交互或批处理文件;因此 缺少许多特性,例如编写dbf文件的能力 可能提供套餐。

错误修复、问题和更新请求是受鼓励的,可以在 github回购协议

此代码来自一个 activestate dbf示例 python2并在psf许可下分发。

可选要求

  • 熊猫>;=0.15.2(数据帧需要)
  • Pytables>;=3.1(HDF表需要熊猫)
  • sqlalchemy>;=0.9(dataframe sql表需要熊猫)

安装

可以使用 pip conda ,如果您碰巧使用的是anaconda python发行版

使用conda:

$ conda install -c https://conda.binstar.org/rnelsonchem simpledbf

使用 pip

$ pip install simpledbf

开发版本可以从github安装:

$ pip install git+https://github.com/rnelsonchem/simpledbf.git

另外,这个包只包含一个文件,所以原则上, 您可以从github下载 simpledbf.py 文件,并将其放入任何 您选择的文件夹。

dbf文件限制

此包当前支持dbase iii到5的一个子集。 特别是,缺少对链接备忘录(即dbt)文件的支持。这是 主要是由于作者可使用的文件类型的限制。感觉 如果可以提供一个带有相关备注的dbf文件,则可以请求更新 文件。最新的dbf文件规范dbf version 7目前还不是 受此软件包支持。

支持python 2

除了hdf文件导出,此代码在python>;=2.7中应该可以正常工作。 但是,在python3中创建的hdf文件与所有python2 hdf都兼容 包,因此原则上,可以在临时python3中生成任何hdf文件 环境。如果您使用的是anaconda python发行版 (推荐),那么你可以做一个小蟒蛇3的工作环境 以下:

$ conda create -n dbf python=3 pandas pytables sqlalchemy
# Lots of output...

$ source activate dbf

dbf>$ conda install -c https://conda.binstar.org/rnelsonchem simpledbf

dbf>$ python my_py3_hdf_creation_script.py
# This is using Python3

dbf>$ source deactivate

$ python my_py2_stuff_with_hdf.py
# This is using Python2 again

python2中的hdf文件导出当前被破坏,原因是pandas中的限制 使用Unicode导出HDF。此问题可能会在以后的版本中修复 熊猫/餐桌。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
spring JSTL:绝对uri:http://java.sun.com/jsp/jstl/core无法在两个站点中解析。xml或与此应用程序一起部署的jar文件   java在Junit测试中找不到失败的符号   java为什么在没有同步块的情况下调用wait()、notify()或notifyAll()不是编译器错误?   使用onDraw()绘制多个位图的java Android在曲面视图上放大缩小画布   在java中比较args值和字符串   java更改文件中的特定字节   java TransformerFactory破坏<html>标记中的<input>和<br>标记   azure appinsights java自定义指标不起作用   Java泛型在实现接口的类上指定上界,接口本身指定上界   java AS400 prog和动态类路径   java应用程序截图时收到空消息   java无法从片段中获取上下文   找不到java配置单元UDF类   linux是一个提供java的接口。lang.NoClassDefFoundError   java如何使用面向对象建模创建此数据库