首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Python】Pandas的apply函数使用示例

apply 是 pandas 库的一个很重要的函数,多和 groupby 函数一起用,也可以直接用于 DataFrame 和 Series 对象。...数据集 使用的数据集是美国人口普查的数据,可以从这里下载,里面包含了CSV数据文件和PDF说明文件,说明文件里解释了每个变量的意义。 数据大致是这个样子: ?...在 2010 年至 2015 年间人口变化幅度最大的是哪个县? 分析 先按州分组,再对每个州内的县进行排序选出人口最多的 3 个县求和,作为每个州的人口数,最后排序。...CENSUS2010POP'].sum() grouped = only_county[['STNAME', 'CTYNAME', 'CENSUS2010POP']].groupby('STNAME').apply...'POPESTIMATE2015']] return pop_year.max() - pop_year.min() only_county.loc[only_county.apply

2.1K60

在pandas中使用数据透视表

经常做报表的小伙伴对数据透视表应该不陌生,在excel中利用透视表可以快速地进行分类汇总,自由组合字段聚合计算,而这些只需要拖拉拽就能实现。...pandas也有透视表? pandas作为编程领域最强大的数据分析工具之一,自然也有透视表的功能。...在pandas中,透视表操作由pivot_table()函数实现,不要小看只是一个函数,但却可以玩转数据表,解决大麻烦。 pivot_table使用方法: ?...如何使用pivot_table? 下面拿数据练一练,示例数据表如下: ? 该表为用户订单数据,有订单日期、商品类别、价格、利润等维度。...总结 本文介绍了pandas pivot_table函数的使用,其透视表功能基本和excel类似,但pandas的聚合方式更加灵活和多元,处理大数据也更快速,大家有兴趣可探索更高级的用法。

