Pandas之DataFrame操作
2015-09-11 11:22
471 查看
Pandas是Python下一个开源数据分析的库,它提供的数据结构DataFrame极大的简化了数据分析过程中一些繁琐操作。 1. 基本使用:创建DataFrame. DataFrame是一张二维的表,大家可以把它想象成一张Excel表单或者Sql表。Excel 2007及其以后的版本的最大行数是1048576,最大列数是16384,超过这个规模的数据Excel就会弹出个框框“此文本包含多行文本,无法放置在一个工作表中”。Pandas处理上千万的数据是易如反掌的sh事情,同时随后我们也将看到它比SQL有更强的表达能力,可以做很多复杂的操作,要写的code也更少。
说了一大堆它的好处,要实际感触还得动手码代码。首要的任务就是创建一个DataFrame,它有几种创建方式:
列表,序列(pandas.Series), numpy.ndarray的字典
二维numpy.ndarray
别的DataFrame
结构化的记录(structured arrays)
其中,我最喜欢的是通过二维ndarray创建DataFrame,因为代码敲得最少:
当然你还可以参考我的这篇文章从mysql数据库或者csv文件中载入数据到dataframe。
dataframe中index用来标识行,column标识列,shape表示维度。
通过describe方法,我们可以对df中的数据有个大概的了解:
2. 数据select, del, update。
按照列名select:
按照行数select:
按照索引select:
按照行数和列数select:
删除某列:
删除某行:
3.运算。
基本运算:
map运算,和python中的map有些类似:
apply运算:
4. Group by 操作。
pandas中的group by 操作是我的最爱,不用把数据导入excel或者mysql就可以进行灵活的group by 操作,简化了分析过程。
5. 导出到csv文件
dataframe可以使用to_csv方法方便地导出到csv文件中,如果数据中含有中文,一般encoding指定为”utf-8″,否则导出时程序会因为不能识别相应的字符串而抛出异常,index指定为False表示不用导出dataframe的index数据。
本文出自 杂七杂八,转载时请注明出处及相应链接。
本文永久链接: http://www.dcharm.com/?p=13
说了一大堆它的好处,要实际感触还得动手码代码。首要的任务就是创建一个DataFrame,它有几种创建方式:
列表,序列(pandas.Series), numpy.ndarray的字典
二维numpy.ndarray
别的DataFrame
结构化的记录(structured arrays)
其中,我最喜欢的是通过二维ndarray创建DataFrame,因为代码敲得最少:
dataframe中index用来标识行,column标识列,shape表示维度。
按照列名select:
基本运算:
pandas中的group by 操作是我的最爱,不用把数据导入excel或者mysql就可以进行灵活的group by 操作,简化了分析过程。
dataframe可以使用to_csv方法方便地导出到csv文件中,如果数据中含有中文,一般encoding指定为”utf-8″,否则导出时程序会因为不能识别相应的字符串而抛出异常,index指定为False表示不用导出dataframe的index数据。
本文永久链接: http://www.dcharm.com/?p=13
相关文章推荐
- CUDA Cuts: Fast Graph Cuts on the GPU
- Lichee (六) 优化配置的微内核
- jQuery中添加自定义或函数方法
- [Android] Ignoring InnerClasses attribute for an anonymous inner class:错误
- Android 以流的形式复制集合所有元素到另一个集合
- 测试某个类运行是否正常的方法
- oracle还原初始化数据
- logback配置
- LeetCode || Majority Element II
- Android中关于Handler的若干思考
- static
- burpsuite+sqlmap跨登录验证SQL注入
- iOS--基础知识--手势
- iOS 统计打点那些事
- form 表单提交数据
- Android中This、super、getApplicationContext()、getApplication()之间的区别
- 浪潮MegaCli
- MVC权限管理系统dwpro项目权限按钮无故自动消失问题
- C#输出日历
- 打开/取消 SecureCRT的右键复制功能