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()

有什么想法?在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值