Python使用Pandas对csv文件进行数据处理的方法


Posted in Python onAugust 01, 2019

今天接到一个新的任务,要对一个140多M的csv文件进行数据处理,总共有170多万行,尝试了导入本地的MySQL数据库进行查询,结果用Navicat导入直接卡死....估计是XAMPP套装里面全默认配置的MySQL性能不给力,又尝试用R搞一下吧结果发现光加载csv文件就要3分钟左右的时间,相当不给力啊,翻了翻万能的知乎发现了Python下的一个神器包:Pandas(熊猫们?),加载这个140多M的csv文件两秒钟就搞定,后面的分类汇总等操作也都是秒开,太牛逼了!记录一下这次数据处理的过程:

使用Python3.6.4环境(对中文支持比较好),安装Pandas包

pip install pandas

基本使用:

import pandas as pd
import numpy as np #进行具体的sum,count等计算时候要用到的
df=pd.read_csv('d:/snp/nh23.csv') #这里绝对路径一定要用/,windows下也是如此,不加参数默认csv文件首行为标题行
df.head() #查看引入的csv文件前5行数据
df[“播种面积”] #查看指定列,后面跟[:5]查看前5行数据

Python使用Pandas对csv文件进行数据处理的方法

df[“调查对象代码”].str[:6] #获取指定列前6位字符串

df["ADDR"]=df["调查对象代码"].str[:6] #将上一行处理后的6位地址码作为新列ADDR插入

Python使用Pandas对csv文件进行数据处理的方法

gp=df.groupby(["ADDR","代码"])["播种面积"].sum() #根据ADDR和代码进行分组后对播种面积列进行sum求和计算

Python使用Pandas对csv文件进行数据处理的方法

pv=df.pivot_table(["播种面积"],index="ADDR",columns="代码",margins=True,aggfunc=np.sum,fill_value=0) #数据透视图,对播种面积列进行汇总计算,index为行,columns为列,margins=True增加一个全部行汇总,aggfunc=np.sum透视图中对播种面积值进行sum计算,这里np是开头import的numpy as np,fill_value=0对空值进行0替换,否则没有数据会显示NaN

Python使用Pandas对csv文件进行数据处理的方法

pv.to_csv("d:/snp/test.csv") #写入csv文件

总结

以上所述是小编给大家介绍的Python使用Pandas对csv文件进行数据处理的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
使用Python的Flask框架实现视频的流媒体传输
Mar 31 Python
python实现颜色空间转换程序(Tkinter)
Dec 31 Python
深入解析Python中的线程同步方法
Jun 14 Python
Python使用defaultdict读取文件各列的方法
May 11 Python
Python使用Django实现博客系统完整版
Sep 29 Python
python解析含有重复key的json方法
Jan 22 Python
详解Python3 pickle模块用法
Sep 16 Python
django xadmin action兼容自定义model权限教程
Mar 30 Python
python使用多线程+socket实现端口扫描
May 28 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
Jun 23 Python
python文件名批量重命名脚本实例代码
Apr 22 Python
Python matplotlib可视化之绘制韦恩图
Feb 24 Python
python使用writerows写csv文件产生多余空行的处理方法
Aug 01 #Python
python psutil模块使用方法解析
Aug 01 #Python
python读写csv文件并增加行列的实例代码
Aug 01 #Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 #Python
python对csv文件追加写入列的方法
Aug 01 #Python
Django Aggregation聚合使用方法解析
Aug 01 #Python
Flask教程之重定向与错误处理实例分析
Aug 01 #Python
You might like
php垃圾代码优化操作代码
2010/08/05 PHP
基于php设计模式中单例模式的应用分析
2013/05/15 PHP
curl和libcurl的区别简介
2015/07/01 PHP
PHP 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
Zend Framework处理Json数据方法详解
2016/12/09 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
学习面向对象之面向对象的基本概念:对象和其他基本要素
2010/11/30 Javascript
js 立即调用的函数表达式如何写
2014/01/12 Javascript
jQuery实现数秒后自动提交form的方法
2015/03/05 Javascript
js实现两点之间画线的方法
2015/05/12 Javascript
Jquery EasyUI $.Parser
2017/06/02 jQuery
React入门教程之Hello World以及环境搭建详解
2017/07/11 Javascript
利用require.js与angular搭建spa应用的方法实例
2017/07/19 Javascript
jquery在vue脚手架中的使用方式示例
2017/08/29 jQuery
js原生实现移动端手指滑动轮播图效果的示例
2018/01/02 Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
2019/12/06 Javascript
Node.js Domain 模块实例详解
2020/03/18 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
微信小程序中target和currentTarget的区别小结
2020/11/06 Javascript
[00:30]塑造者的传承礼包-戴泽“暗影之焰”套装展示视频
2014/04/04 DOTA
浅谈Python 中整型对象的存储问题
2016/05/16 Python
Python实现汇率转换操作
2020/05/03 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
windows10在visual studio2019下配置使用openCV4.3.0
2020/07/14 Python
解决python打开https出现certificate verify failed的问题
2020/09/03 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
python打包多类型文件的操作方法
2020/09/21 Python
英国和世界各地预订便宜的酒店:LateRooms.com
2019/05/05 全球购物
如何定义一个可复用的服务
2014/09/30 面试题
学生个人求职自荐信格式
2013/09/23 职场文书
2014年团工作总结
2014/11/27 职场文书
心理健康教育主题班会
2015/08/13 职场文书
Docker与K8s关系介绍不会Docker也可以使用K8s
2022/06/25 Servers
python中使用redis用法详解
2022/12/24 Redis