2.8K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用 Pandas 在 Python 中绘制数据

    在有关基于 Python 的绘图库的系列文章中,我们将对使用 Pandas 这个非常流行的 Python 数据操作库进行绘图进行概念性的研究。...这非常方便,你已将数据存储在 Pandas DataFrame 中,那么为什么不使用相同的库进行绘制呢? 在本系列中,我们将在每个库中制作相同的多条形柱状图,以便我们可以比较它们的工作方式。...我们使用的数据是 1966 年至 2020 年的英国大选结果: image.png 自行绘制的数据 在继续之前,请注意你可能需要调整 Python 环境来运行此代码,包括: 运行最新版本的 Python...(用于 Linux、Mac 和 Windows 的说明) 确认你运行的是与这些库兼容的 Python 版本 数据可在线获得,并可使用 Pandas 导入: import pandas as pd df...在本系列文章中,我们已经看到了一些令人印象深刻的简单 API,但是 Pandas 一定能夺冠。

    6.9K20

    在pandas中使用数据透视表

    经常做报表的小伙伴对数据透视表应该不陌生,在excel中利用透视表可以快速地进行分类汇总,自由组合字段聚合计算,而这些只需要拖拉拽就能实现。...典型的数据格式是扁平的,只包含行和列,不方便总结信息: 而数据透视表可以快速抽取有用的信息: pandas也有透视表? pandas作为编程领域最强大的数据分析工具之一,自然也有透视表的功能。...在pandas中,透视表操作由pivot_table()函数实现,不要小看只是一个函数,但却可以玩转数据表,解决大麻烦。...pivot_table使用方法: pandas.pivot_table(*data*, *values=None*, *index=None*, *columns=None*, *aggfunc='mean...pivot_table函数的使用,其透视表功能基本和excel类似,但pandas的聚合方式更加灵活和多元,处理大数据也更快速,大家有兴趣可探索更高级的用法。

    3K20

    在pandas中使用pipe()提升代码可读性

    1 简介   我们在利用pandas开展数据分析时,应尽量避免过于碎片化的组织代码,尤其是创建出过多不必要的中间变量,既浪费了内存,又带来了关于变量命名的麻烦,更不利于整体分析过程代码的可读性,因此以流水线方式组织代码非常有必要...而在以前我撰写的一些文章中,为大家介绍过pandas中的eval()和query()这两个帮助我们链式书写代码,搭建数据分析工作流的实用API,再加上下面要介绍的pipe(),我们就可以将任意pandas...2 在pandas中灵活利用pipe() pipe()顾名思义,就是专门用于对Series和DataFrame操作进行流水线(pipeline)改造的API,其作用是将嵌套的函数调用过程改造为链式过程...具体来说pipe()有两种使用方式,第一种方式下,传入函数对应的第一个位置上的参数必须是目标Series或DataFrame,其他相关的参数使用常规的键值对方式传入即可,就像下面的例子一样,我们自编函数对泰坦尼克数据集进行一些基础的特征工程处理...do_something, dummy_columns=['Pclass', 'Sex', 'Embarked']) # 删除含有缺失值的行 .dropna() )   可以看到,在紧接着

    49010

    在pandas中使用pipe()提升代码可读性

    Python大数据分析 1 简介 我们在利用pandas开展数据分析时,应尽量避免过于「碎片化」的组织代码,尤其是创建出过多不必要的「中间变量」,既浪费了「内存」,又带来了关于变量命名的麻烦,更不利于整体分析过程代码的可读性...图1 而在以前我撰写的一些文章中,为大家介绍过pandas中的eval()和query()这两个帮助我们链式书写代码,搭建数据分析工作流的实用API,再加上下面要介绍的pipe(),我们就可以将任意pandas...2 在pandas中灵活利用pipe() pipe()顾名思义,就是专门用于对Series和DataFrame操作进行流水线(pipeline)改造的API,其作用是将嵌套的函数调用过程改造为「链式」过程...具体来说pipe()有两种使用方式,「第一种方式」下,传入函数对应的第一个位置上的参数必须是目标Series或DataFrame,其他相关的参数使用常规的「键值对」方式传入即可,就像下面的例子一样,我们自编函数对...do_something, dummy_columns=['Pclass', 'Sex', 'Embarked']) # 删除含有缺失值的行 .dropna() ) 可以看到,在紧接着

    38630

    使用cuDF在GPU加速Pandas

    前言 使用Pandas Dataframe执行数千甚至数百万次计算仍然是一项挑战。你不能简单的将数据丢进去,编写Python for循环,然后希望在合理的时间内处理数据。...公众号在此之前的一篇文章专门介绍了一些方法,请点击查看: 高逼格使用Pandas加速代码,向for循环说拜拜! 尽管如此,即使加速,Pandas仍然只能在CPU上运行。...cuDF的API是Pandas的一面镜子,在大多数情况下可以直接替代Pandas。这使得数据科学家、分析师和工程师很容易将其集成到他们的工作中。...操作的速度与使用cuDF在GPU上执行相同操作的速度。...(pandas_df) 在我们的第一个测试中,让我计算一下 Pandas VS cuDF数据中a变量的平均值需要多长时间。

    8.8K10

    【Python基础】在pandas中使用pipe()提升代码可读性

    1 简介 我们在利用pandas开展数据分析时,应尽量避免过于「碎片化」的组织代码,尤其是创建出过多不必要的「中间变量」,既浪费了「内存」,又带来了关于变量命名的麻烦,更不利于整体分析过程代码的可读性,...图1 而在以前我撰写的一些文章中,为大家介绍过pandas中的eval()和query()这两个帮助我们链式书写代码,搭建数据分析工作流的实用API,再加上下面要介绍的pipe(),我们就可以将任意pandas...2 在pandas中灵活利用pipe() pipe()顾名思义,就是专门用于对Series和DataFrame操作进行流水线(pipeline)改造的API,其作用是将嵌套的函数调用过程改造为「链式」过程...具体来说pipe()有两种使用方式,「第一种方式」下,传入函数对应的第一个位置上的参数必须是目标Series或DataFrame,其他相关的参数使用常规的「键值对」方式传入即可,就像下面的例子一样,我们自编函数对...「第二种使用方式」适合目标Series和DataFrame不为传入函数第一个参数的情况,譬如下面的例子中我们假设目标输入数据为第二个参数data2,则pipe()的第一个参数应以(函数名, '参数名称'

    93430

    使用CSV模块和Pandas在Python中读取和写入CSV文件

    使用Pandas读取CSV文件 Pandas是一个开源库,可让您使用Python执行数据操作。熊猫提供了一种创建,操作和删除数据的简便方法。...您必须使用命令 pip install pandas 安装pandas库。在Windows中,在Linux的终端中,您将在命令提示符中执行此命令。...在仅三行代码中,您将获得与之前相同的结果。熊猫知道CSV的第一行包含列名,它将自动使用它们。 用Pandas写入CSV文件 使用Pandas写入CSV文件就像阅读一样容易。您可以在这里说服。...结论 因此,现在您知道如何使用方法“ csv”以及以CSV格式读取和写入数据。CSV文件易于读取和管理,并且尺寸较小,因此相对较快地进行处理和传输,因此在软件应用程序中得到了广泛使用。...Pandas是读取CSV文件的绝佳选择。 另外,还有其他方法可以使用ANTLR,PLY和PlyPlus之类的库来解析文本文件。

    20.1K20

    Pandas数据分组的函数应用(df.apply()、df.agg()和df.transform()、df.applymap())

    文章目录 apply()函数 介绍 样例 性能比较 apply() 数据聚合agg() 数据转换transform() applymap() 将自己定义的或其他库的函数应用于Pandas对象,有以下...3种方法: apply():逐行或逐列应用该函数 agg()和transform():聚合和转换 applymap():逐元素应用函数 apply()函数 介绍 apply函数是pandas里面所有函数中自由度最高的函数...() 其中:设置axis = 1参数,可以逐行进行操作;默认axis=0,即逐列进行操作; 对于常见的描述性统计方法,可以直接使用一个字符串进行代替,例df.apply(‘mean’)等价于df.apply...()的特例,可以对pandas对象进行逐行或逐列的处理; 能使用agg()的地方,基本上都可以使用apply()代替。...7 1.666667 2.111111 8 2.666667 -9.888889 当应用多个函数时,将返回于原始DataFrame大小不同的DataFrame,返回结果中: 在列索引上第一级别是原始列名

    2.3K10

    数据科学 IPython 笔记本 7.11 聚合和分组

    在本节中,我们将探讨 Pandas 中的聚合,从类似于我们在 NumPy 数组中看到的简单操作,到基于groupby概念的更复杂的操作。...名称group by来自 SQL 数据库语言中的一个命令,但使用 Rstats 的作者 Hadley Wickham 创造的术语:分割(split),应用(apply)和组合(combine)来思考它,...特别是GroupBy对象有aggregate(),filter(),transform()和apply()方法,在组合分组数据之前,它们有效实现各种实用操作。...()非常灵活:唯一的规则是,函数接受一个DataFrame并返回一个 Pandas 对象或标量;在中间做什么取决于你!...df2.groupby(str.lower).mean(): data1 data2 a 1.5 4.0 b 2.5 3.5 c 3.5 6.0 有效键的列表 此外,可以组合任何前面选择的键,来在多重索引上分组

    3.7K20

    数据分析实际案例之:pandas在餐厅评分数据中的使用

    简介 为了更好的熟练掌握pandas在实际数据分析中的应用,今天我们再介绍一下怎么使用pandas做美国餐厅评分数据的分析。...Repository,包含了一千多条数据,有5个属性,分别是: userID: 用户ID placeID:餐厅ID rating:总体评分 food_rating:食物评分 service_rating:服务评分 我们使用...pandas来读取数据: import numpy as np path = '.....1 1160 U1068 132660 0 0 0 1161 rows × 5 columns 分析评分数据 如果我们关注的是不同餐厅的总评分和食物评分,我们可以先看下这些餐厅评分的平均数,这里我们使用...135082 0.971825 132706 0.957427 Name: rating, dtype: float64 本文已收录于 http://www.flydean.com/02-pandas-restaurant

    1.7K20

    精品课 - Python 数据分析

    Pandas 的数据结构在每个维度上都有可读性强的标签,比起 NumPy 的数据结构涵盖了更多信息。...---- HOW WELL 比如在讲拆分-应用-结合 (split-apply-combine) 时,我会先从数据帧上的 sum() 或 mean() 函数引出无条件聚合,但通常希望有条件地在某些标签或索引上进行聚合...这时数据会根据某些规则分组 (split),然后应用 (apply) 同样的函数在每个组,最后结合 (combine) 成整体。...这波操作称被 Hadley Wickham 称之为拆分-应用-结合,具体而言,该过程有三步: 在 split 步骤:将数据帧按照指定的“键”分组 在 apply 步骤:在各组上平行执行四类操作: 整合型...agg() 函数 转换型 transform() 函数 筛选型 filter() 函数 通用型 apply() 函数 在 combine 步骤:操作之后的每个数据帧自动合并成一个总体数据帧 一图胜千言

    3.3K40

    【MySQL】一文带你搞懂MySQL中的各种锁

    MDL 加锁过程是系统自动控制,无需显式使用,在访问一张表的时候会自动加上。 MDL 锁主要作 用是维护表元数据的数据一致性,在表上有活动事务的时候,不可以对元数据进行写入操作。...介绍 为了避免 DML 在执行时,加的行锁与表锁的冲突,在 InnoDB 中引入了意向锁,使得表锁不用检查 每行数据是否加锁,使用意向锁来减少表锁的检查。...演示 默认情况下, InnoDB 在 REPEATABLE READ 事务隔离级别运行, InnoDB 使用 next-key 锁进行搜 索和索引扫描,以防止幻读。...4.3间隙锁&临键锁 默认情况下, InnoDB 在 REPEATABLE READ 事务隔离级别运行, InnoDB 使用 next-key 锁进行搜 索和索引扫描,以防止幻读。...并不是,因为是非唯一索 引,这个结构中可能有多个18 的存在,所以,在加锁时会继续往后找,找到一个不满足条件的值 (当前案例中也就是29 )。

    1.7K70
    领券