A framework for smartphone-enabled, patient-generated health data analysis