当前位置:首页 > 每日看点 > 正文内容

Python有哪些经典的常用库?

卡卷网1年前 (2024-12-24)每日看点215

Python有哪些常用的库?这里将其总结如下,比如在数据清洗时使用到numpy和pandas包,数据可视化时使用matplotlib库,matplotlib库上手容易,更高级的学习seaborn库,seaborn库是改良matplotlib库的图表画法,如果创建有交互性的图表,可以使用Pyecharts库,还有一些其他在自动化办公中使用到的库。

Python的作用绝不仅仅只是做数据清洗和数据可视化,其作用还有很多,有许多意想不到的功能,可以高效的做数据处理、数据可视化,以及可以实现自动化办公,这里仅仅举例讲讲Python使用最多的几个包,欢迎大家补充,下面一起来学习。

1、Numpy

官网numpy.org.cn/

NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象,以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。

NumPy包的核心是 ndarray 对象。它封装了python原生的同数据类型的 n 维数组,为了保证其性能优良,其中有许多操作都是代码在本地进行编译后执行的。

NumPy的主要对象是同构多维数组。它是一个元素表,所有类型都相同,由非负整数元组索引。在NumPy维度中称为轴 。

Python有哪些经典的常用库?  第1张

2、Pandas

官网pypandas.cn/

Pandas 是 Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据,广泛应用于数据分析领域,Pandas 适用于处理与 Excel 表类似的表格数据,以及有序和无序的时间序列数据等。

Pandas 的主要数据结构是 Series(一维数据)和 DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数典型用例,使用pandas进行数据分析流程包含数据整理与清洗、数据分析与建模、数据可视化与制表等阶段。

  • 灵活的分组功能:(group by)数据分组、聚合、转换数据;
  • 直观地合并功能:(merge)数据连接;
  • 灵活地重塑功能:(reshape)数据重塑;

Python有哪些经典的常用库?  第2张

3、Matplotlib

官网matplotlib.org.cn/

Matplotlib是一个Python 2D绘图库,它以多种硬拷贝格式和跨平台的交互式环境生成出版物质量的图形。Matplotlib可用于Python脚本,Python和IPython Shell、Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。

Matplotlib 尝试使容易的事情变得更容易,使困难的事情变得可能,只需几行代码就可以生成图表、直方图、功率谱、条形图、误差图、散点图等。

为了简单绘图,该 pyplot 模块提供了类似于MATLAB的界面,尤其是与IPython结合使用时,对于高级用户,您可以通过面向对象的界面或MATLAB用户熟悉的一组功能来完全控制线型,字体属性,轴属性等。

Python有哪些经典的常用库?  第3张

4、Seaborn

官网seaborn.pydata.org/

Seaborn 是一个基于matplotlib的 Python 数据可视化库,它建立在matplotlib之上,并与Pandas数据结构紧密集成,用于绘制有吸引力和信息丰富的统计图形的高级界面。

Seaborn 可用于探索数据,它的绘图功能对包含整个数据集的数据框和数组进行操作,并在内部执行必要的语义映射和统计聚合以生成信息图,其面向数据集的声明式 API可以专注于绘图的不同元素的含义,而不是如何绘制它们的细节。

Matplotlib 拥有全面而强大的 API,几乎可以根据自己的喜好更改图形的任何属性,seaborn 的高级界面和 matplotlib 的深度可定制性相结合,使得Seaborn既可以快速探索数据,又可以创建可定制为出版质量最终产品的图形。

Python有哪些经典的常用库?  第4张

5、Pyecharts

官网pyecharts.org/#

Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts 诞生了。

Pyecharts具有简洁的 API 设计,使用如丝滑般流畅,支持链式调用,囊括了 30+ 种常见图表,应有尽有,支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab,拥有高度灵活的配置项,可轻松搭配出精美的图表。

Pyecharts强大的数据交互功能,使数据表达信息更加生动,增加了人机互动效果,并且数据呈现效果可直接导出为html文件,增加数据结果交互的机会,使得信息沟通更加容易。

Python有哪些经典的常用库?  第5张

