Electrocardiogram (ECG) is a P, QRS and T wave demonstrating the electrical activity of the heart. Feature extraction and segmentation in ECG plays a significant role in diagnosing most of the cardiac disease. The main objective of this paper is to review the various machine learning approaches for diagnosing Myocardial Infarction (heart attack), differentiate Arrhythmias (heart beat variation), Hypertrophy (increase thickness of the heart muscle) and Enlargement of Heart. Further, we also present various machine learning approaches and compare different methods and results used to analyze the ECG. The existing methods are compared and contrasted based on qualitative and qualitative parameters viz., purpose of the work, algorithms adopted and results obtained.