跳至主要内容

针对Xarray对象的架构验证

项目描述

xdarray架构

针对Xarray的架构验证

CI codecov MIT License

安装

从PyPI安装xdarray架构

pip install xarray-schema

Conda

conda install -c conda-forge xarray-schema

或从源安装

pip install git+https://github.com/carbonplan/xarray-schema

使用方法

xdarray架构的API模仿了Pandera。`DataArraySchema` 和 `DatasetSchema` 对象都拥有 `.validate()` 方法。

基本使用方法如下

import numpy as np
import xarray as xr
from xarray_schema import DataArraySchema, DatasetSchema, CoordsSchema

da = xr.DataArray(np.ones(4, dtype='i4'), dims=['x'], name='foo')

schema = DataArraySchema(dtype=np.integer, name='foo', shape=(4, ), dims=['x'])

schema.validate(da)

您还可以用它来验证一个 `Dataset`,例如这样

schema_ds = DatasetSchema({'foo': schema})

schema_ds.validate(da.to_dataset())

每个Xarray数据模型的组件都实现为一个独立的类

from xarray_schema.components import (
    DTypeSchema,
    DimsSchema,
    ShapeSchema,
    NameSchema,
    ChunksSchema,
    ArrayTypeSchema,
    AttrSchema,
    AttrsSchema
)

# example constructions
dtype_schema = DTypeSchema('i4')
dims_schema = DimsSchema(('x', 'y', None))  # None is used as a wildcard
shape_schema = ShapeSchema((5, 10, None))  # None is used as a wildcard
name_schema = NameSchema('foo')
chunk_schema = ChunkSchema({'x': None, 'y': -1})  # None is used as a wildcard, -1 is used as
ArrayTypeSchema = ArrayTypeSchema(np.ndarray)

# Example usage
dtype_schama.validate(da.dtype)

# Each object schema can be exported to JSON format
dtype_json = dtype_schama.to_json()

路线图

这是一个非常早期的库原型。一些关键功能尚未实现。

  1. coordsattrs 的验证。这些功能尚未实现。
  2. 异常:Pandera累积模式异常,并一次性报告它们。目前,当我们发现 SchemaErrors 时,我们会立即抛出。
  3. 将模式从/到JSON和/或YAML格式。

许可证

本存储库中的所有代码均受MIT许可证保护,但我们要求如果您重新使用我们的任何数字内容(图形、标志、文章等),请提供署名。

关于我们

CarbonPlan是一个非营利组织,它利用数据和科学进行气候行动。我们旨在通过开放数据和工具提高气候解决方案的透明度和科学完整性。更多信息请访问carbonplan.org或通过提交问题发送电子邮件与我们联系。

项目详情


下载文件

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

源分布

xarray-schema-0.0.3.tar.gz (15.0 kB 查看哈希值)

上传时间:

构建分布

xarray_schema-0.0.3-py3-none-any.whl (10.0 kB 查看哈希值)

上传时间: Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面