Pyecharts有着丰富的图表素材,支持链式调用,如下是使用Pyecharts的地理图表功能,空间上直观显示数据可视化效果。

Python有哪些经典的常用库?  第6张

6、wordcloud

绘制词云图,可以使用Python中的wordcloud库,首先,使用pip install wordcloud安装该库,导入文本数据后,创建一个WordCloud对象,设置词云图的背景颜色、宽度和高度,使用generate()方法将文本传递给词云对象,生成词云图,最后,使用imshow()方法将词云图显示出来,并使用axis()方法隐藏坐标轴。

import matplotlib.pyplot as plt from wordcloud import WordCloud text = "This is some sample text for generating a word cloud." # 创建词云对象 wordcloud = WordCloud(background_color='white', width=800, height=600).generate(text) # 显示词云图 plt.p(figsize=(9, 6)) plt.imshow(wordcloud, interpolation='bilinear') plt.axis("off") plt.show()

Python有哪些经典的常用库?  第7张

7、Faker

Faker库是一个很好的模拟生成数据的库,在满足数据安全的情况下,使用Faker库最大限度的满足我们数据分析的测试需求,可以模拟生成文本、数字、日期等字段。

导入Faker库可以用来模拟生成数据,其中,locale="zh_CN"用来显示中文,如下生成了一组包含姓名、手机号、身份证号、出生年月日、邮箱、地址、公司、职位这几个字段的数据。

#多行显示运行结果 from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all" from faker import Faker faker=Faker(locale="zh_CN")#模拟生成数据 faker.name() faker.phone_number() faker.ssn() faker.ssn()[6:14] faker.email() faker.address() faker.company() faker.job()

Python有哪些经典的常用库?  第8张

8、PySimpleGUI

为了将代码的运行过程增加交互式操作,这里使用PySimpleGUI库开发一个图形界面,其中,layout用于自定义窗口布局,window用于定义整体的窗口界面,while True: 循环运行,当满足特定的"事件"时,则返回具体的"值",从而实现人机交互功能。

import PySimpleGUI as sg #自定义窗口布局,一共是两行,第一行用于查找需要合并Excel的文件目录,第二行点击开始合并按钮进行合并 layout = [[sg.Text("请选择Excel文件所在目录:"),sg.Input(size=(25, 1), enable_events=True, key="文件路径"),sg.FolderBrowse(button_text="浏览文件"),], [sg.Button('开始合并', enable_events=True, key="开始"),] ] window = sg.Window('批量数据合并:By大话数据分析', layout)#定义窗口 while True: event, values = window.read() if event in (None,): break #关闭用户界面 elif event == "开始": if values["文件路径"]: print(values["文件路径"]) sg.popup('数据合并已完毕!') else: sg.popup('请先输入Excel文件所在的路径!') window.close()

如下将人机交互功能开发完毕,点击浏览文件,找到需要批量合并文件的文件夹目录,点击开始合并,即可输出结果,其中,values["文件路径"]输入的是需要合并Excel数据的文件路径,print打印出来的就是需要合并Excel数据的文件路径。

Python有哪些经典的常用库?  第9张

9、pipenv

交互式的命令开发完毕,如何分享给别人使用?或者是别人的电脑上没有安装Python也能正常使用数据合并功能?这里给大家介绍Python程序打包,使用虚拟环境进行打包,在命令行输入如下命令下载pipenv包

#使用虚拟环境压缩 pip install pipenv -i https://pypi.tuna.tsinghua.edu.cn/simple

使用快捷键Win+R键,然后输入CMD,输入pipenv shell命令,进入虚拟环境,没有虚拟环境的话会自动建立一个。

#Win+R输入CMD,进入虚拟环境,没有虚拟环境的话会自动建立一个 pipenv shell

由于Python打包会将电脑安装的Python包全部打包,这里我们在虚拟环境中只安装Python程序涉及的模块,这样会减少打包的体积,注意xlrd==1.2.0下载低版本的包,默认安装的是高版本的,安装高版本的包在程序使用中会报错。

#只安装Python程序涉及的模块 pip install pandas xlrd==1.2.0 id-validator PySimpleGUI pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple

Python有哪些经典的常用库?  第10张

将带有交互式命令的数据合并代码导出为.py文件,在命令行输入如下的打包命令,指定具体的路径即可打包。

#进行打包 pyinstaller -F -w C:\Desktop\combine.py

稍等几分钟,在Python的工作目录下看到一个dist文件,如果不知道自己的Python工作目录,可使用os.getcwd()命令查看。

Python有哪些经典的常用库?  第11张

该dist文件包含一个combine.exe程序,如下即为打包的程序。

Python有哪些经典的常用库?  第12张

10、pandasql

pandasql库可以在Python中写SQL,而且SQL语法在Python中完全支持,在Python中写SQL能够做到手写自如,导入pandasql库,SQL运行都需要借助pandasql库,我们使用的是sql.sqldf(""" *** """)命令,其中***就是你要写的SQL语句,写SQL不难,很容易入门,只要将SQL语句写入到括号内,即可实现数据查询。

import pandasql as sql

导入pandasql库后,这里需要将电影的累计票房分为'超低票房'、'低票房'、'中等票房'、'高票房'、'超高票房',使用case when进行分组,以end结尾,成功实现在pandas中使用case when查询,查询结果如下所示。

#对电影的累计票房使用CASE WHEN分组 sql.sqldf("""select 电影名称,电影导演,电影主演,累计票房, case when 累计票房 < 100000 then '超低票房' when 累计票房 < 200000 then '低票房' when 累计票房 < 300000 then '中等票房' when 累计票房 < 400000 then '高票房' else '超高票房' end as '电影票房分组' from df where 累计票房 is not null;""")

Python有哪些经典的常用库?  第13张

推荐阅读:

文章合辑 | 数据人的高薪秘诀:精通工具与分析方法!

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/5352.html

分享给朋友:

相关文章

马云也搞不明白:为什么现在用户偏爱微信支付,而不是支付宝?

这题我会,我教马云一招。你直接把你那破比支付宝的代码全删了,重新写一个。打开支付宝直接就是一个大大的支付码,然后右上角按一下就是扫一扫。你要是还想保留你的其他那些乱七八糟的功能,麻烦将他们全部做到下拉菜单里。你这么设计我不说你能干死微信,但...

WordPress建站同时面向B端和C端,有什么好的解决方案?

这个很容易实现呀,只不过需要自己开发,整体用权限管理就可以实现了,B端和C端是不同用户权限,C端能看到的菜单入口和B端不一样就行了。技术层面实现没问题的,只不过就是看你们的技术能力和投入了 ,这样的需求应该没有现成的开源插件。只能找人定制开...

只有我一个人后悔升级鸿蒙next吗?

只有我一个人后悔升级鸿蒙next吗?

我有一台mate 60 pro,第一时间升级了“纯血鸿蒙”。虽然功能并不完善,甚至有些简陋,但是我非常~非常不后悔升级鸿蒙next系统。因为.... 这就是一款“大型养成系游戏“,给我平淡的生活提供了源源不断的情绪价值。我每天特别...

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法.栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型,...

有没有能够兼顾便携并且流畅运行各种AI应用的笔记本?求推荐?

有没有能够兼顾便携并且流畅运行各种AI应用的笔记本?求推荐?

看了下题主的描述,可以考虑「联想YOGA Air 15 Aura AI元启版」,今年9月底出的一款轻薄本,也通过了英特尔Evo严苛认证。处理器用了英特尔最新的「酷睿 Ultra 7 258V」,主要亮点就是AI性能、图形处理能力和能效,很适...

阿里云服务器续费价格好贵,想换一家云服务厂商,该怎么选择?

阿里云服务器续费价格好贵,想换一家云服务厂商,该怎么选择?

最近一台买了3年时间的腾讯云轻量服务器到期了,还有5天时间。当时买的价格是3年198元。配置是2核CPU、4GB内存,80GB SSD云硬盘,1200GB 流量包,然后中途给免费升级了CPU,从2核变成了4核。平均下来一年的费用70元不到,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。