diff --git a/notebooks/PredictiveMaintenance_PerformanceMetrics.ipynb b/notebooks/PredictiveMaintenance_PerformanceMetrics.ipynb
new file mode 100644
index 0000000..a5bf242
--- /dev/null
+++ b/notebooks/PredictiveMaintenance_PerformanceMetrics.ipynb
@@ -0,0 +1,441 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "4e13863d-8db2-4384-b70c-66185cd1f51b",
+ "metadata": {},
+ "source": [
+ "### Predictive Maintenance Performance Metrics using Cohen’s Kappa, Wilcoxon T, and Confusion Matrices\n",
+ "\n",
+ "> Analyzing and evaluating predictive maintenance models using Cohen’s Kappa, Wilcoxon T test, and confusion matrices to assess performance and reliability in predictive outcomes."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ca5e8bc5-a7b7-457b-a695-3941e4e133d3",
+ "metadata": {},
+ "source": [
+ "##### Cohen’s Kappa for Interrater Agreement\n",
+ "\n",
+ "Cohen’s kappa measures agreement between two raters or classifiers, adjusting for agreement expected by chance. In ordered time series, it can assess how closely a model’s predicted categories align with actual labels."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f78fd573-9429-426c-9708-23e34a3b0dc7",
+ "metadata": {},
+ "source": [
+ "##### Wilcoxon Signed-Rank Test: Paired Comparison\n",
+ "\n",
+ "Wilcoxon tests compare paired, non-normally distributed samples. In ordered time series, it can test whether a model’s predicted ranks differ systematically from actual labels or whether two forecasting methods yield significantly different results in terms of ordinal error."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "cf87587f-d904-475f-b9ed-cca5548904c4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import warnings\n",
+ "warnings.filterwarnings('ignore')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "8f17c52b-5cfa-464c-82fd-671f798f4ab9",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "!pip install -q numpy pandas matplotlib seaborn\n",
+ "!pip install -q scipy scikit-learn"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "1df98730-7a74-440c-a68e-e86e06e2d247",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "import pandas as pd\n",
+ "from sklearn.metrics import cohen_kappa_score, confusion_matrix\n",
+ "from scipy.stats import wilcoxon\n",
+ "import seaborn as sns\n",
+ "import matplotlib.pyplot as plt"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "a5199587-f02b-44ac-8034-b8c566f31020",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# --- Simulate health states (0: Healthy, 1: Warning, 2: Distress) ---\n",
+ "np.random.seed(42)\n",
+ "n = 200\n",
+ "states = [1]\n",
+ "for _ in range(n - 1):\n",
+ " move = np.random.choice([-1, 0, 1], p=[0.1, 0.8, 0.1])\n",
+ " states.append(np.clip(states[-1] + move, 0, 2))\n",
+ "\n",
+ "# --- Model behavior ---\n",
+ "def simulate_model(true_states, direction):\n",
+ " shift = lambda x: np.clip(x + np.random.choice([0, direction], p=[0.8, 0.2]), 0, 2)\n",
+ " return list(map(shift, true_states))\n",
+ "\n",
+ "df = pd.DataFrame({\n",
+ " 'True': states,\n",
+ " 'Model_A': simulate_model(states, direction=-1), # Conservative\n",
+ " 'Model_B': simulate_model(states, direction=1) # Aggressive\n",
+ "})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "6a066503-d0ed-455e-b565-d5f96d067267",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " True | \n",
+ " Model_A | \n",
+ " Model_B | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 2 | \n",
+ " 2 | \n",
+ " 2 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 2 | \n",
+ " 2 | \n",
+ " 2 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 2 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " True Model_A Model_B\n",
+ "0 1 1 1\n",
+ "1 1 1 1\n",
+ "2 2 2 2\n",
+ "3 2 2 2\n",
+ "4 2 1 2"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "2e782f30-7784-43c0-a71e-bbee9f0ee9aa",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Weighted Cohen's Kappa (Model A): 0.87\n",
+ "Weighted Cohen's Kappa (Model B): 0.82\n"
+ ]
+ }
+ ],
+ "source": [
+ "# --- Evaluation Metrics ---\n",
+ "def print_kappa(true, pred, label):\n",
+ " kappa = cohen_kappa_score(true, pred, weights='quadratic')\n",
+ " print(f\"Weighted Cohen's Kappa ({label}): {kappa:.2f}\")\n",
+ " return kappa\n",
+ "\n",
+ "kappa_a = print_kappa(df['True'], df['Model_A'], 'Model A')\n",
+ "kappa_b = print_kappa(df['True'], df['Model_B'], 'Model B')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "b9bf71e3-b793-4757-9386-bf28573e3830",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# Confusion Matrices\n",
+ "cm_a = confusion_matrix(df['True'], df['Model_A'])\n",
+ "cm_b = confusion_matrix(df['True'], df['Model_B'])\n",
+ "\n",
+ "fig, ax = plt.subplots(1, 2, figsize=(12, 5))\n",
+ "sns.heatmap(cm_a, annot=True, fmt='d', ax=ax[0], cmap='Blues', xticklabels=[0,1,2], yticklabels=[0,1,2])\n",
+ "ax[0].set_title(\"Confusion Matrix - Model A\")\n",
+ "ax[0].set_xlabel(\"Predicted\")\n",
+ "ax[0].set_ylabel(\"Actual\")\n",
+ "\n",
+ "sns.heatmap(cm_b, annot=True, fmt='d', ax=ax[1], cmap='Blues', xticklabels=[0,1,2], yticklabels=[0,1,2])\n",
+ "ax[1].set_title(\"Confusion Matrix - Model B\")\n",
+ "ax[1].set_xlabel(\"Predicted\")\n",
+ "ax[1].set_ylabel(\"Actual\")\n",
+ "\n",
+ "plt.tight_layout()\n",
+ "# plt.savefig(\"confusion_matrices.png\")\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "c633a7b9-4658-42c1-a6ff-788c37376d0e",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Wilcoxon test p-value: 0.0960\n",
+ "\n",
+ "Calibration Summary:\n",
+ " 0 1 2\n",
+ "True 0.350 0.425 0.225\n",
+ "Model_A 0.465 0.350 0.185\n",
+ "Model_B 0.255 0.395 0.350\n"
+ ]
+ }
+ ],
+ "source": [
+ "# --- Wilcoxon Signed-Rank Test ---\n",
+ "df['Error_A'] = (df['True'] - df['Model_A']).abs()\n",
+ "df['Error_B'] = (df['True'] - df['Model_B']).abs()\n",
+ "_, p_val = wilcoxon(df['Error_A'], df['Error_B'])\n",
+ "print(f\"Wilcoxon test p-value: {p_val:.4f}\")\n",
+ "\n",
+ "# --- Calibration ---\n",
+ "calib = df[['True', 'Model_A', 'Model_B']].apply(pd.Series.value_counts, normalize=True).fillna(0).T\n",
+ "print(\"\\nCalibration Summary:\")\n",
+ "print(calib)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "id": "09d38547-27d6-4ddf-8f6b-1f3e1cc9ade7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Policy Impact Summary:\n",
+ " Average Total Cost\n",
+ "Total_A 35.75\n",
+ "Total_B 34.19\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Policy Impact Modeling\n",
+ "def decide(action):\n",
+ " if action == 2:\n",
+ " return 'intervene'\n",
+ " elif action == 1:\n",
+ " return 'review'\n",
+ " return 'none'\n",
+ "\n",
+ "df['Policy_A'] = df['Model_A'].apply(decide)\n",
+ "df['Policy_B'] = df['Model_B'].apply(decide)\n",
+ "\n",
+ "def estimate_cost(policy):\n",
+ " if policy == 'intervene':\n",
+ " return 20\n",
+ " elif policy == 'review':\n",
+ " return 5\n",
+ " return 0\n",
+ "\n",
+ "def expected_loss(true_class, policy):\n",
+ " base_risk = [10, 50, 100][true_class]\n",
+ " if policy == 'intervene':\n",
+ " return base_risk * 0.4\n",
+ " elif policy == 'review':\n",
+ " return base_risk * 0.7\n",
+ " return base_risk\n",
+ "\n",
+ "for model in ['A', 'B']:\n",
+ " df[f'Cost_{model}'] = df[f'Policy_{model}'].apply(estimate_cost)\n",
+ " df[f'ExpectedLoss_{model}'] = df.apply(lambda row: expected_loss(row['True'], row[f'Policy_{model}']), axis=1)\n",
+ " df[f'Total_{model}'] = df[f'Cost_{model}'] + df[f'ExpectedLoss_{model}']\n",
+ "\n",
+ "summary = df[[f'Total_A', f'Total_B']].mean().to_frame(name='Average Total Cost')\n",
+ "print(\"\\nPolicy Impact Summary:\")\n",
+ "print(summary)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "id": "2c74046e-d2af-4276-9e44-d16b8a3adfbb",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# --- Confusion Matrices ---\n",
+ "def plot_confusion(ax, true, pred, title):\n",
+ " cm = confusion_matrix(true, pred)\n",
+ " sns.heatmap(cm, annot=True, fmt='d', cmap='Blues', ax=ax,\n",
+ " xticklabels=[0, 1, 2], yticklabels=[0, 1, 2])\n",
+ " ax.set_title(title)\n",
+ " ax.set_xlabel(\"Predicted\")\n",
+ " ax.set_ylabel(\"Actual\")\n",
+ "\n",
+ "fig, axes = plt.subplots(1, 2, figsize=(12, 5))\n",
+ "plot_confusion(axes[0], df['True'], df['Model_A'], \"Confusion Matrix - Model A\")\n",
+ "plot_confusion(axes[1], df['True'], df['Model_B'], \"Confusion Matrix - Model B\")\n",
+ "plt.tight_layout()\n",
+ "# plt.savefig(\"confusion_matrices.png\")\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "id": "4774e37a-5e1e-478c-a6fe-6cd85053d18a",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Policy Impact Summary:\n",
+ " Average Total Cost\n",
+ "Total_A 35.75\n",
+ "Total_B 34.19\n"
+ ]
+ }
+ ],
+ "source": [
+ "# --- Policy Impact Modeling ---\n",
+ "policy_map = {0: 'none', 1: 'review', 2: 'intervene'}\n",
+ "cost_map = {'none': 0, 'review': 5, 'intervene': 20}\n",
+ "base_risk = {0: 10, 1: 50, 2: 100}\n",
+ "risk_factor = {'none': 1.0, 'review': 0.7, 'intervene': 0.4}\n",
+ "\n",
+ "for model in ['Model_A', 'Model_B']:\n",
+ " policy_col = f'Policy_{model[-1]}'\n",
+ " cost_col = f'Cost_{model[-1]}'\n",
+ " loss_col = f'ExpectedLoss_{model[-1]}'\n",
+ " total_col = f'Total_{model[-1]}'\n",
+ "\n",
+ " df[policy_col] = df[model].map(policy_map)\n",
+ " df[cost_col] = df[policy_col].map(cost_map)\n",
+ " df[loss_col] = df.apply(lambda row: base_risk[row['True']] * risk_factor[row[policy_col]], axis=1)\n",
+ " df[total_col] = df[cost_col] + df[loss_col]\n",
+ "\n",
+ "# --- Summary ---\n",
+ "summary = df[['Total_A', 'Total_B']].mean().to_frame(name='Average Total Cost')\n",
+ "print(\"\\nPolicy Impact Summary:\")\n",
+ "print(summary)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "53cb8104-321d-4664-ab33-3f69a17e0182",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.4"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}