将Pandas DataFrame转换为适合django模板的列表

时间:2017-02-02 22:48:14

标签: python django pandas dataframe

您如何转换pd.DataFramefield1之后获得的field2

                          field3 \
field1  field2                            
240502  000361            value1
        005936            value2
        006984            value3

                          field4 
field1  field2                            
240502  000361           valuef1
        005936           valuef2
        006984           valuef3

到JSON

[{
    "field4": "valuef1",
    "field3": "value1"
}, {
    "field4": "valuef2",
    "field3": "value2"
}, {
    "field4": "valuef3",
    "field3": "value3"
}]

然后到

[{
    u'field4': u'valuef1',
    u'field3': u'value1'
}, {
    u'field4': u'valuef2',
    u'field3': u'value2'
}, {
    u'field4': u'valuef3',
    u'field3': u'value3'
}]

我想出了

json.loads(stats.to_json(orient='records'))

但似乎太多了。我需要在django模板中使用它。

  {% for s in stats %}
    <tr>
        <td style="border-bottom:1px solid #c5dbec;color:#3d3d3d;background-color:#ffffff" align="center">{{ s.field3 }}</td>
        <td style="border-bottom:1px solid #c5dbec;color:#3d3d3d;background-color:#ffffff" align="right">{{ s.field4 }}</td>
    </tr>
  {% endfor %}

1 个答案:

答案 0 :(得分:2)

这是你想要的吗?

In [56]: df
Out[56]:
               field3   field4
field1 field2
240502 361     value1  valuef1
       5936    value2  valuef2
       6984    value3  valuef3

In [57]: df.to_dict('r')
Out[57]:
[{'field3': 'value1', 'field4': 'valuef1'},
 {'field3': 'value2', 'field4': 'valuef2'},
 {'field3': 'value3', 'field4': 'valuef3'}]