1. A method for temporal clustering of records comprising: receiving a first attribute and a second attribute different than the first attribute, wherein each of the first attribute and the second attribute comprises an index date and one of: a medical code, a diagnosis, a lab test, a specific stage of disease, a drug treatment, and a procedure; searching a database stored on a data storage device to obtain a first group of records associated with the first attribute; searching, with a processing device, the first group of records to obtain a second group of records associated with the second attribute; generating, with a processing device, a temporal relationship between the first attribute and the second attribute by determining a ratio of the second group of records versus the first group of records, wherein the ratio represents a probability of an occurrence of the second attribute when an occurrence of the first attribute exists, determining a time frame between the occurrence of the first attribute and the occurrence of the second attribute for the second group of records associated with the first and second attributes, and normalizing each of the second group of records with the index date of the first attribute by subtracting the occurrence time of the first attribute from the occurrence time of the second attribute for each of the second group of records; and generating an output comprising a graphical representation of the temporal relationship.