xml和pandas结合处理的一个小例子-待完善

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import pandas
import json
import xml.etree.ElementTree as ET

# 读取csv对象为pandas
loc_info = pandas.read_csv('湖南花瑶花化妆品有限公司(51616兴业银行)2014.csv')
# 列值运算
loc_info["size_1"] = loc_info["right"] - loc_info["left"]
loc_info["size_2"] = loc_info["bottom"] - loc_info["top"]
# 删除列
loc_info = loc_info.drop("right",1)
loc_info = loc_info.drop("bottom",1)
loc_json = loc_info.to_json(orient='index')

# 组装xml需要的属性键值对
loc_list = []
loc_dict = json.loads(loc_json)
for loc in loc_dict.values():
    position = str(loc['left']) + ',' + str(loc['top'])
    size = str(loc['size_1']) + ',' + str(loc['size_2'])
    loc_value = {
                "Position": position,
                "Size": size,
                "StrokeThickness": "1",
                "Shape": "BasicShapes.Rectangle",
                "Content": loc['value'],
                "ItemKind": "DiagramShape"
            }
    loc_list.append(loc_value)

# 获取xml根节点
tree = ET.parse("origin.xml")
root = tree.getroot()
children = root[0][0][0]

# 添加子节点
for i in range(len(loc_list)):
    item_name = "Item"+str(i)
    ET.SubElement(children,item_name,loc_list[i])

ET.dump(children)

# 创建新xml对象
tree.write('test_demo.xml')

转载于:https://www.cnblogs.com/everfight/p/xml_pandas.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值