用于处理LSST EFD的实用类。
项目描述
LSST EFD客户端
用于处理LSST EFD的实用类。
免费软件:MIT许可协议
功能
客户端 EfdClient 有几个有用的功能。
get_topics:返回EFD中的主题。
get_fields:返回特定主题中的字段。
build_time_range_query:为特定主题和时间范围构建InfluxQL查询。
select_time_series:返回包含时间范围查询结果的DataFrame。
select_packed_time_series:返回包含高采样率遥测数据的DataFrame,将其展开到单个DataFrame中。
select_top_n:返回包含最新行结果的DataFrame。
get_schema:获取特定主题中字段的元数据。
还有一些用于处理查询结果的实用工具。
merge_packed_time_series:接受一个包含每个条目多个样本的记录的dataframe,并返回一个每个样本一条记录的dataframe。
rendezvous_dataframes:扩展dataframe,使用过去、未来或最近的记录中的最近记录从另一个dataframe中获取数据。
请参阅示例笔记本此处。
更多信息,请参阅在线文档。
CONTRIBUTING
有关向此项目贡献的信息,请参阅此页。
致谢
本软件包是用Cookiecutter和audreyr/cookiecutter-pypackage项目模板创建的。
历史记录
0.1.0 (2019-12-23)
首次发布于PyPI。
0.2.0 (2019-01-15)
已实现最小功能。
文档字符串完整。
0.3.0 (2019-01-31)
添加了单元测试。
0.4.0 (2019-01-31)
进行了非常小的文档更新。
错误地推送了小版本,而意图是推送补丁。
0.5.0 (2020-05-29)
切换到基于segwarides的凭据。
0.6.0 (2021-02-11)
修复了列出可能端点时的错误。
添加了一些实用功能,并加快了打包时间序列的解包速度(感谢RHL)。
0.6.4 (2021-02-15)
修复了一个回归,该回归会导致当一列的名称与另一列名称的开头相同时引发异常。
为回归添加了测试。
0.7.0 (2021-03-24)
添加了get_schema方法,用于获取主题字段的元数据。
为架构解析器添加了测试。
0.8.2 (2021-05-25)
优雅地处理没有描述或单位的主题(感谢Angelo!)。
添加一个参数以允许在选择前N个时使用时间阈值(感谢Michael!)。
0.8.3 (2021-06-11)
添加一个指定架构中的字段是否为类似数组的列。
在创建astropy单位时检查表示无单位的两种约定。
0.9.0 (2021-10-05)
此更改将约定更改为使用UTC作为内部表示。这反映了influxDB存储索引时间戳为UTC的更改。有一个从TAI到UTC转换索引的开关,但默认假设所有地方都使用UTC。
0.9.1 (2021-10-28)
修复了UTC转换留下的各种错误。其中最重要的是纠正处理打包时间序列索引的方式。其他是在实现我们尝试处理索引仍为TAI的旧数据库时。
0.10.0 (2021-11-18)
更改处理端口的方式。这迫使端口与余下的认证信息一起发送,并移除了传递覆盖端口的可能。
0.10.2 (2022-05-03)
允许astropy在主题架构中为无效的单位引发异常。
0.11.0 (2022-05-24)
更新API调用以处理SAL 7对索引组件ID字段的更改。
向EFD客户端添加超时选项。当处理分块查询时,设置aiohttp.client的超时。默认超时为900秒。
0.12.0 (2022-07-27)
认证助手现在可以使用路径属性连接到InfluxDB实例。
0.13.0 (2023-06-26)
EfdClient现在接受非UTC的astropy.time.Time值(如有必要,将它们转换)。
修复了单元测试。
更新casettes/*.yaml以包括“路径”作为返回值。
将固定装置efd_client更改为异步上下文管理器make_efd_client并显式调用它。
显式导入vcr并配置它,以便如果指定的磁带文件找不到或无法使用,则失败。这避免了两种神秘失败的原因。
合并了一些测试,以使其更清晰地表明它们正在测试相同的内容,并减少所需的磁带文件数量。
在代码上运行black和isort。
0.13.1 (2023-07-01)
numpy 1.25.0破坏了与aioinflux的兼容性。将numpy锁定在版本1.23.5。