针对Xarray对象的架构验证
项目描述
xdarray架构
针对Xarray的架构验证
安装
从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()
路线图
这是一个非常早期的库原型。一些关键功能尚未实现。
- 对
coords
和attrs
的验证。这些功能尚未实现。 - 异常:Pandera累积模式异常,并一次性报告它们。目前,当我们发现
SchemaErrors
时,我们会立即抛出。 - 将模式从/到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 查看哈希值)
关闭
xarray-schema-0.0.3.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9c6c760489c0690a70394b2ad1368b32f8fa1333911c361b4adf249384212920 |
|
MD5 | 0c6c5fd6d3148e65ee27e2eed9a6956a |
|
BLAKE2b-256 | 643de0652fad05696e34897f085d4c3115dc4bedb1fb8c1827d6c79ce74095a6 |
关闭
xarray_schema-0.0.3-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | aa6f856626b2e100213ba290407797464608b2555bb8e0b26093a97fe1ba38ce |
|
MD5 | ccfab9893c83e45a0d984b415dce7e48 |
|
BLAKE2b-256 | a96df585a27b380ee987619b5617c0ca672a71a4345b67cfedbb6299750ce845 |