{
  "fetched_at": "2026-10-20T11:13:16Z",
  "source_url": "https://www.kaggle.com/competitions/ec524-heart-disease/data",
  "pages": [
    {
      "name": "rules",
      "content": "General rules\n\n - Don't cheat!\n - Apply yourself!\n - Have fun!\n\n**Life decisions:** As noted in the data section, clearly you can just download the dataset from its original repository and make perfect predictions. This strategy is cheating (and annoying). Don't do it.\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "data-description",
      "content": "# Data\n\nThese data come from the [UCI Machine-Learning Repository](https://archive.ics.uci.edu/ml/index.php) (specifically from the [heart-disease dataset](https://archive.ics.uci.edu/ml/datasets/Heart+Disease).\n\nThe dataset that we will use has one outcome—`heart_disease`, an indicator for whether heart disease was present in the patient—and 13 features (predictors) on 303 patients.\n\n## Outcome\n\nThe outcome `heart_disease` takes on either a `1` (heart disease is present) or `0` (not present). This variable is actually recoded from a variable that spanned 0 to 4, but we're going to focus on this recoding of 0/1.\n\n## Features\n\nThe features (according to the original documentation)\n\n1. `age`\n2. `sex`\n3. `chest_pain`: type of chest pain\n- Value of 1: typical angina\n- Value of 2: atypical angina\n- Value of 3: non-anginal pain\n- Value of 4: asymptomatic\n4. `resting_bp`: resting blood pressure\n5. `cholestoral`: serum cholestoral in mg/dl\n6. `high_sugar`: an indicator for whether fasting blood sugar > 120 mg/dl  (1 = true; 0 = false)\n7. `ecg`: resting electrocardiographic results\n  - Value of 0: normal\n  - Value of 1: having ST-T wave abnormality (T wave inversions and/or ST elevation or depression of > 0.05 mV)\n  - Value of 2: showing probable or definite left ventricular hypertrophy by Estes' criteria\n8. `max_rate`: maximum heart rate achieved\n9. `exercise_angina`: exercise induced angina (1 = yes; 0 = no)\n10. `st_depression`: ST depression induced by exercise relative to rest\n11. `slope`: the slope of the peak exercise ST segment\n  - Value of 1: upsloping\n  - Value of 2: flat\n  - Value of 3: downsloping\n12. `vessels`: number of major vessels (0–3) colored by flourosopy\n13. `thalium_scan`: thalium heart scan\n  - Value of 3: normal\n  - Value of 6: fixed defect\n  - Value of 7: reversable defect\n\nIf you're wondering what *angina* is, [here is a description](https://www.heart.org/en/health-topics/heart-attack/angina-chest-pain) from the American Heart Association.\n\n## Note: Life decisions\n\nClearly you can just download the dataset from its original repository and make perfect predictions. This strategy is cheating.\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "**Goal:** The goal of this project is to apply everything we've covered so far in a new context: classification of heart disease. We've covered many of the central components of machine learning and several algorithms. Now you apply them.\n\nSpecifically, you will use a set of 14 features to predict a single outcome: whether or not an individual patient has heart disease. \n\nThis competition will help introduce you to some of the differences (and the similarities) between classification problems and regression problems.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "## Evaluation metric\n\nThe evaluation metric for this competition is **Mean F1-Score**. The F1 score, commonly used in information retrieval, measures accuracy using the statistics precision \\\\(P\\\\) and recall \\\\(R\\\\).\n\n----\n\n**Precision** is the ratio of true positives \\\\(p\\_T\\\\) to all predicted positives \\\\( p\\_{T} + p\\_{F} \\\\), *i.e.*,\n\\\\[ P = \\dfrac{p\\_T}{p\\_{T} + p\\_{F}} \\\\]\n\n**Recall** is the ratio of true positives \\\\(p\\_T\\\\) to all actual positives \\\\( p\\_{T} + n\\_{F} \\\\), where \\\\( n\\_{F} \\\\) gives the number of false negatives. Thus, recall \\\\(R\\\\) is\n\\\\[ R = \\dfrac{p\\_T}{p\\_{T} + n\\_{F}} \\\\]\n\nThe **F1 score** is given by\n\\\\[ F1 = 2\\frac{P \\cdot R}{P+R} \\\\]\n\nThe F1 metric weights recall and precision equally, and a good retrieval algorithm will maximize both precision and recall simultaneously. Thus, moderately good performance on both will be favored over extremely good performance on one and poor performance on the other.\n\n## Submission format\n\nYour submission file should contain two columns: `id` (the patients' IDs) and `heart_disease` (binary).\n\nThe file should contain a header and have the following format:\n\n`id` | `heart_disease`\n|-----|-----|\n|179 | 0 |\n| 14 | 0 | \n|195 | 1 |\n| ⋮ | ⋮ |\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}