python etree pandas_python – pandas.DataFrame.from_dict不使用OrderedDict保留顺序

我想将荷兰统计局(CBS)的OData XML数据源导入我们的数据库.使用lxml和pandas我认为这应该是直截了当的.通过使用OrderDict,我想保留列的顺序以便于阅读,但不知怎的,我无法做到正确.

from collections import OrderedDict

from lxml import etree

import requests

import pandas as pd

# CBS URLs

base_url = 'http://opendata.cbs.nl/ODataFeed/odata'

datasets = ['/37296ned', '/82245NED']

feed = requests.get(base_url + datasets[1] + '/TypedDataSet')

root = etree.fromstring(feed.content)

# all record entries start at tag m:properties, parse into data dict

data = []

for record in root.iter('{{{}}}properties'.format(root.nsmap['m'])):

row = OrderedDict()

for element in record:

row[element.tag.split('}')[1]] = element.text

data.append(row)

df = pd.DataFrame.from_dict(data)

df.columns

检查数据,OrderDict的顺序正确.但是看看df.head(),列首先按字母顺序排序,然后用CAPS排序?

帮忙,有人吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值