Intake的ERDDAP插件
项目描述
源自 https://github.com/jmunroe/intake-erddap.
Intake-ERDDAP
版权所有 2022 Axiom Data Science
查看LICENSE文件
版权所有 2022 James Munroe
2022-10-19之前的所有贡献均为James Munroe版权所有,请参阅PREV-LICENSE。
Intake是一组轻量级工具,用于在数据科学项目中加载数据和共享数据。Intake ERDDAP提供了一组ERDDAP的集成。
- 快速识别特定地理区域内或包含特定变量的ERDDAP服务的所有数据集。
- 为给定数据集或查询生成pandas DataFrame。
- 为栅格数据集获取xarray Dataset。
主要特性包括
- 为任何TableDAP数据集提供Pandas DataFrame。
- 为任何GridDAP数据集提供xarray Dataset。
- 通过任何或全部进行查询
- 边界框
- 时间
- CF
standard_name
- 变量名
- 纯文本搜索词
- 将目录保存到本地以供将来使用。
用户安装
在不久的将来,我们将提供该项目在conda上的版本。目前该项目可在PyPI上找到,因此可以使用pip
进行安装
pip install intake-erddap
开发者安装
先决条件
以下是该项目的开发环境先决条件
注意:如果未安装mamba
,请将以下说明中所有mamba
实例替换为conda
。
-
使用以下命令创建项目环境
mamba env update -f environment.yml
-
安装开发环境依赖项
mamba env update -f dev-environment.yml
-
激活新的虚拟环境
conda activate intake-erddap
-
将项目安装到虚拟环境中
pip install -e .
请注意,您需要使用 pip install .
安装一次,以确保 entry_points
正确。
示例
要为 ERDDAP 的所有 TableDAP 提供的 TableDAP 创建一个 intake
目录,请使用
import intake_erddap
catalog = intake_erddap.ERDDAPCatalogReader(
server="https://erddap.sensors.ioos.us/erddap"
).read()
目录对象的行为类似于字典,键代表数据集在 ERDDAP 中的唯一标识符,值是 TableDAPReader
对象。要访问 Reader 对象(对于单个数据集,在这种情况下为 dataset_id "aoos_204")
dataset = catalog["aoos_204"]
从 Reader 对象中,可以检索 pandas DataFrame
df = dataset.read()
使用以下方法查找其他可用的 dataset_ids
list(catalog)
考虑这样一个案例,您需要查找所有靠近佛罗里达的风数据
import intake_erddap
from datetime import datetime
bbox = (-87.84, 24.05, -77.11, 31.27)
catalog = intake_erddap.ERDDAPCatalogReader(
server="https://erddap.sensors.ioos.us/erddap",
bbox=bbox,
intersection="union",
start_time=datetime(2022, 1, 1),
end_time=datetime(2023, 1, 1),
standard_names=["wind_speed", "wind_from_direction"],
variables=["wind_speed", "wind_from_direction"],
).read()
dataset_id = list(catalog)[0]
print(dataset_id)
df = catalog[dataset_id].read()
使用 standard_names
输入与 intersection="union"
搜索同时具有 "wind_speed" 和 "wind_from_direction" 的数据集。使用 variables
输入随后将数据集缩小到仅包含这些列,以及 "time","latitude","longitude" 和 "z"。
time (UTC) latitude (degrees_north) ... wind_speed (m.s-1) wind_from_direction (degrees)
0 2022-01-01T00:00:00Z 28.508 ... 3.6 126.0
1 2022-01-01T00:10:00Z 28.508 ... 3.8 126.0
2 2022-01-01T00:20:00Z 28.508 ... 3.6 124.0
3 2022-01-01T00:30:00Z 28.508 ... 3.4 125.0
4 2022-01-01T00:40:00Z 28.508 ... 3.5 124.0
... ... ... ... ... ...
52524 2022-12-31T23:20:00Z 28.508 ... 5.9 176.0
52525 2022-12-31T23:30:00Z 28.508 ... 6.8 177.0
52526 2022-12-31T23:40:00Z 28.508 ... 7.2 175.0
52527 2022-12-31T23:50:00Z 28.508 ... 7.4 169.0
52528 2023-01-01T00:00:00Z 28.508 ... 8.1 171.0
[52529 rows x 6 columns]
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
构建分布
intake_erddap-0.5.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dd602cf55bb5e67630a359ee27cfd967a844b184dda6292f7ecbf5f8558f52d6 |
|
MD5 | 61ddf253ebb033bf3c8a393a80ad12d3 |
|
BLAKE2b-256 | 983c2d150fc92cc47ac095e8f6e6f275a61e7f8f3b702ebca4f13e7b9e434419 |
intake_erddap-0.5.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e682363e516174655350ba23d7096847a906ca300fd900f2251e5c5720129ff6 |
|
MD5 | c114e1ac77652ff88fddda676e2f8030 |
|
BLAKE2b-256 | c4ef4cb27c1653fb6843e72b47c8679bc8f5b67cf6a2b4cc785ac1a4efeb907e |