0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

盘点Pandas的100个常用函数

数据分析与开发 来源:数据分析1480 作者:刘顺祥 2021-04-01 09:52 次阅读

经过一段时间的整理,本期将分享我认为比较常规的100个实用函数,这些函数大致可以分为六类,分别是统计汇总函数、数据清洗函数、数据筛选、绘图与元素级运算函数、时间序列函数和其他函数。

一、统计汇总函数数据分析过程中,必然要做一些数据的统计汇总工作,那么对于这一块的数据运算有哪些可用的函数可以帮助到我们呢?具体看如下几张表。

96410908-9247-11eb-8b86-12bb97331649.png

96624186-9247-11eb-8b86-12bb97331649.png

import pandas as pd import numpy as np x = pd.Series(np.random.normal(2,3,1000)) y = 3*x + 10 + pd.Series(np.random.normal(1,2,1000)) # 计算x与y的相关系数 print(x.corr(y)) # 计算y的偏度 print(y.skew()) # 计算y的统计描述值 print(x.describe()) z = pd.Series([‘A’,‘B’,‘C’]).sample(n = 1000, replace = True) # 重新修改z的行索引 z.index = range(1000) # 按照z分组,统计y的组内平均值 y.groupby(by = z).aggregate(np.mean)

968a6328-9247-11eb-8b86-12bb97331649.png

96a9b8b8-9247-11eb-8b86-12bb97331649.jpg

# 统计z中个元素的频次 print(z.value_counts()) a = pd.Series([1,5,10,15,25,30]) # 计算a中各元素的累计百分比 print(a.cumsum() / a.cumsum()[a.size - 1])

96cea812-9247-11eb-8b86-12bb97331649.png

二、数据清洗函数同样,数据清洗工作也是必不可少的工作,在如下表格中罗列了常有的数据清洗的函数。

96e2916a-9247-11eb-8b86-12bb97331649.jpg

x = pd.Series([10,13,np.nan,17,28,19,33,np.nan,27]) #检验序列中是否存在缺失值 print(x.hasnans) # 将缺失值填充为平均值 print(x.fillna(value = x.mean())) # 前向填充缺失值 print(x.ffill())

96f12176-9247-11eb-8b86-12bb97331649.png

96f9eba8-9247-11eb-8b86-12bb97331649.png

income = pd.Series([‘12500元’,‘8000元’,‘8500元’,‘15000元’,‘9000元’]) # 将收入转换为整型 print(income.str[:-1].astype(int)) gender = pd.Series([‘男’,‘女’,‘女’,‘女’,‘男’,‘女’]) # 性别因子化处理 print(gender.factorize()) house = pd.Series([‘大宁金茂府 | 3室2厅 | 158.32平米 | 南 | 精装’, ‘昌里花园 | 2室2厅 | 104.73平米 | 南 | 精装’, ‘纺大小区 | 3室1厅 | 68.38平米 | 南 | 简装’]) # 取出二手房的面积,并转换为浮点型 house.str.split(‘|’).str[2].str.strip().str[:-2].astype(float)

9740314e-9247-11eb-8b86-12bb97331649.png

三、数据筛选数据分析中如需对变量中的数值做子集筛选时,可以巧妙的使用下表中的几个函数,其中部分函数既可以使用在序列身上,也基本可以使用在数据框对象中。

976a23fa-9247-11eb-8b86-12bb97331649.png

np.random.seed(1234) x = pd.Series(np.random.randint(10,20,10)) # 筛选出16以上的元素 print(x.loc[x 》 16]) print(x.compress(x 》 16)) # 筛选出13~16之间的元素 print(x[x.between(13,16)]) # 取出最大的三个元素 print(x.nlargest(3)) y = pd.Series([‘ID:1 name:张三 age:24 income:13500’, ‘ID:2 name:李四 age:27 income:25000’, ‘ID:3 name:王二 age:21 income:8000’]) # 取出年龄,并转换为整数 print(y.str.findall(‘age:(d+)’).str[0].astype(int))

