如何将模型对象列表转换为pandas数据框?

发布于 2021-01-29 15:09:09

我有一个此类的对象数组

class CancerDataEntity(Model):

    age = columns.Text(primary_key=True)
    gender = columns.Text(primary_key=True)
    cancer = columns.Text(primary_key=True)
    deaths = columns.Integer()
    ...

打印时,数组看起来像这样

[CancerDataEntity(age=u'80-85+', gender=u'Female', cancer=u'All cancers (C00-97,B21)', deaths=15306), CancerDataEntity(...

我想将其转换为数据帧,以便我可以以更适合我的方式进行操作-进行汇总,计数,求和等。我希望这个数据框看起来像这样:

     age     gender     cancer     deaths
0    80-85+  Female     ...        15306
1    ...

有没有一种方法可以轻松地使用numpy / pandas来实现,而无需手动处理输入数组?

关注者
0
被浏览
114
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    导致预期结果的代码:

    variables = arr[0].keys()
    df = pd.DataFrame([[getattr(i,j) for j in variables] for i in arr], columns = variables)
    

    感谢@Serbitar为我指出正确的方向。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看