收藏 分享(赏)

利用Python进行数据分析之 数据加载.ppt

上传人:精品资料 文档编号:8844981 上传时间:2019-07-14 格式:PPT 页数:15 大小:996.50KB
下载 相关 举报
利用Python进行数据分析之 数据加载.ppt_第1页
第1页 / 共15页
利用Python进行数据分析之 数据加载.ppt_第2页
第2页 / 共15页
利用Python进行数据分析之 数据加载.ppt_第3页
第3页 / 共15页
利用Python进行数据分析之 数据加载.ppt_第4页
第4页 / 共15页
利用Python进行数据分析之 数据加载.ppt_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、数据加载,存储与文件格式,1,读写文本格式数据: (read_csv,read_table,read_fwf,read_clipboard,open()to_csv,to_excel,write()2, JSON数据: (两个方法:json.loads() json.dumps())3,XML和HTML:WEB信息收集(两个接口lxml.html, lxml.objectify)4,二进制数据格式(pickle函数,短期存储格式)5,使用HTML和WEB API(requests包)6,使用数据库,目录,读取文本格式数据,读取文本格式数据,pandas读取文件会自动推断数据类型,不用指定。 以

2、read_csv为例,下面是常用的几个参数: 用 names重新规定列名,用index_col指定索引,也可以将多个列组合作为层次化索引。 可以编写正则表达式规定分隔符。 用skiprows跳过某些行。 缺失数据要么没有,要么用某个标记值表示,pandas常用NA、-1.#IND、NULL等进行标记。 用na_values用来不同的NA标记值。 Nrows 只读取几行 Chunksize:逐块读取文件,定义一个字典为各个列指定NA标记值,直接=null的就是把df中所有为空值的都标为null,跳过第3行,将数据写出到文本格式,1、利用data_frame的to_csv方法,可以将数据写到一个以

3、逗号分隔的文件中,也可用sep参数指定分隔符,如 data.to_csv() 2、缺失值写入输出时会被表示为空字符串,可使用na_rep表示为别的标记值。,不添加后缀的话默认是一个file文件,data.to_csv(sys.stdout, sep=|) # 打印到屏幕 data.to_csv(sys.stdout, na_rep=NULL) # 空字符处显示为NULL data.to_csv(sys.stdout, index=False, header=False) # 禁用行和列的标签 data.to_csv(sys.stdout, cols=a, b, c) # 按照指定的顺序显示列,

4、sys.stdout就相当于print,使用之前要import,JSON数据,JSON数据已经成为通过http请求在wed浏览器和其他应用程序之间发送数据的标准格式之一,它是一种比表格型文本格式更灵活的数据格式。JSON非常接近于有效的python代码,基本类型都有对象,数组,字符串,数值,布尔型以及null。,Python形式,JSON格式,JSON格式,json.loads(),json.dumps(),Html基本信息,HTML 使用标记标签来描述网页 HTML 文档描述网页 保存为后缀名带.html打开就是一个网页 a href 超链接,XML和HTML:WEB信息收集,Python有

5、许多可以读写HTML和XML格式数据的库,lxml就是其中之一。,XML和HTML:WEB信息收集,Python有许多可以读写HTML和XML格式数据的库,lxml就是其中之一。,from lxml.html import parse from urllib.request import urlopen urllib2在python中是urllib.request from pandas.io.parsers import TextParser import pandas as pdparsed=parse(urlopen(http:/ 打开url doc=parsed.getroot() 可

6、以得到url里面所有的element print(-doc-) print (doc)links=doc.findall(./a) 获取所有为 的超链接 lnk=links3 找到其中的一个连接下面的内容 print(-lnk-) print(links3) tables=doc.findall(./table) 找到这个连接下面的所有table元素 print(-table-) print (tables) table=tables0 找到想要的table print(-calls-) print (calls)rows =table.findall(./tr) 找到table下面所有的行

7、print(-rows-) print (rows),XML和HTML:WEB信息收集,Python有许多可以读写HTML和XML格式数据的库,lxml就是其中之一。,def _unpack(row,kind=td):elts=row.findall(./%s % kind)return val.text_content().strip() for val in eltsprint(-th-) 调用函数分别打印th和一行td print(_unpack(rows0,kind=th) print() print(-td1-) print(_unpack(rows1,kind=td),text_c

8、ontent()取到每一个td下面的内容 strip() 删除前后的空格,XML和HTML:WEB信息收集,Python有许多可以读写HTML和XML格式数据的库,lxml就是其中之一。,直接用Dataframe把行和表头拼起来也行这里TextParser类可以自动转换数据类型最后用to_excel比to_csv好用,to_csv保存的时候中文不好用,使用数据库,将excel的数据导入DB中,python支持多种关系型数据库:SQL Server, MySQL,DB2等, 我是直接使用Python自带的SQLite数据库,1.导入Python SQLITE数据库模块import sqlites

9、2. 创建/打开数据库 在调用connect函数的时候,会指定库名称,如果指定的数据库存在就直接打开这个数据库,如果不存在就新创建一个再打开。con=splites.connect(:memory:)3.使用游标查询数据库 我们需要使用游标对象SQL语句查询数据库,获得查询对象。 通过以下方法来定义一个游标cursor=con.cursor()cursor.execute() #执行sql语句 cursor.executemany #执行多条sql语句 cursor.close() #关闭游标 cursor.fetchone() #从结果中取一条记录,并将游标指向下一条记录 cursor.fe

10、tchmany() #从结果中取多条记录 cursor.fetchall() #从结果中取出所有记录 cursor.scroll() #游标滚动,使用数据库,将excel的数据导入DB中,python支持多种关系型数据库:SQL Server, MySQL,DB2等, 我是直接使用Python自带的SQLite数据库,创建了一个test1表,用来存储数据,使用数据库,将excel的数据导入DB中,python支持多种关系型数据库:SQL Server, MySQL,DB2等, 我是直接使用Python自带的SQLite数据库,使用了for循环每次读取一条数据然后插入到test1表中,Thank you,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报