feat: enhance report generation with target name and content injection
- Added target_name parameter to Reports class for improved report context. - Updated inject_content function to ensure proper handling of HTML sections. - Modified DataManagerRepository to join predictions with training and validation data for accurate report generation.
This commit is contained in:
@@ -511,11 +511,26 @@ class DataManagerRepository(SientiaMonitoring):
|
||||
if data.run_name is None:
|
||||
raise ValueError('run_name is not set, cannot generate report')
|
||||
|
||||
# Convert data to float64 for report generation
|
||||
# This may raise ValueError if data contains non-numeric values
|
||||
reference_data = data.train_data
|
||||
current_data = data.val_data
|
||||
if data.y_train_pred is None or data.y_pred is None:
|
||||
raise ValueError('y_train_pred or y_pred is not set, cannot generate report')
|
||||
|
||||
|
||||
y_train_pred = data.y_train_pred.rename(
|
||||
columns={data.params.target_variable: 'prediction'}
|
||||
)
|
||||
y_val_pred = data.y_pred.rename(
|
||||
columns={data.params.target_variable: 'prediction'}
|
||||
)
|
||||
|
||||
# Join the predictions to the data
|
||||
reference_data = y_train_pred[['prediction']].join(
|
||||
data.train_data, how='inner'
|
||||
)
|
||||
reference_data_float = reference_data.astype(np.float64)
|
||||
|
||||
current_data = y_val_pred[['prediction']].join(
|
||||
data.val_data, how='inner'
|
||||
)
|
||||
current_data_float = current_data.astype(np.float64)
|
||||
|
||||
# Initialize report generator
|
||||
@@ -524,6 +539,7 @@ class DataManagerRepository(SientiaMonitoring):
|
||||
reference_data=reference_data_float,
|
||||
current_data=current_data_float,
|
||||
base_path=data.run_dir,
|
||||
target_name=data.params.target_variable,
|
||||
)
|
||||
|
||||
# Generate report sections
|
||||
|
||||
Reference in New Issue
Block a user