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中内置的itertools模块
Apr 29 Python
python获取指定时间差的时间实例详解
Apr 11 Python
快速了解Python开发中的cookie及简单代码示例
Jan 17 Python
Python处理文本换行符实例代码
Feb 03 Python
对python中执行DOS命令的3种方法总结
May 12 Python
对pytorch网络层结构的数组化详解
Dec 08 Python
详解使用python绘制混淆矩阵(confusion_matrix)
Jul 14 Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 Python
python基于event实现线程间通信控制
Jan 13 Python
Python openpyxl模块实现excel读写操作
Jun 30 Python
python tkinter模块的简单使用
Apr 07 Python
如何通过一篇文章了解Python中的生成器
Apr 02 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调用shell的方法
2014/11/05 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
js获取当月最后一天实例代码
2013/11/19 Javascript
三种取消选中单选框radio的方法
2014/09/09 Javascript
js进行表单验证实例分析
2015/02/10 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
jQuery简单入门示例之用户校验demo示例
2016/07/09 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
PHP 实现一种多文件上传的方法
2017/09/20 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
layer页面跳转,获取html子节点元素的值方法
2019/09/27 Javascript
vue项目创建步骤及路由router
2020/01/14 Javascript
详解react组件通讯方式(多种)
2020/05/06 Javascript
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
Python发送Email方法实例
2014/08/21 Python
零基础写python爬虫之HTTP异常处理
2014/11/05 Python
用python实现的线程池实例代码
2018/01/06 Python
Python使用爬虫爬取静态网页图片的方法详解
2018/06/05 Python
使用Python实现企业微信的自动打卡功能
2019/04/30 Python
python利用re,bs4,requests模块获取股票数据
2019/07/29 Python
python脚本调用iftop 统计业务应用流量的思路详解
2019/10/11 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
美国卡车、吉普车和SUV零件网站:4 Wheel Parts
2016/11/24 全球购物
波比布朗英国官网:Bobbi Brown英国
2017/11/13 全球购物
英国领先的互联网葡萄酒礼品商:Vintage Wine & Port
2019/05/24 全球购物
神路信息Java面试题目
2013/03/31 面试题
材料成型专业个人求职信范文
2013/09/25 职场文书
羽毛球比赛策划方案
2014/06/13 职场文书
幼儿教师暑期培训方案
2014/08/27 职场文书
维稳工作承诺书
2015/01/20 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
Python中threading库实现线程锁与释放锁
2021/05/17 Python
分析MySQL抛出异常的几种常见解决方式
2021/05/18 MySQL
Java 深入探究讲解简单工厂模式
2022/04/07 Java/Android