Reporter
Reporter(method, **kwargs)
Generates output files for experiment results and evaluation reports.
Parameters
method
(str): Report generation method- ‘save_data’: Save dataset to CSV
- Additional parameter required:
source
(str | List[str]): Target module or experiment name
- Additional parameter required:
- ‘save_report’: Generate evaluation report
- Additional parameters required:
granularity
(str): Report detail level (‘global’, ‘columnwise’, ‘pairwise’)eval
(str | List[str], optional): Target evaluation experiment name
- Additional parameters required:
- ‘save_data’: Save dataset to CSV
output
(str, optional): Output filename prefix- Default: ‘petsard’
Examples
from petsard import Reporter
# Save synthetic data
reporter = Reporter('save_data', source='Synthesizer')
reporter.create({('Synthesizer', 'exp1'): synthetic_df})
reporter.report() # Creates: petsard_Synthesizer[exp1].csv
# Generate evaluation report
reporter = Reporter('save_report', granularity='global')
reporter.create({('Evaluator', 'eval1_[global]'): results})
reporter.report() # Creates: petsard[Report]_[global].csv
Methods
create()
Initialize reporter with data.
Parameters
data
(dict): Report data where:- Keys: Experiment tuples (module_name, experiment_name, …)
- Values: Data to be reported (pd.DataFrame)
- Optional ’exist_report’ key for merging with previous results
report()
Generate and save report as CSV. Output filename format:
- For save_data:
{output}_{module-expt_name-pairs}.csv
- For save_report:
{output}[Report]_{eval}_[{granularity}].csv
Attributes
result
: Report results- For save_data: Dictionary of DataFrames
- For save_report: Report metadata and content
config
: Reporter configuration