生成pandas数据帧,基于json表模式描述符加载和提取数据。

jsontableschema-pandas的Python项目详细描述


Travis
Coveralls
PyPi
SemVer
Gitter

基于json表模式生成和加载pandas数据帧 描述符。

Version ^{tt1}$ contains breaking changes:
  • 已删除Storage(prefix=)参数(是存根)
  • Storage(tables=)重命名为Storage(dataframes=)
  • Storage.tables重命名为Storage.buckets
  • Storage.read更改为读入内存
  • 添加了Storage.iter以逐行生成

开始

安装

$ pip install datapackage
$ pip install jsontableschema-pandas

示例

您可以轻松地将数据包中的资源加载为pandas数据帧 只需使用datapackage.push_datapackage函数:

>>>importdatapackage>>>data_url='http://data.okfn.org/data/core/country-list/datapackage.json'>>>storage=datapackage.push_datapackage(data_url,'pandas')>>>storage.buckets['data___data']>>>type(storage['data___data'])<class'pandas.core.frame.DataFrame'>>>>storage['data___data'].head()NameCode0AfghanistanAF1ÅlandIslandsAX2AlbaniaAL3AlgeriaDZ4AmericanSamoaAS
<>也可以将现有的数据帧拉入数据中。 套餐:

>>>datapackage.pull_datapackage('/tmp/datapackage.json','country_list','pandas',tables={...'data':storage['data___data'],...})Storage

储存

包实现Tabular Storage 接口。

我们可以通过这种方式获得存储空间:

>>>fromjsontableschema_pandasimportStorage>>>storage=Storage()

存储用作pandas数据帧的容器。您可以定义新的 使用storage.create方法在存储器中的数据帧:

>>>storage.create('data',{...'primaryKey':'id',...'fields':[...{'name':'id','type':'integer'},...{'name':'comment','type':'string'},...]...})>>>storage.buckets['data']>>>storage['data'].shape(0,0)

使用storage.write用数据填充数据帧:

>>>storage.write('data',[(1,'a'),(2,'b')])>>>storage['data']idcomment1a2b

你也可以用 tabulator到 从外部数据文件填充数据帧:

>>>importtabulator>>>withtabulator.Stream('data/comments.csv',headers=1)asstream:...storage.write('data',stream)>>>storage['data']idcomment1a2b1good

正如您所见,后续写入只是在现有的基础上追加新数据。 一个。

贡献

请阅读投稿指南:

How to Contribute

谢谢!

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

推荐PyPI第三方库


热门话题
java如何将jaxb插件扩展与gradlejaxbplugin一起使用   java Hibernate列表<Object[]>到特定对象   java使用多态性显示arraylist的输出   java水平堆叠卡,带有一定偏移量   java错误:找不到符号方法liesInt()   java客户机/服务器文件收发中的多线程流管理   在java中可以基于访问重载方法吗?   包含空元素的java排序数组   swing Java按钮/网格布局   java BottomNavigationView getmaxitemcount   java空指针异常字符串生成器   java Xamarin升级导致“类文件版本错误52.0,应为50.0”错误   java我正在尝试打印它,而不只是对每一行进行println   Tomcat7中的java是否需要复制上下文。将xml转换为conf/Catalina/locahost以使其生效   带有注入服务的java REST端点在何处引发自定义WebServiceException?   在Java中使用GPS数据   java如何将JFreeChart ChartPanel导出到包含添加的CrosshairOverlay的图像对象?   内置Eclipse期间的Java 8堆栈溢出   java在GWT编译的JavaScript中如何表示BigDecimal