python数据分析 活用pandas,深入浅出Pandas-利用Python进行数据处理与分析

  python数据分析 活用pandas,深入浅出Pandas:利用Python进行数据处理与分析

  Pandas是Python中的一个开源库,用于高效的数据处理。它的名字其实取自Panel Data(面板数据),即多维数据的计量经济学。在熊猫库出现之前,Python也可以用来处理数据,但是对数据分析的支持相当有限。所以熊猫的出现弥补了原生Python的不足,促进了Python语言在加载、操作、准备、建模、分析数据方面的能力。熊猫是建立在NumPy图书馆上的。如果你之前没有Numpy的基础知识,也欢迎阅读之前的NumPy教程文章:【Python核心库】NumPy真人教程及练习。

  为什么要用熊猫来处理数据?

  Pandas广泛用于数据处理,因为它的数据帧和系列比其他模块或帧更直观。熊猫简洁明了的应用程序接口(API)也可以让程序员更加专注于代码的核心部分,让代码和数据更加简洁。

  熊猫怎么装?

  要用Pandas编程,首先需要在Python编辑器或Python IDE中安装相应的模块。拿教程里轻用的为例。只需在代码中直接写import pandas为pd,通过QuickFix就可以一键安装。因为熊猫库经常需要用到numpy相关的函数,所以在引用熊猫的时候通过导入Numpy作为NP来引用Numpy更方便。更多第三方模块的安装方法,可以查看如何手动下载安装依赖项。

  熊猫培训项目:

  在这个熊猫后续项目中,我们将制作一个简单的分数统计和分数检查程序。完成本项目后,您可以学习如何:

  将数据内容转换成表格。使用Pandas计算总分顺序,并以相反的顺序排列数据值。查找并返回指定的数据删除和合并列表。完整学习本教程。请参考代码:https://d1590a0dfb-share.lightly.teamcode.com。

  将数据内容转换成表格。

  如果我们回过头来看Numpy数组中的数据内容,实际上可能会觉得这个数据形式和通常的行列式表不一样,观感不是那么清晰。

  Data=[[22053,丁一,1,121,132,56,167],

  [22174,刘二,2,150,139,115,151],

  [22124,张三,3,74,98,68,255],

  [22021,李四,3,105,131,137,263],

  [2206,王五,3,70,149,84,171],

  [22271,“刘钊”,2,114,96,113,284],

  [22212,“孙棋”,1,146,114,149,293],

  [22070,星期一,1,122,82,118,191],

  [22288,五九,2,143,111,99,258],

  [22014,郑X ,2,110,125,104,180]]

  如果用Pandas处理相同或更复杂的数据,其输出效果会更接近我们场景中的表格,最终可以通过函数输出为. csv类型的表格文件,可以在excel等表格处理软件中打开。

  根据下面的代码添加列名并调整序列号,可以输出非常类似于表格的格式:

  Dataframe=pd.dataframe (data,columns=[学号,姓名,班级,语文,数学,英语,综合])

  dataframe.index=1

  打印(数据帧)

  即使在熊猫,它可以作为一个文件输出。xlsx格式,有一行简单的代码,而且可以直接在Excel中打开:dataframe.to_excel(score.xlsx )。

  如果运行后返回错误no module named openpyxl ,只需通过pip install openpyxl在终端中安装相应的模块并重新运行即可。完成后的文件会出现在左边的文件栏中,下载到本地可以用Excel或者其他表单软件打开。

  在Excel中打开的效果:

  用熊猫算总分。

  在原始的分数数据中,我们只有英语成绩和综合成绩,没有计算总分。虽然我们可以在Excel中添加一个新列来计算导出的CSV文件中的总分,但是这个程序也可以用Python来完成,只需一段简单的代码:dataframe[总分]=dataframe.iloc [:3: 7]。总和(轴=1)

  输出的中文数据没有对齐,怎么办?

  由于Pandas的初始字符宽度默认为英文,当DataFrame的列名包含中文时,Pandas会出现列名和内容不对齐的情况。我们所要做的就是将熊猫的两个默认值设置为True:

  PD . set _ option( display . unicode . ambiguity _ as _ wide ,True)

  PD . set _ option( display . unicode . east _ Asian _ width ,True)

  按照学号顺序。

  在原始的分数数据中,我们可以发现学号其实是乱序的,不一定符合学校的格式要求。如果需要按照学号对年级数据进行排序,也只需要一行代码就可以解决:data frame _ sorted=data frame . sort _ values(by=[学号])。

  【小作业】根据dataframe.sort_values()尝试输出上图的排序效果。打开scoreData.py查看参考答案:https://d1590a0dfb-share.lightly.teamcode.com

  返回个别班级所有学生的成绩。

  为了更方便的查看每个类的结果,我们其实可以通过dataframe.loc[]函数找到并返回一个特定值的内容。以Class 2的结果为例,我们只需要输入Class result=data frame . loc[data frame[ Class ]==2]就可以返回只包含Class 2结果的表:

  【作业】根据所学内容,尝试按上图总分的逆序输出2班的成绩。打开scoreData.py查看参考答案:https://d1590a0dfb-share.lightly.teamcode.com

  并删除合并列表。

  假设一个英语老师发现自己不小心给错了分数,希望删除英语成绩重新输入。他该怎么办?在Pandas中,可以通过两个函数删除和合并数据:pd.drop()和pd.merge()。

  先用pd.drop()删除错误的一行:df.drop (English ,inplace=True,axis=1)【注意】这行代码需要放在总分dataframe.iloc函数之前,否则总分中仍然包含英语成绩。

  然后英语老师给了一个新的成绩,因为成绩是根据学号盲目改的,所以英语老师也给了一个Excel文件,里面有学号和学生的成绩。上传后,我们可以用下面的代码读取并合并新旧数据:

  新英语=PD . Read _ excel( English score . xlsx )#阅读新英语成绩

  Data frame=pd.merge (data frame,new English,how= left ,on=学号)#合并新旧数据

  扩展作业

  试着把Python编程的基本input()函数和文章中的所有知识点结合起来,做一个简单的程序,可以通过学生的学号找到学生在各个学科的成绩和总分。打开scoreData.py查看参考答案:https://d1590a0dfb-share.lightly.teamcode.com

  恭喜你来到文末!在学习使用Python处理数据的时候,我其实在想:既然已经有现成的Excel办公软件,我们究竟为什么还需要学习Python甚至编程?但是在学习Python的过程中,我发现:相比于现在广泛使用的第三方软件,我们可以通过编程定制更符合自己需求的程序,同时甚至不用担心随着时间的推移,第三方软件逐渐关闭或者无法满足我的特定需求。

  随着编程的日益普及,除了Office三件套甚至PS和视频剪辑,相信编程也会逐渐加入队列。对于很多人来说,学习编程可能并不容易,但这项技能最终会像我们过去学习的语文、数学、英语等基础学科一样,成为我们的知识库,帮助我们更好地理解现代科技的运作。

  转载请联系作者获得转载授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 2020年高考成绩分布表,2020年高考成绩统计,数据分析2020年全国各省高考成绩分布情况
  • ,,python实现数据分析与建模
  • python3 数据分析,python数据分析课堂
  • 《数据思维》,数据分析的思维导图
  • python数据分析就业方向,python数据分析毕业论文
  • python数据分析数据清洗,python中数据清洗
  • 基于Python的数据可视化,python数据分析及可视化处理的第三方库
  • 利用python进行数据分析豆瓣,python数据分析基础和利用python进行数据分析
  • python数据分析数据清洗,用python进行数据清洗
  • python对excel表格数据的统计和分析,python进行excel数据分析
  • 从零开始学Python数据分析与挖掘,自学python数据分析
  • python数据分析结构思维导图,python组合数据类型思维导图
  • 关联规则分析案例,关联规则数据分析题,关联规则的实际案例数据
  • 数据分析与商业数据分析,120个Excel商业数据分析实战案例
  • python数据分析excel读写,python 读取excel数据
  • 留言与评论(共有 条评论)
       
    验证码: