Chronaxis用户手册English
本页目录成员导航AnalysisResultAnalysisResult.__init__AnalysisResult.run_manifestAnalysisResult.iter_eventsAnalysisResult.iter_sequencesAnalysisResult.iter_segmentsAnalysisResult.iter_calculationsAnalysisResult.iter_contributionsAnalysisResult.iter_aggregationsAnalysisResult.iter_selectionsAnalysisResult.iter_input_traceAnalysisResult.contributions_availableAnalysisResult.writeAnalysisResult.closeAnalysisResult.__enter__AnalysisResult.__exit__

chronaxis.AnalysisResult

使用from chronaxis import AnalysisResult导入。本页只列直接公开成员与必要的构造/上下文协议;内部实现见模块参考。

返回公开API索引。参数表中的类型可跳转到定义;先核对必填、默认值与返回/异常说明。

成员导航

AnalysisResult

一次成功分析的结果对象。通常由AnalysisRunner.run返回;通过iter_*逐行读取,通过write发布,通过close或with释放资源。内部构造参数用于接管暂存,不建议业务调用者手工构造。

python
AnalysisResult(spool: chronaxis.results.spool.ResultSpool, metadata: chronaxis.results.manifest.RunMetadata, table_format: str = 'csv', *, artifact_exports=None, owned_work=None)

源码:src/chronaxis/results/result.py:202(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.__init__

接管已经结束写入的结果暂存,并记录analysis_complete,表示计算完成、结果可供读取。正式输出目录仍由write生成。

python
AnalysisResult.__init__(spool: ResultSpool, metadata: RunMetadata, table_format: str='csv', *, artifact_exports=None, owned_work=None)

参数

名称 数据类型 必填 省略时的值 用途、取值和效果
spool ResultSpool 是 无 位置或关键字。接管内部执行流程已经写完并排序的ResultSpool。普通调用使用AnalysisRunner.run(...)取得AnalysisResult,不需要手工创建spool;接管后由结果对象负责释放。
metadata RunMetadata 是 无 位置或关键字。此次运行的配置、实际输入、计算方式及观测信息;发布时写入运行清单。
table_format str 否 'csv' 位置或关键字。"csv"保留机器字段的CSV交换表,"jsonl"每行写一个完整JSON对象,"readable_csv"生成中文可读表格。低层构造器默认csv;普通配置与AnalysisRunner默认readable_csv。
artifact_exports ArtifactExportStore | None 否 None 仅关键字。可选的信号表和报文导出文件仓,成功接管后由本结果负责关闭。
owned_work tuple[Path, tuple] | None 否 None 仅关键字。本次私有根路径和创建时目录身份;须是spool直接父目录,None仅接管spool目录。

返回说明

None;初始化实例状态。

异常说明

传入模型/表格式错误时拒绝构造;预算、暂存或内部清单写入失败可抛AnalysisError并保留cause。构造失败且仍有资源待关时,异常analysis_result_cleanup_owner提供close重试入口。一般调用者应取得AnalysisRunner.run返回的对象,避免自行接管spool。

源码:src/chronaxis/results/result.py:212(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.run_manifest

返回当前状态快照,发布失败诊断路径另见manifest_path。

python
AnalysisResult.run_manifest: dict

装饰器:property。

读取属性,不使用调用括号。

参数说明

无。

返回说明

独立小型dict。

异常说明

关闭后仍可查看诊断,不读文件。

返回类型:dict。

源码:src/chronaxis/results/result.py:334(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_events

创建独立事件流,不装入全量列表。

python
AnalysisResult.iter_events() -> Iterator[SummaryEventRow]

参数:无显式参数。

参数说明

无。

返回说明

可关闭迭代器,逐行产生SummaryEventRow;使用try/finally关闭游标;外层AnalysisResult可用with管理,游标本身不支持with。

异常说明

ResultClosedError:结果已关闭或正在关闭,不能创建或继续读取游标。BudgetExceededError:无法为游标保留预算。OSError:创建或迭代期间读取暂存文件失败。ResultFormatError:迭代时发现行格式、类型或长度不合法。先关闭游标;不要将读取失败当成空结果。

返回类型:Iterator[SummaryEventRow]。

源码:src/chronaxis/results/result.py:359(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_sequences

逐行读取请求配对结果;未配置配对时返回可关闭空游标。

python
AnalysisResult.iter_sequences() -> Iterator[SummarySequenceRow]

参数:无显式参数。

参数说明

无。

返回说明

可关闭迭代器,逐行产生SummarySequenceRow;使用try/finally关闭游标;外层AnalysisResult可用with管理,游标本身不支持with。

异常说明

ResultClosedError:结果已关闭或正在关闭,不能创建或继续读取游标。BudgetExceededError:无法为游标保留预算。OSError:创建或迭代期间读取暂存文件失败。ResultFormatError:迭代时发现行格式、类型或长度不合法。先关闭游标;不要将读取失败当成空结果。

返回类型:Iterator[SummarySequenceRow]。

源码:src/chronaxis/results/result.py:367(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_segments

创建独立片段流,保留全部父事件关联。

python
AnalysisResult.iter_segments() -> Iterator[SummarySegmentRow]

参数:无显式参数。

参数说明

无。

返回说明

可关闭迭代器,逐行产生SummarySegmentRow;使用try/finally关闭游标;外层AnalysisResult可用with管理,游标本身不支持with。

异常说明

ResultClosedError:结果已关闭或正在关闭,不能创建或继续读取游标。BudgetExceededError:无法为游标保留预算。OSError:创建或迭代期间读取暂存文件失败。ResultFormatError:迭代时发现行格式、类型或长度不合法。先关闭游标;不要将读取失败当成空结果。

返回类型:Iterator[SummarySegmentRow]。

源码:src/chronaxis/results/result.py:375(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_calculations

逐行读取计算摘要。检查scope区分会话、事件或片段,同时读取value、unit、status、reason及quality;select样本通过iter_selections读取。

python
AnalysisResult.iter_calculations() -> Iterator[SummaryCalculationRow]

参数:无显式参数。

参数说明

无。

返回说明

可关闭迭代器,逐行产生SummaryCalculationRow;相关时间计算设置minimum_coverage大于0时产生带coverage_status的SummaryCoverageCalculationRow。用try/finally关闭游标,不能对游标使用with。

异常说明

ResultClosedError:结果已关闭或正在关闭,不能创建或继续读取游标。BudgetExceededError:无法为游标保留预算。OSError:创建或迭代期间读取暂存文件失败。ResultFormatError:迭代时发现行格式、类型或长度不合法。先关闭游标;不要将读取失败当成空结果。

返回类型:Iterator[SummaryCalculationRow]。

源码:src/chronaxis/results/result.py:383(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_contributions

逐行回查真实贡献与skip,原序号和新求值序号分别保留。

python
AnalysisResult.iter_contributions() -> Iterator[SummaryContributionRow]

参数:无显式参数。

参数说明

无。

返回说明

独立有预算游标;逐行返回SummaryContributionRow。

异常说明

ContributionsUnavailableError:outputs.contributions没有请求full,需要修改计划重新运行才有明细。ResultClosedError:结果已关。读取暂存时发生预算、格式或I/O错误会保留异常链;不是输入解码器重新执行。

返回类型:Iterator[SummaryContributionRow]。

源码:src/chronaxis/results/result.py:392(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_aggregations

在结果打开期间,逐组读取本次请求的统计值、群组身份及候选参与和排除计数。

python
AnalysisResult.iter_aggregations() -> Iterator['SummaryAggregationRow']

参数:无显式参数。

参数说明

无。

返回说明

可关闭的独立迭代器,逐行给出 SummaryAggregationRow。未配置聚合时为空。读取中止可关闭迭代器或所属结果。

异常说明

ResultClosedError 表示所属结果已关闭或正在清理。预算不足、暂存读取失败及行格式损坏可分别引发 BudgetExceededError、OSError 和 ResultFormatError。

返回类型:Iterator['SummaryAggregationRow']。

源码:src/chronaxis/results/result.py:404(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_selections

读取明确请求的真实样本选择行。

python
AnalysisResult.iter_selections() -> Iterator[SummarySelectionRow]

参数:无显式参数。

参数说明

无。

返回说明

有预算游标,未请求为空。

异常说明

ResultClosedError:结果已关闭或正在关闭,不能创建或继续读取游标。BudgetExceededError:无法为游标保留预算。OSError:创建或迭代期间读取暂存文件失败。ResultFormatError:迭代时发现行格式、类型或长度不合法。先关闭游标;不要将读取失败当成空结果。

返回类型:Iterator[SummarySelectionRow]。

源码:src/chronaxis/results/result.py:408(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.iter_input_trace

读取显式请求的所需输入追溯。

python
AnalysisResult.iter_input_trace() -> Iterator[SummaryInputRow]

参数:无显式参数。

参数说明

无。

返回说明

逐行产生SummaryInputRow的可关闭游标。

异常说明

ResultClosedError:结果已关闭。AnalysisError:本次未生成输入追溯,需配置diagnostics.trace后重新运行。迭代期间可能传播ResultFormatError、BudgetExceededError和OSError。

返回类型:Iterator[SummaryInputRow]。

源码:src/chronaxis/results/result.py:413(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.contributions_available

说明本结果是否允许查询逐消息贡献,不将未生成和零行混为一谈。

python
AnalysisResult.contributions_available: bool

装饰器:property。

读取属性,不使用调用括号。

参数说明

无。

返回说明

bool;默认未配置逐消息指标仍允许原空游标。

异常说明

无;关闭后可查看这项固定运行事实,但不能重新创建游标。

返回类型:bool。

源码:src/chronaxis/results/result.py:423(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.write

把暂存结果写入可复用目录,本次表和清单使用统一时间后缀。关闭文件后发布,完成清单最后出现;已有文件不覆盖。

python
AnalysisResult.write(output_dir: str | Path) -> OutputManifest

参数

名称 数据类型 必填 省略时的值 用途、取值和效果
output_dir str | Path 是 无 位置或关键字。可重复使用的结果目录,传str或Path,例如Path("results")。本次文件统一增加时间后缀,不覆盖已有文件。返回OutputManifest包含实际manifest_path;结果仍需关闭。

返回说明

安装成功后的OutputManifest。

异常说明

ResultClosedError:结果已关闭或正在关闭。AnalysisError:输出不是可用目录、位于将清理的自有工作目录内、平台不支持安全发布、预算/格式/文件写入失败;原错误通过__cause__保留。修正环境后,可向同一或其他目录重试,不会重读输入。

副作用说明

发布带时间后缀的结果文件,完成清单最后发布。失败只清理本次文件;retain_work控制临时现场保留。断电或强制结束遗留的无清单文件不表示完成。

返回类型:OutputManifest。

源码:src/chronaxis/results/result.py:546(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.close

关闭游标并释放资源;默认清理本次程序为本次运行创建的临时数据,retain_work为true时保留现场。原始输入及正式输出保留。

python
AnalysisResult.close() -> None

参数:无显式参数。

参数说明

无。

返回说明

None。可重复调用;失败后仍可重试未完成的清理。

异常说明

先尝试关闭全部活动结果游标;任一失败则保留后续资源供重试。游标全部关闭后,再依次关闭本结果拥有的写入器、暂存及目录。失败异常上的analysis_result_cleanup_owner保留同一结果对象;排除占用等原因后重试close,不重新计算,也不删除已发布结果。

返回类型:None。

源码:src/chronaxis/results/result.py:706(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.__enter__

进入结果上下文,不再次执行输入读取。

python
AnalysisResult.__enter__() -> 'AnalysisResult'

参数:无显式参数。

参数说明

无。

返回说明

返回当前对象本身。后续迭代或with语句使用的仍是同一个对象。

异常说明

ResultClosedError为已关闭。

返回类型:'AnalysisResult'。

源码:src/chronaxis/results/result.py:757(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

AnalysisResult.__exit__

退出上下文时释放资源,保留业务原异常。

python
AnalysisResult.__exit__(exc_type, exc_value, traceback)

参数

名称 数据类型 必填 省略时的值 用途、取值和效果
exc_type type[BaseException] | None 是 无 位置或关键字。with代码块抛出的异常类型;正常离开时为None,由Python传入。
exc_value BaseException | None 是 无 位置或关键字。with代码块抛出的异常对象;正常离开时为None,由Python传入。
traceback TracebackType | None 是 无 位置或关键字。异常发生时的调用栈;正常离开时为None,由Python传入,供异常继续传播。

返回说明

False,异常会继续传给调用者。

异常说明

正常离开with时close失败会传播关闭错误;with内已有业务异常时保留该异常,并将清理问题附到__notes__。清理仍未完成时,原异常上的analysis_result_cleanup_owner保留本结果供close重试;不能假定每个异常都有该属性。

源码:src/chronaxis/results/result.py:765(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。

Chronaxis 用户手册 · 离线阅读