97983e3e-9247-11eb-8b86-12bb97331649.png

四、绘图与元素级函数

97adf68e-9247-11eb-8b86-12bb97331649.png

np.random.seed(123) import matplotlib.pyplot as plt x = pd.Series(np.random.normal(10,3,1000)) # 绘制x直方图 x.hist() # 显示图形 plt.show() # 绘制x的箱线图 x.plot(kind=‘box’) plt.show() installs = pd.Series([‘1280万’,‘6.7亿’,‘2488万’,‘1892万’,‘9877’,‘9877万’,‘1.2亿’]) # 将安装量统一更改为“万”的单位 def transform(x): if x.find(‘亿’) != -1: res = float(x[:-1])*10000 elif x.find(‘万’) != -1: res = float(x[:-1]) else: res = float(x)/10000 return res installs.apply(transform)

97fc5bbc-9247-11eb-8b86-12bb97331649.png

981dfbdc-9247-11eb-8b86-12bb97331649.png

983ede6a-9247-11eb-8b86-12bb97331649.png

五、时间序列函数

98644f1a-9247-11eb-8b86-12bb97331649.png

987f2696-9247-11eb-8b86-12bb97331649.png

98daee0e-9247-11eb-8b86-12bb97331649.png

六、其他函数

9912aa10-9247-11eb-8b86-12bb97331649.png

import numpy as np import pandas as pd np.random.seed(112) x = pd.Series(np.random.randint(8,18,6)) print(x) # 对x中的元素做一阶差分 print(x.diff()) # 对x中的元素做降序处理 print(x.sort_values(ascending = False)) y = pd.Series(np.random.randint(8,16,100)) # 将y中的元素做排重处理,并转换为列表对象 y.unique().tolist()

9955e87a-9247-11eb-8b86-12bb97331649.png

9977d3ae-9247-11eb-8b86-12bb97331649.png

原文标题:100 个 pandas 数据分析函数总结

文章出处:【微信公众号:数据分析与开发】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    3864

    浏览量

    61306

原文标题:100 个 pandas 数据分析函数总结

