Django与熊猫

Django与熊猫,django,pandas,django-rest-framework,Django,Pandas,Django Rest Framework,我正在使用django restframework、pandas、django pandas制作一个api,我得到了以下输出 这是单个用户的数据,每个标签表示一个列名,但我希望输出的格式如下 有人能帮助以所需格式获取数据吗 我的代码是 views.py @api_view(['GET']) def my_view(request,id): qs = Health.objects.filter(id = id) df = read_frame(qs) df['x-Mean

我正在使用django restframework、pandas、django pandas制作一个api,我得到了以下输出

这是单个用户的数据,每个标签表示一个列名,但我希望输出的格式如下

有人能帮助以所需格式获取数据吗

我的代码是

views.py

@api_view(['GET'])
def my_view(request,id):
    qs = Health.objects.filter(id = id)
    df = read_frame(qs)
    df['x-Mean'] = abs(df['Age'] - df['Age'].mean())
    df['1.96*std'] = 1.96*df['Age'].std()
    df['Outlier'] = abs(df['Age'] - df['Age'].mean()) > 1.96*df['Age'].std()
    df['bmi'] = df['Weight']/(df['Height']/100)**2
    a = df.fillna(0)
    return Response(a)

之所以发生这种情况,是因为
a
是一个
pandas.DataFrame
,它对应于表,所以在序列化过程中,它尝试表示每个表列的所有数据
DataFrame
不知道每列只有一个值。 必须手动提取值:

a = {column: values[0] for column, values in df.fillna(0).to_dict().items(orient='list')}
return Response(a)
有关更多详细信息,请检查

Thank@zymud我在df.fillna()之后添加到了_dict()方法,它在a=a.to_dict(orient='records')中起作用