python数据分析之pandas搞定Excel表格
时间:2022-05-14 [网络编程]作者:fabuyuan 浏览:6 次
推荐学习:python视频教程
(一)读取其他文件
接下来我们读取三类文件csvtsvtxt文件,值得注意的是读取这三类文件时使用的都是同一个方法,即pd.read_csv(file),在读取时为excel表时需注意分隔符,使用参数sep=''来分隔。接下来我们一起看看在excel和pandas种如何操作的吧!
1.excel读取其他文件
从excel中导入外部数据
1.1 导入csv文件
导入csv文件时,分隔符选择逗号即可。
1.2 导入tsv文件
导入tsv文件,分隔符选择tab键
1.3 导入txt文本文件
导入txt文件时,注意文本里是以什么符号分隔的,自定义分隔符。
2.pandas读取其他文件
在pandas中为无论是读取csv文件还是tsv文件亦或者txt文件,都是用read_csv()的方法读取,另外加上sep()参数来分隔。
2.1 读取csv文件
import pandas as pd # 导入csv文件 test1 = pd.read_csv('./excel/test12.csv',index_col="ID") df1 = pd.DataFrame(test1) print(df1)
2.2 读取tsv文件
tab键用\t来表示
import pandas as pd # 导入tsv文件 test3 = pd.read_csv("./excel/test11.tsv",sep='\t') df3 = pd.DataFrame(test3) print(df3)
2.3 读取txt文件
import pandas as pd # 导入txt文件 test2 = pd.read_csv("./excel/test13.txt",sep='|') df2 = pd.DataFrame(test2) print(df2)
结果:
(二)数据透视表
在excel中存在多种数据,且分为很多类型,这时使用数据透视表就会很方便也很直观的为我们分析出各种我们想要的数据了。
实例:将下列数据绘制成一个透视表,并绘制出按总类分每年的销售额!
1.在excel中制作透视表
需要按照年份来分,则我们需要将date列拆分,把年份拆分出来。随后在数据栏下选择数据透视表,选择区域即可。
随后将各部分数据拖动到各区域即可。
结果:
这样就在excel中完成了数据透视表的制作。
那么在pandas中要怎么实现这一效果呢?
2.在pandas中绘制透视表
绘制透视表的函数为:df.pivot_lable(index,columns,values),最后将数据求和即可。
import pandas as pd import numpy as np pd.options.display.max_columns =999 test = pd.read_excel('./excel/test14.xlsx') df = pd.DataFrame(test) # 将年份取出并新建一个列名为年份的列 df['year'] = pd.DatetimeIndex(df['Date']).year # 绘制透视表 table = df.pivot_table(index='总类',columns='year',values='销售额',aggfunc=np.sum) df1 = pd.DataFrame(table) df1['总计'] = df1[[2011,2012,2013,2014]].sum(axis=1) print(df1)
结果:
除此之外还可以利用groupby函数来绘制数据表。这里将总类和年份分组求销售总额和销售数量。
import pandas as pd import numpy as np pd.options.display.max_columns =999 test = pd.read_excel('./excel/test14.xlsx') df = pd.DataFrame(test) # 将年份取出并新建一个列名为年份的列 df['year'] = pd.DatetimeIndex(df['Date']).year # groupby方法 group = df.groupby(['总类','year']) s= group['销售额'].sum() c = group['ID'].count() table = pd.DataFrame({'sum':s,'total':c}) print(table)
结果:
推荐学习:python视频教程
以上就是python数据分析之pandas搞定Excel表格的详细内容,更多请关注站长家园其它相关文章!
本文标签: python
转载请注明来源:python数据分析之pandas搞定Excel表格
本文永久链接地址:https://www.adminjie.com/post/12322.html
免责声明:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
附:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!
版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的部分源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,若有侵犯你的权益请:提交版权证明文件到邮箱 2225329873#qq.com(#换为@) 站长会进行审查之后,情况属实的会在三个工作日内为您删除。
更多精彩内容
- VUE中V-IF条件判断改变元素的样式操作
- Discuz如何解决安装时报错run_sql_error
- 低版本VS项目在VS2019无法正常编译的问题
- PHP+Redis链表解决高并发下商品超卖问题(实现原理及步骤)
- Oracle数据库的实例/表空间/用户/表之间关系简单讲解
- RSA2是啥?PHP-RSA2签名验证怎么实现?
- 华为dubal20是什么型号
- app是什么应用程序的简称
- ana an00华为是什么型号
- html5的标题标记一共有几个等级
- 电脑显示信号线无连接是什么意思
- html5中onclick是什么意思
- 小程序大小超限除了分包还能怎么做?如何避免和解决大小限制?
- 超清视效是什么意思
- 我国自行设计研制的银河II型计算机是什么

- 最新文章
-
-
完全掌握java之String类
本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于string类的相关问题,包括了字符串的常量池、字符串的不可变性等等相关内容,下面一起来看一下,希...
-
简单学习Python字符和列表(实例详解)
本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于字符和列表的相关问题,包括了字符串的输入输出、列表循环遍历、列表的增删改查以及列表的嵌套等等内...
-
图文解析Redis线程模型
本篇文章给大家带来了关于Redis的相关知识,其中主要介绍了关于线程模型的相关问题,Redis它是一个单线程的,下面就一起来看一下,希望对大家有帮助。推荐学习:...
-
jquery怎么判断元素是否有子节点
方法:1、用children()获取元素下的所有子节点,语法“元素对象.children()”,会返回一个包含子节点的jQ对象;2、用length检测子节点个数...
-
jquery对象访问的方法有哪些
jquery对象访问的方法有:1、each(),可以遍历指定的jquery对象,语法“$.each(对象,回调函数)”;2、size(),可统计jquery对象...
-
- 热门文章
-
-
VUE中V-IF条件判断改变元素的样式操作
这篇文章主要介绍了VUE中V-IF条件判断改变元素的样式操作,具有很好的参考价值,希望对大家有所帮助。一起跟随想过来看看吧...
-
Discuz如何解决安装时报错run_sql_error
问题环境VMware虚拟机Centos7.3PHP7.0MySQL8.0NGINX1.14Discuz3.4问题还原本地环境为PHP5.6+MySQL5.6在安...
-
低版本VS项目在VS2019无法正常编译的问题
低版本VS项目在VS2019无法正常编译的问题这里指的编译并不准确,只是为了方便说明。后有(未安装),201?...
-
PHP+Redis链表解决高并发下商品超卖问题(实现原理及步骤)
实现原理使用redis链表来做,因为pop操作是原子的,即使有很多用户同时到达,也是依次执行,推荐使用。实现步骤第一步,先将商品库存入队列/**.trigge...
-
Oracle数据库的实例/表空间/用户/表之间关系简单讲解
完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例。Oracle是一种数据库管理系统,是一种关系型的数据库管理系统。我们用这些高级权限账号...
-