Skip to content

Commit 9b31d00

Browse files
committed
[+] added patient_wise metrics
1 parent 8b763a8 commit 9b31d00

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

scripts/compute_metrics.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ def calc_metrics(subject, gt_dir=None, pred_dir=None, class_map=None):
8888
r[f"hausdorff-{roi_name}"] = np.NaN
8989
return r
9090

91+
9192
def calculate_confidence_interval(data, confidence=0.95):
9293
# Ensure data contains only numeric values
9394
data = [x for x in data if isinstance(x, (int, float))]
@@ -144,12 +145,18 @@ def calculate_confidence_interval(data, confidence=0.95):
144145
disable=True,
145146
)
146147
res = [r for r in res if r is not None] # Filter out None results
147-
res = pd.DataFrame(res)
148+
res_df = pd.DataFrame(res)
149+
150+
# Save patient-wise metrics
151+
res_df.to_csv(pred_dir / "patient_wise_metrics.csv", index=False)
152+
logging.info(
153+
f"Patient-wise metrics saved to {pred_dir / 'patient_wise_metrics.csv'}"
154+
)
148155

149156
results = []
150157
for metric in ["dice", "hausdorff"]:
151158
for roi_name in class_map.values():
152-
row_wo_nan = res[f"{metric}-{roi_name}"].dropna()
159+
row_wo_nan = res_df[f"{metric}-{roi_name}"].dropna()
153160
mean, lower, upper = calculate_confidence_interval(row_wo_nan)
154161
results.append(
155162
{

0 commit comments

Comments
 (0)