文章出处:【微信号:DBDevs,微信公众号:数据分析与开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    盘点 | 飞凌嵌入式这5款100%全国产核心板值得推荐

    飞凌嵌入式有5款核心板产品通过了中国赛宝实验室的权威认证,实现了100%的电子元器件国产化率,本篇文章小编就带大家盘点一下这5款产品。
    的头像 发表于 12-29 08:01 487次阅读
    <b class='flag-5'>盘点</b> | 飞凌嵌入式这5款<b class='flag-5'>100</b>%全国产核心板值得推荐

    Python利用pandas读写Excel文件

    使用pandas模块读取Excel文件可以更为方便和快捷。pandas可以将Excel文件读取为一个DataFrame对象,方便进行数据处理和分析。
    的头像 发表于 12-16 11:22 585次阅读
    Python利用<b class='flag-5'>pandas</b>读写Excel文件

    使用pandas进行数据选择和过滤的基本技术和函数

    Python pandas库提供了几种选择和过滤数据的方法,如loc、iloc、[]括号操作符、query、isin、between等等
    的头像 发表于 12-01 10:14 161次阅读
    使用<b class='flag-5'>pandas</b>进行数据选择和过滤的基本技术和<b class='flag-5'>函数</b>

    uC/OS-Ⅱ常用函数查询

    电子发烧友网站提供《uC/OS-Ⅱ常用函数查询.doc》资料免费下载
    发表于 11-03 11:05 0次下载
    uC/OS-Ⅱ<b class='flag-5'>常用</b><b class='flag-5'>函数</b>查询

    Pandas:Python中强大方便的绘图功能

    Pandas是Python中非常常用的数据处理工具,使用起来非常方便。由于建立在NumPy数组结构之上,所以它的很多操作通过NumPy或者Pandas自带的扩展模块编写,这些模块用Cython编写
    的头像 发表于 11-03 11:04 249次阅读
    <b class='flag-5'>Pandas</b>:Python中强大方便的绘图功能

    Pandas DataFrame的存储格式性能对比

    Pandas 支持多种存储格式,在本文中将对不同类型存储格式下的Pandas Dataframe的读取速度、写入速度和大小的进行测试对比。 创建测试Dataframe 首先创建一个包含不同类型数据
    的头像 发表于 11-03 09:58 269次阅读
    <b class='flag-5'>Pandas</b> DataFrame的存储格式性能对比

    Pandas函数的三个接口介绍

    本文主要介绍pandas.DataFrame的三个接口,即assign、eval、query,分别用于赋值、查询和执行计算。 01 assign 在数据分析处理中,赋值产生新的列是非常高频的应用场
    的头像 发表于 11-01 16:38 213次阅读
    <b class='flag-5'>Pandas</b><b class='flag-5'>函数</b>的三个接口介绍

    pandas中合并数据的5个函数

    今天借着这个机会,就为大家盘点一下pandas中合并数据的5个函数。 join join是基于索引的横向拼接,如果索引一致,直接横向拼接。如果索引不一致,则会用Nan值填充。 索引一致
    的头像 发表于 10-31 11:11 309次阅读
    <b class='flag-5'>pandas</b>中合并数据的5个<b class='flag-5'>函数</b>

    Pandas:Python中最好的数据分析工具

    Pandas绝对是Python中最好的数据分析工具,不接受反驳。 本文将展示如何美化 Pandas DataFrame 中的数字,并使用一些更高级的 Pandas 样式可视化选项,来提高
    的头像 发表于 10-31 10:47 212次阅读
    <b class='flag-5'>Pandas</b>:Python中最好的数据分析工具

    盘点66个Pandas函数合集

    今天我们重新盘点66个Pandas函数合集,包括数据预览、数值数据操作、文本数据操作、行/列操作等等,涉及“ 数据清洗 ”的方方面面。 Pandas 是基于NumPy的一种工具,该工具
    的头像 发表于 10-30 09:58 490次阅读
    <b class='flag-5'>盘点</b>66个<b class='flag-5'>Pandas</b><b class='flag-5'>函数</b>合集

    如何使用Python和pandas库读取、写入文件

    = pd.read_excel(' data .xlsx') 此代码中,我们首先导入 pandas 库并将其重命名为 pd。使用 pd.read_excel() 函数读取 'data.xlsx' 文件并将其存储
    的头像 发表于 09-11 17:52 780次阅读

    超强图解Pandas,建议收藏

    Pandas是数据挖掘常见的工具,掌握使用过程中的函数是非常重要的。本文将借助可视化的过程,讲解Pandas的各种操作。
    的头像 发表于 08-29 15:15 353次阅读
    超强图解<b class='flag-5'>Pandas</b>,建议收藏

    MATLAB常用基本函数 MATLAB使用技巧

      MATLAB常用的基本数学函数  abs(x):纯量的绝对值或向量的长度  angle(z):复 数z的相角(Phase angle)  sqrt(x):开平方  real(z):复数
    发表于 07-19 09:52 0次下载

    Pandas高级操作汇总

    、数据排序、数据的修改、数据迭代以及函数的使用。 01、复杂查询 实际业务需求往往需要按照一定的条件甚至复杂的组合条件来查询数据,接下来为大家介绍如何发挥Pandas数据筛选的无限可能,随心所欲地取用数据。   1、逻辑运算   # Q1成绩大于36df.Q1> 36#
    的头像 发表于 06-16 10:27 256次阅读

    Python Pandas如何来管理结构化数据

    和DataFrame)。   在人工智能领域,Pandas常用于机器学习和深度学习过程的预处理步骤。Pandas通过提供数据清理、重塑、合并和聚合,可以将原始数据集转换为结构化的、随时可用的2维表格,并将其输入
    的头像 发表于 05-25 11:22 456次阅读
    Python <b class='flag-5'>Pandas</b>如何来管理结构化数据