Python读取XML中数据提取为Dataframe
2018-08-03 11:59
543 查看
对应的数据集为:
[code]<?xml version="1.0"?> -<opencv_storage> -<vocabulary type_id="opencv-matrix"> <rows>424</rows> <cols>512</cols> <dt>u</dt> <data> 0 0 0 0 0 0 0 0 0 145 169 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 205 0 0 0 0 0 0 0 0 0 0 0 0 227 0 0 158 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 0 0 152 0 0 0 144 0 139 0 148 0 0 0 0 0 153 0 0 148 0 0 0 0 0 154 0 0 0 0 58 156 0 0 0 0 0 150 0 0 0 0 0 154 153 0 0 219 0 0 0 144 153 158 149 153 0 0 0 150 148 0 0 0 154 143 0 145 0 152 0 154 148 153 162 148 155 146 0 144 0 152 145 154 0 0 0 0 151 153 148 153 156 0 144 0 0 0 0 0 0 0 0 0 143 0 153 142 0 0 0 0 0 0 0 0 0 154 148 0 148 158 148 147 152 154 158 155 150 150 0 151 0 148 151 157 152 149 148 150 145 153 151 153 153 0 152 147 158 151 152 155 154 149 147 151 150 0 151 154 142 148 149 0 152 151 0 146 147 147 151 148 146 154 153 149 0 151 153 149 150 151 156 148 152 150 146 150 148 151 153 154 157 153 150 155 152 150 149 152 150 147 </data> </vocabulary> </opencv_storage>
对应的处理代码:
[code]import numpy as np import pandas as pd import xml.dom.minidom #打开xml文档 dom = xml.dom.minidom.parse('D:/xuchao.xml') #得到文档元素对象,拿出<data>间的数据 root = dom.documentElement cp=dom.getElementsByTagName('data') c1=cp[0] c2=c1.firstChild.data #先根据换行符拆分 result=c2.split('\n') #得到的list第一行为空,去除这行 result.remove(result[0]) #根据空格把数字拆分出来,得到每行list,切片将空值切去 b=[] for lines in result: c=lines.split(' ') c=c[4:] for j in c: b.append(j) #转化为mat b=np.array(b) #源数据得到424*512,上面数据集没有这么多元素 mat=b.reshape(424,512) df=pd.Dataframe(mat)
部分Python用法参考:
阅读更多相关文章推荐
- 安装MySql+连接数据库+读取数据并存储成dataframe(python3.6)
- 使用 MySQLdb 从数据库拉回数据,并将数据存入 python的DataFrame中
- 用python做数据分析4|pandas库介绍之DataFrame基本操作
- python中创建dataframe数据,并将其转换成矩阵,对矩阵进行添加行列操作
- 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
- Python:dataframe读取以文本形式存储的数字
- Python数据清洗之Dataframe中不同分隔符数据的清洗
- android 读取 AndroidManifest.xml 中的数据:版本号、应用名称、自定义K-V数据(meta-data)
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 3、SqlContext读取mysql数据,产生一个Dataframe
- Android之读取 AndroidManifest.xml 中的数据:版本号、应用名称、自定义K-V数据(meta-data)
- Python下pandas随机获取DataFrame中的数据
- 利用python将所有时序NDVI影像转换为DataFrame数据并进行归一化
- 用data.DataReader读取股价数据并分析--python学习笔记17
- python数据分析序列——DataFrame merge and apply
- android 读取 AndroidManifest.xml 中的数据:版本号、应用名称、自定义K-V数据(meta-data)
- python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix
- #######用python做数据分析4|pandas库介绍之DataFrame基本操作#######
- Python pandas读取csv文件直接转化成二维列表(Dataframe转化为list)
- Android之读取 AndroidManifest.xml 中的数据:版本号、应用名称、自定义K-V数据(meta-data)