Python之pandas数据加载、存储

Python之pandas数据加载、存储

0. 输入与输出大致可分为三类:

0.1 读取文本文件和其他更好效的磁盘存储格式
2.2 使用数据库中的数据
0.3 利用Web API操作网络资源

1. 读取文本文件和其他更好效的磁盘存储格式

pandas提供了一些用于将表格型数据读取为DataFrame对象的函数。
1.1 pandas中的解析函数:

    read_csv        从文件、URL、文件型对象中加载带分隔符的数据。默认分隔符为逗号
    read_table      从文件、URL、文件型对象中加载带分隔符的数据。默认分隔符为制表符("\t")
    read_clipboard  读取剪贴板中的数据,可以看做read_table的剪贴板版。在将网页转换为表格时很有用

    其中,read_csv、read_table使用较多。

1.2 逐块读取文本文件
    读取几行nrows
    逐块读取chunksize(行数)
1.3 将数据写到文本格式
    利用DataFrame的to_csv

2. 使用数据库中的数据

2.1 使用关系型数据库中的数据,可以使用Python SQL驱动器(PyODBC、psycopg2、MySQLdb、pymssql等)
2.2 使用非关系型数据库中的数据,如MongoDB,用其官方驱动器pymongo通过默认端口进行连接。

3. 利用Web API操作网络资源

3.1 应用lxml.html处理HTML
    步骤:
    1)利用urllib2将URL打开,然后由lxml解析得到数据流
    2)得到URL和链接文本
        使用文档根节点的findall方法以及一个XPath,以及个对象的get方法(针对URL)和text_content方法(针对显示文本)
    3)通过反复试验从文档中找到正确表格
    4)将所有步骤结合起来,将数据转换为一个DataFrame
3.2 应用lxml.objectify处理XML
    1)使用lxml.objetify解析文件
    2)通过getroot得到XML文件的根节点
3.3 使用网站通过JSOM及其他格式提供数据的公共的API
    使用requests包访问这些API

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏自动化测试实战

RF接口测试(2)--http请求之get

4278
来自专栏决胜机器学习

《Redis设计与实现》读书笔记(十八) ——Redis客户端属性设计与原理

《Redis设计与实现》读书笔记(十八) ——Redis客户端属性设计与原理 (原创内容,转载请注明来源,谢谢) 一、概述 redis服务器是...

2694
来自专栏DannyHoo的专栏

几种单例

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

792
来自专栏枕边书

PHP模拟发送POST请求之四、加强file_get_contents()发送POST请求

使用了笨重fsockopen()方法后,我们开始在PHP函数库里寻找更简单的方式来进行POST请求,这时,我们发现了PHP的文件函数也具有与远程URL交互的功能...

1728
来自专栏前端说吧

关于跨域-学习笔记

2556
来自专栏蓝天

redis的一些简介

Redis是Remote Dictionary Server的缩写,他本质上一个Key/Value数据库,与Memcached类似的NoSQL型数据库。

611
来自专栏C/C++基础

程序内存布局

C/C++程序为编译后的二进制文件,运行时载入内存,运行时内存分布由代码段、初始化数据段、未初始化数据段、堆和栈构成,如果程序使用了内存映射文件(比如共享库、共...

621
来自专栏林德熙的博客

jekyll 在博客添加流程图

如果你使用的是我博客的模板,那么就可以直接使用我说的文件,如果是自己的主题,就需要在自己文件对应的地方加上代码。

541
来自专栏用户2442861的专栏

Python 一个简单的python socket编程

http://blog.csdn.net/winnie8829/article/details/37874355

492
来自专栏PHP技术

你真的了解php吗?

一、特性 1. 命名空间 命名空间用的比较多,不详细写了,记录几个值得注意的实践和细节。 多重导入 别这么做,这样写容易让人困惑。 <?php use Symf...

3515

扫码关注云+社区