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

    文章

    4273

    浏览量

    62291

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

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

收藏 人收藏

    评论

    相关推荐

    labview常用的基本函数

    电子发烧友网站提供《labview常用的基本函数.pdf》资料免费下载
    发表于 10-15 17:29 0次下载

    labview中常用的字符串函数有哪些?

    ) : 功能:该函数用于返回字符串所包含的字符个数。 应用场景:常用于需要计算字符串长度的场景,如文件命名、数据处理等。 连接字符串(String Concatenate) : 功能:将两或多个字符串连接成一
    的头像 发表于 09-04 15:43 370次阅读

    简述socket编程中的常用函数

    Socket编程是一种基于TCP/IP协议的网络编程技术,它允许应用程序通过网络进行通信。在Socket编程中,有许多常用函数,它们用于创建、配置、连接、发送和接收数据等操作。以下是对这些常用
    的头像 发表于 08-16 10:49 243次阅读

    MATLAB信号处理常用函数详解

    MATLAB是一款功能强大的数学软件,尤其在信号处理领域,它提供了众多的函数和工具箱,使得信号的分析、处理、仿真变得简单而高效。本文将详细介绍MATLAB在信号处理中常用函数,并通过具体示例来阐述其应用。
    的头像 发表于 05-17 14:31 1481次阅读

    回调函数(callback)是什么?回调函数的实现方法

    回调函数是一种特殊的函数,它作为参数传递给另一函数,并在被调用函数执行完毕后被调用。回调函数
    发表于 03-12 11:46 2589次阅读

    函数指针和指针函数是不是一东西?

    函数指针的本质是指针,就跟整型指针、字符指针一样,函数指针指向的是一函数
    的头像 发表于 01-03 16:35 483次阅读
    <b class='flag-5'>函数</b>指针和指针<b class='flag-5'>函数</b>是不是一<b class='flag-5'>个</b>东西?

    Python利用pandas读写Excel文件

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

    if函数条件怎么填

    IF函数是Excel中最常用函数之一,它根据一逻辑条件的返回结果来决定应该执行哪一动作。在Excel中使用IF
    的头像 发表于 12-03 10:28 3374次阅读

    vlookup函数的使用方法两表匹配

    、参数、示例和注意事项,帮助读者正确并高效地应用该函数,以满足各种数据处理需求。 第一部分:概述与基本语法 1.1 概述:vlookup函数是Excel中一种常用的查找函数,用于在一
    的头像 发表于 12-03 10:23 1647次阅读

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

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

    vlookup函数的使用方法

    VLOOKUP函数是Excel电子表格中一种非常常用和有用的函数。它允许用户根据一特定的查找值,在一给定的表格中查找匹配的值,并返回这些
    的头像 发表于 11-30 17:13 2852次阅读

    sumif函数条件怎么填

    SUMIF函数是一种非常常用的Excel函数,它用于根据给定的条件,在相应的区域内求和。SUMIF函数可以通过设置一条件、区域和要求和的范
    的头像 发表于 11-30 16:38 5105次阅读

    HAL库常用函数汇总

    1,系统函数HAL_Delay原型:voidHAL_Delay(uint32_tDelay);作用:利用滴答定时器生成的系统延迟函数参数:Delay:延迟时间,单位是ms返回值:无示例代码
    的头像 发表于 11-29 08:00 2865次阅读
    HAL库<b class='flag-5'>常用</b><b class='flag-5'>函数</b>汇总

    append()和insert()函数的区别

    在Python中, append() 和 insert() 是用于修改列表的两常用函数。这两函数的主要区别在于元素添加的位置和方式。 首
    的头像 发表于 11-21 14:44 2594次阅读

    python如何定义一函数

    ()。但你也可以自己创建函数,这被叫做用户自定义函数。 二、定义一函数 你可以定义一由自己想要功能的
    的头像 发表于 11-14 11:26 667次阅读