python把dict转为dataframe,将python ordereddict转换为datafram -尊龙游戏旗舰厅官网
我的记录ordereddict,如下所示:
my_record = ordereddict([ (u'fir_id', '111249'), (u'fir_type', 'org')])
我需要把它加载到数据库中,所以我想把数据集转换成一个数据帧,然后,转换成一个csv文件,以便于数据库加载。但是,当我做type(my_record)时,我得到:
这意味着它是一个类对象。如果是collections.ordereddict类型,我可以做一个dataframe(my_record)。我使用的是python2.x。我能把这个ordereddict转换成dataframe?在
编辑
多亏了nosklo的代码,错误消失了;列标题在那里,但是值丢失了。我提取了10条记录如下:
^{pr2}$
然后csv.dictwriter()生成包含以下内容的csv:,,,...,,,,,,,,,,,,,,,,
看起来像是钥匙的完整列表。文件末尾有许多行“,,,,”表示缺少值。在
更新
我现在的代码是:records = list(records)
with open('/users/.../.../rp_test_5.txt', 'w') as f:
cf = csv.dictwriter(f,
ravenpackapi.models.fields.analytics_fields,
extrasaction='ignore')
cf.writeheader()
cf.writerows(r.data for r in records)
由于缺少值,我尝试:for r in records: r.data
成功地给了我我需要的字典。所以我不明白为什么,我不能写任何值到我的csv。会是那样吗ravenpackapi.models.fields.analytics_fields
给了我[,
,
,
,...
鉴于,r.数据来自for r in records: r.data
给了我{u'rp_entity_id': u'91c82e',
u'rp_position_id': none,
u'rp_source_id': u'c98333',
u'rp_story_event_count': 17,
u'rp_story_event_index': 5,
u'rp_story_id': u'54f16f66850fb15f838629fd0c41f1cd',
u'source_name': u'ticker report',
u'sub_type': none,
u'timestamp_utc': u'2018-06-30 00:03:10.457',...,}
顺序不同,和/或密钥的格式不同?在
u'timestamp_utc'与{}
这起作用了records = list(records)
for r in records: r.data
with open('/users/.../rp_test_6.txt', 'w') as f:
cf = csv.dictwriter(f,
r.data.keys(),
extrasaction='ignore')
cf.writeheader()
cf.writerows(r.data for r in records)
我相信有更好的方法for r in records: r.data
以及r.data.keys()
有什么想法?在
总结
以上是尊龙游戏旗舰厅官网为你收集整理的python把dict转为dataframe,将python ordereddict转换为datafram的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python typeerror con
- 下一篇: