python之pandas库,快速学习

这篇具有很好参考价值的文章主要介绍了python之pandas库,快速学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、pandas的两种数据结构

        1.pandas导入

        2.Series

                 (1)series:一维数据机构,可以保存任何类型的数据结构,相当于一列。

                 (2)series默认索引从0开始。也通过可以指定索引。

        3.DataFrame

                 (1)DataFrame:是一个矩阵的数据类型,既有行索引,也有列索引。

                 (2)DataFrame:可以更改行索引(columns)和列索引(index)。

                  (3)DataFrame的基本函数

二、pandas操作Excel

        1.写入Excel文件

                         (1)to_excel:写入excel文件会创建一个新的文件。

                         (2)ExcelWriter:会在一个工作表中创建一个新的工作薄。

        2.读取Excel文件

                (1)read_excel

 三、pandas数据查询

        1.直接查询

                (1)选择单列数据:df['列’]

                (2)选择多列数据:df[[’列1’,'列2']],通过列名组成的列表选择多列数据

                (3)df[1:3],按行位置选取连续的行(切片),前闭后开

         2.条件查询

                (1)单条件查询:单列布尔选择: df[(df['列’]==条件)],选取某列满足一定条件的行

                (2)多条件查询:df[(df['列1’]-=条件)&(df['列2']>条件)],选取多列满足一定条件的行

         3.索引器查询

                (1)选择单行/多行数据: df.loc[’行号’]、df.loc[['行号’],['列名']】]

                (2)选择多行多列数据: df.loc[['行1','行2'],['列1','列2']],通过两个列表选取行列组合;loc布尔选择: df.loc[(df['列']>条件)],按条件选取单列(多列)满足一定条件的行

                (3)loc切片(选择连续的多行多列): df.loc[’行1':'行2','列1':'列2'],通过切片选取连续的行列组合,冒号前后留空代表开口

                 (4)iloc索引器中只能使用原始索引(位置信息),不能使用自定义索引。

 四、数据处理

        1.缺失值处理

                (1)isna():检测缺失值

                (2)dropna():删除缺失的值

                (3)fillna():使用指定的方法填充NA/NaN值

        2.重复值处理

                (1)duplicated():用于查找重复项

                (2)drop_duplicated():删除重复值

        3.其他异常处理

五、数据分析

        1.描述性统计分析

        2.累计统计

                (1)cumsum ()        累计总和

                (2)cumprod()        累计乘积

                (3)cummax ()        累计最大值

                (4)cummin()        累计最小值​编辑

        3.数据排序

                (1)sort_values()函数语法

                 (2)sort_index()函数:在指定轴上根据索引值对数据进行排序,默认使用行索引升序排序。

六、数据表的相互连接

        1.merge()函数

        1.concat()函数

        1.join()函数

        1.append()函数

七、分组聚合

        1.groupby()

        2.agg()

八、数据透视

        1.pivot_table

        2.转换轴


一、pandas的两种数据结构

        1.pandas导入

pandas库,pandas,python

        2.Series

         (1)series:一维数据机构,可以保存任何类型的数据结构,相当于一列。

                例如:存放列表类型

pandas库,pandas,python

pandas库,pandas,python

         (2)series默认索引从0开始。也通过可以指定索引。

                未指定索引前:

pandas库,pandas,python 

                指定索引后:

                pandas库,pandas,python

        3.DataFrame

         (1)DataFrame:是一个矩阵的数据类型,既有行索引,也有列索引。

pandas库,pandas,python

pandas库,pandas,python

         (2)DataFrame:可以更改行索引(columns)和列索引(index)。

                pandas库,pandas,python

 pandas库,pandas,python

          (3)DataFrame的基本函数

   pandas库,pandas,python

                1、rename()

                columns:修改行名

                index:修改列名

                inplace=True :是否在原数据中进行修改,默认为False。 pandas库,pandas,python

pandas库,pandas,python 

                 2、insert()

                loc:插入第几列

                column:插入的列名

                value:插入的值

                allow_duplicates:是否允许列名重复,默认为Flase。

pandas库,pandas,python

 pandas库,pandas,python

                 3、drop()

                labels:单个标签或标签列表。

                axis:{0或'index',1或'columns'},是从索引还是列中删除标签,默认0,从行索引中删除。

                index:单个标签或标签列表: columns = labels 等效于 labels,axis=1。

                inplace:默认为False,返回新的DataFrame,True表示直接在原数据上删除。

pandas库,pandas,python

                4、head() 和 tail()

pandas库,pandas,python

pandas库,pandas,python

 文章来源地址https://www.toymoban.com/news/detail-761723.html

二、pandas操作Excel

        1.写入Excel文件

         (1)to_excel:写入excel文件会创建一个新的文件。

pandas库,pandas,python

pandas库,pandas,python

 pandas库,pandas,python

 

         (2)ExcelWriter:会在一个工作表中创建一个新的工作薄。

                mode填入值:        w        代表重写

                                                a        代表追加

pandas库,pandas,python

 

pandas库,pandas,python

                pandas支持多种读写:CSV, JSON,HTMl,Local clipboard,Text File,Excel等

        2.读取Excel文件

                (1)read_excel

                sheet_name:读取的表名

                converters:修改类型

                pandas库,pandas,python

                 set_option(pat, value)

                pat:

display.max_rows :设置DataFrame显示最大行数,pd.set_option('display.max_rows', None)显示所有行。

display.max_columns:设置DataFrame显示最大列数。

display.max_colwidth:设置DataFrame显示最大列宽。

display.precision:设置显示小数点后的位数。

display.float_format:设置浮点数的显示格式。

例如:保留两位小数

pandas库,pandas,python

pandas库,pandas,python

 pandas库,pandas,python

 三、pandas数据查询

        1.直接查询

pandas库,pandas,python

                (1)选择单列数据:df['列’]

pandas库,pandas,python

pandas库,pandas,python 

                (2)选择多列数据:df[[’列1’,'列2']],通过列名组成的列表选择多列数据

pandas库,pandas,python

pandas库,pandas,python

                (3)df[1:3],按行位置选取连续的行(切片),前闭后开

        pandas库,pandas,python

pandas库,pandas,python 

         2.条件查询

pandas库,pandas,python 

 

                (1)单条件查询:单列布尔选择: df[(df['列’]==条件)],选取某列满足一定条件的行

pandas库,pandas,python

 pandas库,pandas,python

 

                (2)多条件查询:df[(df['列1’]-=条件)&(df['列2']>条件)],选取多列满足一定条件的行

pandas库,pandas,python

pandas库,pandas,python 

         3.索引器查询

                (1)选择单行/多行数据: df.loc[’行号’]、df.loc[['行号’],['列名']】]

pandas库,pandas,python

 pandas库,pandas,python

                (2)选择多行多列数据: df.loc[['行1','行2'],['列1','列2']],通过两个列表选取行列组合;loc布尔选择: df.loc[(df['列']>条件)],按条件选取单列(多列)满足一定条件的行

pandas库,pandas,python

 pandas库,pandas,python

 

                (3)loc切片(选择连续的多行多列): df.loc[’行1':'行2','列1':'列2'],通过切片选取连续的行列组合,冒号前后留空代表开口

pandas库,pandas,python

 pandas库,pandas,python

                 (4)iloc索引器中只能使用原始索引(位置信息),不能使用自定义索引。

pandas库,pandas,python

 pandas库,pandas,python

 四、数据处理

pandas库,pandas,python

        1.缺失值处理

                (1)isna():检测缺失值

                        pandas库,pandas,python

 pandas库,pandas,python

                (2)dropna():删除缺失的值

                        axis:默认axis=0,表示删除包含缺失值的行,axis=1,表示删除包含缺失值的列

                        how:默认how='any',表示删除含有缺失值的所有行或列,how='all',表示删除全为缺失值的行或列

                        thresh:int,保留含有int个非空值的行、列

                        subset:对特定列进行缺失值删除

pandas库,pandas,python

pandas库,pandas,python

                (3)fillna():使用指定的方法填充NA/NaN值

                        value:用于填充的值:数值、字符串、变量、字典、series、DataFrame,不能使用列表

                        method:填充方法:{'backfill','bfill','pad', 'ffill',None},默认为None,指定填充值,pad/ffill表示用前一个非缺失值填充,backfil1/bfill表示用后一个非缺失值填充

                        axis:填充缺失值所沿的轴,默认为None

                        limit:限制填充次数

pandas库,pandas,python

pandas库,pandas,python 

        2.重复值处理

                (1)duplicated():用于查找重复项

                        subset:列名,默认使用所有列

                        keep:     keep='first':保留第一个重复值(默认值)
                                        keep='last':保留最后一个重复值
                                        keep=False:将所有重复值都删除

        pandas库,pandas,python

 pandas库,pandas,python

                (2)drop_duplicated():删除重复值

                        ignore_index:重建索引,默认为False

pandas库,pandas,python

pandas库,pandas,python 

        3.其他异常处理

                (1)replace():将所有数据转换为字符串,使用replace()函数进行替换

pandas库,pandas,python

pandas库,pandas,python

                (2)astype():将pandas对象转换为指定的数据类型

                        dtype:数据类型:使用numpy.dtype或Python类型将整个pandas对布尔值,默认为True,表示返回一个副本

                        copy:布尔值,默认为True,表示返回一个副本

                        errors:针对数据类型转换无效引发异常的处理,默认为'raise',表示允许引发异常,errors='ignore’抑制异常,错误时返回原始对象

        

 pandas库,pandas,python

五、数据分析

        1.描述性统计分析

                (1)count()

        pandas库,pandas,python

pandas库,pandas,python 

         (2)discribe()

                percentiles:百分位数,介于0-1之间,默认[25%,50%,75%]

                include:包含在结果中的数据类型,默认所有数值列

                exclude:排除在结果中的数据类型,默认不排除任何内容

                datetime_is_numeric:是否将datetime dtypes视为数字,默认为False

        pandas库,pandas,python

 pandas库,pandas,python

                (3)pct_change():当前元素与先前元素之间的百分比变化,默认计算与前一行的百分比变化,适用于财务报表的环比分析

                        periods:计算周期,默认为1

                        fill_method:填充空值的方法,默认'pad',表示用前一个非缺失值填充,bfill用后一个非缺失值填充,None不填充

                        limit:限制填充次数

                        axis:计算方向,{0或'index',1或'columns'},默认axis=0

pandas库,pandas,python

pandas库,pandas,python 

        2.累计统计

                (1)cumsum ()        累计总和

pandas库,pandas,python

pandas库,pandas,python


                

                (2)cumprod()        累计乘积

pandas库,pandas,python

pandas库,pandas,python 
                (3)cummax ()        累计最大值

        pandas库,pandas,python

pandas库,pandas,python
               

                (4)cummin()        累计最小值pandas库,pandas,python

pandas库,pandas,python 

 

        3.数据排序

                (1)sort_values()函数语法

                        by:axis轴上的某个索引或索引列表,按什么排序

                        axis:要排序的轴,{0或'index',1或'columns'},默认0,按照指定列数据排序

                        ascending:排序方式,默认为True,代表升序排序,False代表降序排序

                        inplace:默认为False,True表示直接在原数据上排序

                        ignore_index:是否重建索引,默认为False

pandas库,pandas,python

pandas库,pandas,python 

                 (2)sort_index()函数:在指定轴上根据索引值对数据进行排序,默认使用行索引升序排序。

pandas库,pandas,python

pandas库,pandas,python

 

六、数据表的相互连接

        1.merge()函数

                merge()函数:具有表连接功能,类似于Excel中的vlookup函数,可以根据一个或多个键(列值)将不同DataFrame连接起来

                merge()表连接方式有inner、left、 right、outer,默认inner,空值用NaN填充

                inner:内连接,取交集

                outer:外连接,取并集

                left:左连接,左侧取全部,右侧取部分

                right:右连接,右侧取全部,左侧取部分

pandas库,pandas,python

pandas库,pandas,python 

        1.concat()函数

                concat()函数:沿特定轴连接两个或两个以上的DataFrame,既可实现纵向合并也可实现横向合并,行列索引均可重复

pandas库,pandas,python

       pandas库,pandas,python 

        1.join()函数

                join()函数:连接另一个DataFrame的列(横向连接),与merge()函数功能类似,区别在于两者适用的场景有所不同

                pandas库,pandas,python

pandas库,pandas,python 

 

        1.append()函数

                append()函数:向DataFrame对象中添加新的行(纵向合并),如果添加的列名不在DataFrame对象中,将会被当作新的列进行添加

        pandas库,pandas,python

pandas库,pandas,python 

 

七、分组聚合

        1.groupby()

                 数据分组,即根据一个或多个DataFrame列名进行分组。

                by:分类的依据,DataFrame列名

                axis:默认axis=0:纵向分割,axis=1:横向分割

                level:默认为True:返回以组标签为索引的对象,as_index=False:不以组标签为索引

                sort:默认为True:按组键排序,设置为False可以提高性能

      

pandas库,pandas,python

 

       

        2.agg()

                 具有自定义聚合功能,允许在一次计算中,自定义多种聚合方式

pandas库,pandas,python

 pandas库,pandas,python

 

八、数据透视

        1.pivot_table

                pivot_table()函数:类似于Excel中的数据透视表功能,是一种可以对数据动态排布并且分类汇总的表格格式,pivot_table可以将普通列转换为行索引、列索引及元素值,进行各种汇总计算。

pandas库,pandas,python

 

pandas库,pandas,python

        2.转换轴

                stack():将数据的列索引转换为行索引,默认转换最内层的索引

                unstack():将数据的行索引转换为列索引,默认转换最内层的索引

 

到了这里,关于python之pandas库,快速学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】进阶学习:pandas--rename()用法详解

    【Python】进阶学习:pandas-- rename()用法详解 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订阅和支持~ 💡 创作高质量博文(平均质量分92+),分享更多关于深度学习、PyTorch、

    2024年04月11日
    浏览(49)
  • 【Python】进阶学习:pandas--info()用法详解

    【Python】进阶学习:pandas–info()用法详解 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订阅和支持~ 💡 创作高质量博文(平均质量分92+),分享更多关于深度学习、PyTorch、P

    2024年03月10日
    浏览(72)
  • (九)Pandas表格样式 学习简要笔记 #Python #CDA学习打卡

    目录 一. Pandas表格样式 1)举例数据 2)字体颜色 3)背景高亮 4)极值背景高亮 (a)高亮最大值 highlight_max() (b)高亮最小值 highlight_min() (c)同时高亮最大值与最小值 5)横向对比 (a)标记出每个学生的单科最高分数 axis (b)选定一列的最大值高亮 subset 6)背景渐变 

    2024年04月26日
    浏览(33)
  • 【python教程入门学习】Pandas库下载、安装和更新

    Windows系统 win+R 打开命令提示符,进入cmd命令提示符 pip install pandas 提示pip需要更新 按照提示输入以下代码 pip install --upgrade pip  检查是否安装完成 python -m pip list   进入python,输入import pandas,看是否报错,如果不报错,说明安装成功。 python import pandas  安装成功!!

    2024年02月14日
    浏览(41)
  • python数据分析学习笔记之matplotlib、numpy、pandas

    为了学习机器学习,在此先学习以下数据分析的matplotlib,numpy,pandas,主要是为自己的学习做个记录,如有不会的可以随时查阅。希望大家可以一起学习共同进步,我们最终都可以说:功不唐捐,玉汝于成。就算遇到困难也不要气馁,大声说:我不怕,我敏而好学!! 把大量

    2024年02月08日
    浏览(56)
  • 【Python】进阶学习:pandas--read_excel()函数的基本使用

    【Python】进阶学习:pandas–read_excel()函数的基本使用 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订阅和支持~ 💡 创作高质量博文(平均质量分92+),分享更多关于深度学习、

    2024年03月09日
    浏览(50)
  • python学习——pandas库的使用之series及DataFrame创建、查看、切片、运算

    Pandas是基于NumPy的数据分析模块 Pandas纳入了大量库和一些标准的数据模型,提供了高效操作大型数据集所需的工具 Pandas提供了大量能使我们快速便捷处理数据的函数和方法 Pandas的数据结构 Series :带标签的一维数组,与Numpy中的一维array类似。与列表也很相近。 区别是:列表

    2024年02月03日
    浏览(48)
  • [黑马程序员Pandas教程]——Pandas快速体验

    目录: 为什么要使用Python做数据开发 Python在数据开发领域的优势 为什么要学习Pandas 其他常用Python库介绍 主要内容介绍 Anaconda安装 Anaconda的虚拟环境管理 虚拟环境的作用 可以通过Anaconda界面创建虚拟环境 通过命令行创建虚拟环境 通过Anaconda管理界面安装包 也可以通过anac

    2024年02月06日
    浏览(48)
  • 基于Pandas+余弦相似度+大数据智能护肤品推荐系统——机器学习算法应用(含Python工程源码)+数据集

    本项目结合了Pandas数据处理工具和机器学习技术,旨在构建一个智能的护肤品推荐系统。该系统不仅会考虑用户的肤质特征,还会考虑过敏反应等因素,并筛选出相互禁忌的产品,以便为不确定如何选择护肤品的用户提供个性化的推荐。 首先,项目会收集用户的肤质信息,包

    2024年02月07日
    浏览(34)
  • Pandas快速合并多张excel表格

    目录 一、Excel表格命名存在规律的情况下 二、Excel表格文件名不规律的情况下 1.首先将所有excel表格放到一个文件夹下面 2.用pandas进行合并 三、身份证号合并乱码解决 最近用Pandas合并表格,发现效率非常高,现总结以下两种方法: 对身份证号码合并的时候,会因为编码方式

    2024年02月08日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包