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编程中运用闭包时所需要注意的一些地方
May 02 Python
Python中Random和Math模块学习笔记
May 18 Python
Python赋值语句后逗号的作用分析
Jun 08 Python
使用FastCGI部署Python的Django应用的教程
Jul 22 Python
获取python文件扩展名和文件名方法
Feb 02 Python
Python socket实现的简单通信功能示例
Aug 21 Python
python使用多进程的实例详解
Sep 19 Python
django模板加载静态文件的方法步骤
Mar 01 Python
在Python中使用MySQL--PyMySQL的基本使用方法
Nov 19 Python
Python Print实现在输出中插入变量的例子
Dec 25 Python
PyTorch 对应点相乘、矩阵相乘实例
Dec 27 Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 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测试程序运行时间的类
2012/02/05 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
javascript parseInt 大改造
2009/09/27 Javascript
jquery isEmptyObject判断是否为空对象的函数
2011/02/14 Javascript
jQuery 全选/反选以及单击行改变背景色实例
2013/07/02 Javascript
JQuery实现动态添加删除评论的方法
2015/05/18 Javascript
CSS图片响应式 垂直水平居中
2015/08/14 Javascript
javascript中的3种继承实现方法
2016/01/27 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
JS脚本加载后执行相应回调函数的操作方法
2018/02/28 Javascript
layerUI下的绑定事件实例代码
2018/08/17 Javascript
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
关于layui toolbar和template的结合使用方法
2019/09/19 Javascript
countup.js实现数字动态叠加效果
2019/10/17 Javascript
javascript实现点击星星小游戏
2019/12/24 Javascript
js实现微信聊天界面
2020/08/09 Javascript
微信小程序入门之指南针
2020/10/22 Javascript
[22:59]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python列表与元组详解实例
2013/11/01 Python
浅谈Python中copy()方法的使用
2015/05/21 Python
一些常用的Python爬虫技巧汇总
2016/09/28 Python
django基础之数据库操作方法(详解)
2017/05/24 Python
python中reload(module)的用法示例详解
2017/09/15 Python
Python内存管理方式和垃圾回收算法解析
2017/11/11 Python
python中正则表达式的使用方法
2018/02/25 Python
python email smtplib模块发送邮件代码实例
2018/04/26 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
Django中使用MySQL5.5的教程
2019/12/18 Python
彪马英国官网:PUMA英国
2019/02/11 全球购物
C/C++程序员常见面试题二
2015/11/19 面试题
奉献家乡演讲稿
2014/09/13 职场文书
考试作弊检讨
2015/01/27 职场文书
2015年学校关工委工作总结
2015/04/03 职场文书
2016寒假假期总结
2015/10/10 职场文书
Python-OpenCV实现图像缺陷检测的实例
2021/06/11 Python