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下自己编写web框架的一些要点
Apr 29 Python
python中查看变量内存地址的方法
May 05 Python
Python网络爬虫项目:内容提取器的定义
Oct 25 Python
Python中使用支持向量机(SVM)算法
Dec 26 Python
django 开发忘记密码通过邮箱找回功能示例
Apr 17 Python
Python3多线程基础知识点
Feb 19 Python
python3 property装饰器实现原理与用法示例
May 15 Python
Python 内置变量和函数的查看及说明介绍
Dec 25 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
Jan 03 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
Mar 06 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
Jun 15 Python
使用pipenv管理python虚拟环境的全过程
Sep 25 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下通过POST还是GET来传值
2008/06/05 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
PHP中$this和$that指针使用实例
2015/01/06 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
PHP7.0安装笔记整理
2015/08/28 PHP
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
基于jquery实现漂亮的动态信息提示效果
2011/08/02 Javascript
jQuery EasyUI API 中文文档 - TreeGrid 树表格使用介绍
2011/11/21 Javascript
jQuery实现监控页面所有ajax请求的方法
2015/12/10 Javascript
JavaScript实现复制或剪切内容到剪贴板功能的方法
2016/05/23 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
原生js实现水平方向无缝滚动
2017/01/10 Javascript
Node.js简单入门前传
2017/08/21 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
如何编写一个d.ts文件的步骤详解
2018/04/13 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
layer弹出框确定前验证:弹出消息框的方法(弹出两个layer)
2019/09/21 Javascript
[02:23]完美世界全国高校联赛街访DOTA2第一期
2019/11/28 DOTA
从零学Python之入门(三)序列
2014/05/25 Python
python自动化测试实例解析
2014/09/28 Python
以Flask为例讲解Python的框架的使用方法
2015/04/29 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
Python爬虫实现网页信息抓取功能示例【URL与正则模块】
2017/05/18 Python
Python使用pylab库实现画线功能的方法详解
2017/06/08 Python
PyQt5固定窗口大小的方法
2019/06/18 Python
Windows下python3安装tkinter的问题及解决方法
2020/01/06 Python
Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DES/AES,RSA和ECC)
2020/05/09 Python
CSS3实现伪类hover离开时平滑过渡效果示例
2017/08/10 HTML / CSS
瑞典廉价机票预订网站:Seat24
2018/06/19 全球购物
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
《忆江南》教学反思
2014/04/07 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
2016年世界艾滋病日宣传活动总结
2016/04/01 职场文书
go语言求任意类型切片的长度操作
2021/04/26 Golang
Axios取消重复请求的方法实例详解
2021/06/15 Javascript