Pandas处理表格基础
现在使用Python处理表格类数据(excel/csv)已经成为工作不可或缺的技能,尤其大数据量的分析筛选转换,Python更可以提供无与伦比的优势,使用Python处理数据,那Pandas就肯定绕不开,这篇就是Pandas的简单应用。
Pandas 数据分析包
使用只需引入即可
import pandas as pd #引入Pandas
处理表格
- 获取表格数据
我们日常大部分情况都会使用excel,所以这次使用Pandas来处理excel作为例子
数据准备Person.xlsx:
path = '/Users/lishiwen/Downloads/' #文件路径
fileName = 'Person' #文件名
excel = pd.read_excel(path + fileName + '.xlsx') #pandas读取excel数据
df = pd.DataFrame(excel) #数据转化为pd中的dataframe格式,为后续处理做准备
df #打印
结果:
2. 一些查看表格的基本信息的方法:
- dataframe有宽表转长表的方法,可以更好的展现数据维度与组合
df.melt()#宽数据转长数据
结果:
df.melt(id_vars=["姓名","年龄","体重","性别","身高"]) # 转长数据应用场景
结果:
上面是一些pandas的dataframe的一些基础属性,日常数据处理需要一些对数据的处理,下面开始对表格进行基础操作
- 筛选数据
df[ df.性别 == "男" ]#筛选性别为男的数据
结果:
上面的数据筛选出我们需要的男性数据,但是可以看到索引还是之前的索引,可能不是我们希望展示的,所以需要重制索引
df2 = df[ df.性别 == "男" ] #df2为男性数据
df2.index = range(len(df2)) #重制索引
df2
结果:
- 根据条件添加列数据
在处理表格时,会有根据某列的数据,新增一列新的数据,这时候可能就会需要用到判断或计算式
df['小,初,高'] = df.apply(lambda x: '小学' if x.年级 < 7 else '初中' if 6 <x.年级 < 10 else '高中', axis=1) #根据年级判断新增列,内容为小学,初中,高中
df
结果:
- 根据某列值修改其他列
df['学费']=0 #增加一列学费 默认0
df.loc[df['小,初,高'] == '小学', '学费'] = 100 #根据条件修改数据
df.loc[df['小,初,高'] == '初中', '学费'] = 200 #根据条件修改数据
df.loc[df['小,初,高'] == '高中', '学费'] = 300 #根据条件修改数据
df
结果:
- 分组查看
表格处理中肯定会有希望通过某一维度聚合查看其他类型数据,这就用到了分组
df.groupby(['年级','班级','姓名']).mean() # 对年级,班级,姓名分组查看
结果:
- 绘图
pandas处理数据的能力是毋庸置疑的,但是他更加强大是因为它还可以绘图,可以根据你的数据绘制出你想要的图表,可以更直观的分析数据
可以直接使用df.plot()进行绘图,但是表格数据内有中文,绘图时会做警告,并且展示不了中文,所以需要多一个引用
import matplotlib.pyplot as plt
因为pandas的plot调用的matplotlib绘图,通过plt设置文字编码即可。
import matplotlib.pyplot as plt #引入
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] #设置文字编码,这是mac的文字,win可以使用['SimHei']
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号df3 = df.groupby(['年级','班级','姓名']).mean() # 对年级,班级,姓名分组 赋值df3
df3.rename(columns={'年龄':'age'},inplace=True) #更换列名,不改编码也可以改为英文
df3.plot()
结果:
上面就是使用pandas处理表格数据的简单应用场景,pandas处理表格只有你想不到,没有它做不到的。更多使用参见它的使用手册
Pandas处理表格基础相关推荐
- pandas读写表格
第三节:一.用pandas对于表格的读写操作1.对于CSV格式文件的写入:(1)使用函数to_csv函数import pandas as pddf=pd.DataFrame(data=数据)----生 ...
- python3-xlwt-Excel设置表格基础(字体颜色 背景颜色 设置边框 边框颜色 冻结窗口 字体大小 字体高度 字体加粗 下划线 斜体字 单元格对齐方式 自动换行 删除线 超链接 插入公式)
文章目录 引入xlwt和创建workboos对象 初始化样式和创建设置字体,赋值给style 保存文件 自定义样式 字体颜色 背景颜色 设置边框 边框颜色 冻结窗口 字体大小 字体高度 字体加粗 下划 ...
- pandas将表格第一行作为列名
pandas读取表格的时候,经常把Excel表的列名也读取为数据.解决方法是把header设置为0而不是None infection=pd.read_csv('dataset/data_process ...
- pandas美化表格并生成图片
背景 甲方爸爸的任(无)性(理)需(要)求(求):统计数据,并以表格的形式生成图片,每一列要用颜色标明前三位和后三位,最后把图片发送到钉钉群. 之前都是手工统计,既费时又费力:要改成代码每天自动发送. ...
- Python xlrd 读取 Excel 表格基础(一):获取sheet、行、列对象,读取数据类型等
Python xlrd 读取 Excel 表格基础 一:按行.按列读取Excel数据内容 前言: 1.获取工作簿.sheet对象 2.获取sheet表中行.列对象 3.读取sheet对象中所有数据 4 ...
- pandas 读表格_手把手教你数据分析(1)--Pandas读取Excel信息
00准备工作: 素材:一份全国各省市市委书记数据表.xls (链接: https://pan.baidu.com/s/1gbgvcLbfEMM-9hFCZw1VlQ 密码: p66u) 编程环境:ma ...
- Python数据分析之Numpy、Pandas与Matplotlib基础
Python在数据科学中的作用 Python之所以能够成为大数据分析的主要工具,主要是因为他有很多现成的数据分析以及机器学习的工具包(Python中称为库),比如Numpy库.Pandas库.Scik ...
- Pandas CookBook -- 02DataFrame基础操作
Pandas基础操作 简书大神SeanCheney的译作,我作了些格式调整和文章目录结构的变化,更适合自己阅读,以后翻阅是更加方便自己查找吧 import pandas as pd import nu ...
- pandas之表格样式
在juoyter notebook中直接通过df输出DataFrame时,显示的样式为表格样式,通过sytle可对表格的样式做一些定制,类似excel的条件格式. df = pd.DataFrame( ...
最新文章
- java8中的default关键字
- Percona5.6增加了对NUMA架构的支持
- 分享Kali Linux 2017年第30周镜像文件
- 骁龙660是32位还是64位_高通发布骁龙 7c/8c 芯片,以后你可能会在电脑上看到它...
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第28篇]什么是公钥密码学的IND-CCA安全定义?
- ubuntu搭建php开发环境记录
- web developer tips (78):使用文档大纲导航
- Hbase 中文参考指南 3.0 校对活动发车了~
- c++取临时文件夹_电脑C盘不足?学会删除这5个文件夹,能节省10G空间
- android——根据MVC框架设计的结构
- OO思想(只留做自己看理解)
- 1、最小二乘回归、Lasso、岭回归
- 嵩天《Python数据分析与展示》实例1:图像的手绘效果
- ​stp文件转obj
- 积米:化妆找吉米,逛街找积米
- Linkedin被“豪吞”,是互联网时代垄断者的网络效应
- 《(数学篇)》 复数运算
- android xml 平铺,Android 图片平铺实现方式
- Git版本控制管理——提交
- Fiddler抓取微信公众号数据
热门文章
- Negroni和Gorilla/mux 解析 Golang
- 中国中试工厂市场现状研究分析与发展前景预测报告
- RegNet: Designing Network Design Spaces
- 福昕高级PDF编辑器Foxit PhantomPDF Business v9.3.0.10826企业版+破解补丁
- SM敏捷实践经验总结
- 在浏览器中输入网址到网页展现全部过程
- 未接响铃1秒是什么意思_空调能耗等级是什么意思 家用有必要买1级空调吗 看了它就明白了...
- Android获取系统邮件账号
- web端自动化测试1--selenium基础
- wkhtmltopdf使用指南,html转图片,转pdf