Вопрос: Как мне добавить несколько элементов класса из фрейма данных и правильно ли я настроил свои классы?
Сейчас я запустил Python после большого количества Matlab и довольно немного R. Поскольку я хочу сделать Python «правильным» способом (если он есть), я пытаюсь делать объектно-ориентированное кодирование. Прямо сейчас я ставлю класс диагноза и класс пациентов, которым может быть поставлен этот диагноз. \
Теперь я хочу импортировать фрейм данных (импортированный в виде таблицы csv через pandas), чтобы провести диагностику каждой строки. Итак, я подумал о чем-то вроде части внизу. Пытаясь выполнить эту работу, я подумал о том, чтобы использовать различные имена переменных для диагнозов. Однако это не кажется правильным. \
Конечная цель прямо сейчас - создать фиктивную базу данных, которую я могу использовать для целей планирования позже.
Это то, что у меня есть на данный момент:
def __init__(self, diagnosecode, diagnose_name, priority_ave, priority_std, ICU_ave, ICU_std, clinic_ave, clinic_std):
self.diagnosecode = diagnosecode
self.diagnose_name = diagnose_name
self.priority_ave = priority_ave
self.priority_std = priority_std
self.ICU_ave = ICU_ave
self.ICU_std = ICU_std
self.clinic_ave = clinic_ave
self.clinic_std = clinic_std
class Patient:
def __init__(self, patient_number, diagnosecode, date_since):
self.patient_number = patient_number
self.diagnosecode = diagnosecode
self.priority = round(np.random.normal(diagnose.priority_ave, diagnose.priority_std),0)
self.ICU = round(np.random.normal(diagnose.ICU_ave, diagnose.ICU_std),1)
self.clinic = round(np.random.normal(diagnose.clinic_ave, diagnose.clinic_std),1)
self.days_since = datetime.datetime.now() - date_since
def create_diagnoses(diagnoses_dataframe):
df = clean_diagnoses(diagnoses_dataframe)
for x in df.index:
VARYING_DIAGNOSE_NAME??? = Diagnose(diagnosecode=df.diagnosecode[x], diagnose_name=df.diagnose_name[x], priority_ave=df.priority_ave[x],
priority_std=df.priority_std[x], ICU_ave = df.ICU_ave[x], ICU_std = df.ICU_std[x], clinic_ave = df.clinic_ave[x],
clinic_std=df.clinic_std[x])```