Django + pandas застряли - Сделайте другой кадр данных из pandas или сделайте другую таблицу
Проблемы с Django и pandas Друзья, 3 дня пытался разобраться с этим самостоятельно, но безуспешно... У меня есть такие модели:
Пациент:
class Patient(models.Model):
<...>
hist_num = models.IntegerField(validators=[MinValueValidator(0)], primary_key=True)
<...>
def __str__(self):
return f"{self.first_name} {self.last_name}"
Группа лабораторного анализа:
class AnalysysGroup(models.Model):
group_name = models.CharField(max_length=32)
# analysis = models.ManyToManyField(AnalysisType, blank=True)
def __str__(self):
return f"{self.group_name}"
Анализ (гемоглобин и т.д.):
class AnalysisType(models.Model):
a_name = models.CharField(max_length=16)
a_measur = models.CharField(max_length=16)
a_ref_min = models.DecimalField(max_digits=5, decimal_places=2, null=True, blank=True)
a_ref_max = models.DecimalField(max_digits=5, decimal_places=2, null=True, blank=True)
analysis_group = models.ManyToManyField(AnalysysGroup)
Анализ пациента:
class PatientAnalysis(models.Model):
patient = models.ForeignKey(Patient, on_delete=models.CASCADE)
analysis_date = models.DateTimeField()
analysis_type = models.ForeignKey(AnalysisType, on_delete=models.CASCADE, default=1)
analysis_data = models.DecimalField(max_digits=5, decimal_places=2, blank=True, null=True)
Я пытаюсь получить таблицу со всеми анализами моего пациента за день и отсортировать их по типам анализа. Мой запрос выглядит следующим образом
analysis_qs = PatientAnalysis.objects.filter(patient__hist_num=pk).filter(analysis_type__analysis_group=ag).order_by('analysis_type','-analysis_date').distinct()
df1 = pd.DataFrame(analysis_qs.values('analysis_type','analysis_date','analysis_data'))
<...>
return df1.to_html()
И выдает: Result of {{df1 | save}
I want to see sth like ideally + measurments
| Data | Haemoglob| Red blood| Leuc |
| -------- | -------- | -------- | -------- |
| Data | Result | Result | Result |
| Data | Result | Result | Result |