andas是python中最主要的数据分析库之一,它提供了非常多的函数、方法,可以高效地处理并分析数据。让pandas如此受欢迎的原因是它简洁、灵活、功能强大的语法。
在南宫等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、做网站 网站设计制作按需开发网站,公司网站建设,企业网站建设,品牌网站设计,成都全网营销,外贸网站建设,南宫网站建设费用合理。
这篇文章将会配合实例,讲解20个重要的pandas函数。其中有一些很常用,相信你可能用到过。还有一些函数出现的频率没那么高,但它们同样是分析数据的得力帮手。
介绍这些函数之前,第一步先要导入pandas和numpy。
- import numpy as np
- import pandas as pd
1. Query
Query是pandas的过滤查询函数,使用布尔表达式来查询DataFrame的列,就是说按照列的规则进行过滤操作。
用法:
- pandas.DataFrame.query(self, expr, inplace = False, **kwargs)
参数作用:
首先生成一段df:
- values_1 = np.random.randint(10, size=10)
- values_2 = np.random.randint(10, size=10)
- years = np.arange(2010,2020)
- groups = ['A','A','B','A','B','B','C','A','C','C']
- df = pd.DataFrame({'group':groups, 'year':years, 'value_1':values_1, 'value_2':values_2})
- df
过滤查询用起来比较简单,比如要查列value_1 查询列year>=2016的行记录: 2. Insert Insert用于在DataFrame的指定位置中插入新的数据列。默认情况下新列是添加到末尾的,但可以更改位置参数,将新列添加到任何位置。 用法: 参数作用: 接着用前面的df: 在第三列的位置插入新列: 3. Cumsum Cumsum是pandas的累加函数,用来求列的累加值。 用法: 参数作用: 以前面的df为例,group列有A、B、C三组,year列有多个年份。我们只知道当年度的值value_1、value_2,现在求group分组下的累计值,比如A、2014之前的累计值,可以用cumsum函数来实现。 当然仅用cumsum函数没办法对groups (A, B, C)进行区分,所以需要结合分组函数groupby分别对(A, B, C)进行值的累加。 4. Sample Sample用于从DataFrame中随机选取若干个行或列。 用法: 参数作用: (1) n:要抽取的行数 (2) frac:抽取行的比例 (3) replace:是否为有放回抽样, (4) weights:字符索引或概率数组 (5) random_state :随机数发生器种子 (6) axis:选择抽取数据的行还是列 比如要从df中随机抽取5行: 从df随机抽取60%的行,并且设置随机数种子,每次能抽取到一样的样本: 5. Where Where用来根据条件替换行或列中的值。如果满足条件,保持原来的值,不满足条件则替换为其他值。默认替换为NaN,也可以指定特殊值。 用法: 参数作用: 将df中列value_1里小于5的值替换为0: Where是一种掩码操作。 掩码(英语:Mask)在计算机学科及数字逻辑中指的是一串二进制数字,通过与目标数字的按位操作,达到屏蔽指定位而实现需求。 6. Isin Isin也是一种过滤方法,用于查看某列中是否包含某个字符串,返回值为布尔Series,来表明每一行的情况。 用法: 筛选df中year列值在['2010','2014','2017']里的行: 7. Loc and iloc Loc和iloc通常被用来选择行和列,它们的功能相似,但用法是有区别的。 用法: 选择df第1~3行、第1~2列的数据,使用iloc: 使用loc: 提示:使用loc时,索引是指index值,包括上边界。iloc索引是指行的位置,不包括上边界。 选择第1、3、5行,year和value_1列: 8. Pct_change Pct_change是一个统计函数,用于表示当前元素与前面元素的相差百分比,两元素的区间可以调整。 比如说给定三个元素[2,3,6],计算相差百分比后得到[NaN, 0.5, 1.0],从第一个元素到第二个元素增加50%,从第二个元素到第三个元素增加100%。 用法: 参数作用: 对df的value_1列进行增长率的计算: 9. Rank Rank是一个排名函数,按照规则(从大到小,从小到大)给原序列的值进行排名,返回的是排名后的名次。 比如有一个序列[1,7,5,3],使用rank从小到大排名后,返回[1,4,3,2],这就是前面那个序列每个值的排名位置。 用法: 参数作用: (1) axis:行或者列 (2) method:返回名次的方式,可选{‘average’, ‘min’, ‘max’, ‘first’, ‘dense’} (3) ascending:正序和倒序 对df中列value_1进行排名: 10. Melt Melt用于将宽表变成窄表,是 pivot透视逆转操作函数,将列名转换为列数据(columns name → column values),重构DataFrame。 简单说就是将指定的列放到铺开放到行上变成两列,类别是variable(可指定)列,值是value(可指定)列。 用法: 参数作用: 例如有一串数据,表示不同城市和每天的人口流动: 现在将day1、day2列变成变量列,再加一个值列:
标题名称:高效的10个Pandas函数,你都用过了吗?
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联
文章源于:http://www.shufengxianlan.com/qtweb/news13/305863.html