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

《Pandas Cookbook》第07章 分组聚合、过滤、转换1. 定义聚合2. 用多个列和函数进行分组和聚合3. 分组后去除多级索引4. 自定义聚合函数5. 用 *args 和 **kwargs

# 行和列都有两级索引,get_level_values(0)取出第一级索引 In[15]: level0 = airline_info.columns.get_level_values(0)...'sum', 'mean', 'min', 'max'], dtype='object') # 一级和二级索引拼接成新的列索引 In[17]: airline_info.columns = level0...更多 # Pandas默认会在分组运算后,将所有分组的列放在索引中,as_index设为False可以避免这么做。...# 判断DIST列有无缺失值 In[84]: flights.DIST.hasnans Out[84]: False # 再次删除DIST列的缺失值(原书是没有这两段的) In[85]: flights.dropna...# 因为现在每行都是独立排序的,列名存在问题。

8.9K20

《Pandas Cookbook》第04章 选取数据子集1. 选取Series数据2. 选取DataFrame的行3. 同时选取DataFrame的行和列4. 用整数和标签选取数据5. 快速选取标量6

---- 第01章 Pandas基础 第02章 DataFrame运算 第03章 数据分析入门 第04章 选取数据子集 第05章 布尔索引 第06章 索引对齐 第07章 分组聚合、过滤、转换...第08章 数据清理 第09章 合并Pandas对象 第10章 时间序列分析 第11章 用Matplotlib、Pandas、Seaborn进行可视化 ---- In[1]: import pandas...同时选取DataFrame的行和列 # 读取college数据集,给行索引命名为INSTNM;选取前3行和前4列 In[23]: college = pd.read_csv('data/college.csv...INSTNM') # 用索引方法get_loc,找到指定列的整数位置 In[34]: col_start = college.columns.get_loc('UGDS_WHITE')..._libs.hashtable.PyObjectHashTable.get_item (pandas/_libs/hashtable.c:20477)() KeyError: 'Sp' # 对college

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

    Pandas 2.2 中文官方教程和指南(十二·一)

    创建一个 MultiIndex(层次化索引)对象 MultiIndex对象是标准Index对象的分层类比,通常在 pandas 对象中存储轴标签。...与往常一样,切片器的两侧都包含在内,因为这是标签索引。 警告 在.loc指定器中应指定所有轴,即索引和列的索引器。...在邮件列表和科学 Python 社区的各个成员中已经广泛讨论过这个问题。在 pandas 中,我们的一般观点是标签比整数位置更重要。...创建一个 MultiIndex(层次化索引)对象 MultiIndex对象是标准Index对象的分层类比,通常在 pandas 对象中存储轴标签。...: float64 创建一个 MultiIndex(分层索引)对象 MultiIndex对象是标准Index对象的分层类比,通常在 pandas 对象中存储轴标签。

    25610

    Pandas 2.2 中文官方教程和指南(八)

    pandas 数据结构的集成数据对齐功能使 pandas 在处理带标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择使不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...我们将在重新索引部分中讨论重新索引/符合新标签集的基础知识。 数据对齐和算术 DataFrame对象之间的数据对齐会自动在**列和索引(行标签)**上对齐。同样,结果对象将具有列和行标签的并集。...pandas 数据结构的集成数据对齐功能使 pandas 在处理带标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择使不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...pandas 数据结构的集成数据对齐功能使其在处理带有标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择让不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...我们将在重新索引部分中讨论重新索引 / 符合新标签集的基础知识。 数据对齐和算术 DataFrame 对象之间的数据对齐会自动在**列和索引(行标签)**上对齐。

    31700

    数据分析篇 | Pandas数据结构之Series

    以下文章来源于Python大咖谈,作者吱吱不倦的呆鸟 Series 类似多维数组 Series 类似字典 矢量操作与对齐 Series 标签 名称属性 本节介绍 Pandas 基础数据结构,包括各类对象的数据类型...Series Series 是带标签的一维数组,可存储整数、浮点数、字符串、Python 对象等类型的数据。轴标签统称为索引。...上例中,如果 Python Pandas >> s['f'] KeyError: 'f' get 方法可以提取 Series 里没有的标签,返回 None 或指定默认值: In [26]: s.get('f') In [27]: s.get...Pandas 数据结构集成的数据对齐功能,是 Pandas 区别于大多数标签型数据处理工具的重要特性。 总之,让不同索引对象操作的默认结果生成索引并集,是为了避免信息丢失。

    1.1K20

    Pandas数据结构:Series与DataFrame

    引言在数据分析领域,Python 的 Pandas 库因其强大的数据操作功能而广受欢迎。Pandas 提供了两种主要的数据结构:Series 和 DataFrame。...基础概念1.1 SeriesSeries 是一维数组,可以存储任何数据类型(整数、字符串、浮点数、Python 对象等)。Series 的索引默认是从 0 开始的整数索引,也可以自定义索引。...常见问题及解决方案2.1 数据缺失问题描述在实际数据中,经常会遇到缺失值(NaN)。处理缺失值是数据分析中的一个重要步骤。解决方案删除缺失值:使用 dropna() 方法删除包含缺失值的行或列。...常见报错及解决方法3.1 KeyError报错描述当尝试访问不存在的列时,会引发 KeyError。解决方法确保列名正确无误。...总结本文介绍了 Pandas 中的两种主要数据结构 Series 和 DataFrame,并通过具体代码案例详细讲解了常见的问题及其解决方案。

    16310

    数据科学 IPython 笔记本 7.8 分层索引

    到目前为止,我们主要关注一维和二维数据,分别存储在 Pandas Series和DataFrame对象中。通常,超出此范围并存储更高维度的数据(即由多于一个或两个键索引的数据)是有用的。...虽然 Pandas 确实提供了Panel和Panel4D对象,这些对象原生地处理三维和四维数据(参见“旁注:面板数据”),实践中的更常见模式是利用分层索引(也称为多重索引),在单个索引中合并多个索引层次...请注意,第一列中缺少某些条目:在多重索引表示中,任何空白条目都表示与其上方的行相同的值。...列的MultiIndex 在DataFrame中,行和列是完全对称的,就像行可以有多个索引层次一样,列也可以有多个层次。...的内置slice()函数,显式构建所需的切片,来解决这个问题,但在这种情况下,更好的方法是使用IndexSlice对象,正是由 Pandas 为这种情况提供的。

    4.3K20

    精通 Pandas:1~5

    一、Pandas 和数据分析简介 在本章中,我们解决以下问题: 数据分析的动机 如何将 Python 和 Pandas 用于数据分析 Pandas 库的描述 使用 Pandas 的好处 数据分析的动机...当前,当前使用的 Python 有两种版本,分别是 Python 2.7.x 和 Python3。如果读者是 Python 和 Pandas 的新手,那么问题就变成了他/她应该采用哪种语言。...它的大小可变:可以插入和删除列。 序列/数据帧中的每个轴都有索引,无论是否默认。 需要索引才能快速查找以及正确对齐和连接 Pandas 中的数据。...数据帧对象是 Pandas 中最流行和使用最广泛的对象。 在下一章中,我们将讨论 Pandas 索引的主题。...四、Pandas 的操作,第一部分 – 索引和选择 在本章中,我们将着重于对来自 Pandas 对象的数据进行索引和选择。 这很重要,因为有效利用 Pandas 需要对索引和选择数据有充分的了解。

    19.2K10

    Pandas 2.2 中文官方教程和指南(十一·二)

    使用标签 'a':'f' 的切片对象(请注意,与通常的 Python 切片相反,在索引中同时包括起始和停止点!请参阅 使用标签进行切片 和 端点是包含的。)...注意 在应用可调用对象之前,将元组键解构为行(和列)索引,因此无法从可调用对象中返回元组以索引行和列。 从具有多轴选择的对象中获取值使用以下表示法(以.loc为例,但.iloc也适用)。...每个请求的标签必须在索引中,否则将引发KeyError。在切片时,如果存在于索引中,则起始边界和停止边界都将包括。整数是有效标签,但它们指的是标签而不是位置。 .loc属性是主要访问方法。...具有标签'a':'f'的切片对象(请注意,与通常的 Python 切片相反,当存在于索引中时,起始和停止都包括在内!请参见使用标签切片)。 一个布尔数组。...我们建议打开写时复制以利用改进 pd.options.mode.copy_on_write = True 即使在 pandas 3.0 可用之前。 前一节中的问题只是一个性能问题。

    25210

    Pandas 秘籍:1~5

    当数据帧是所需的输出时,只需将列名放在一个单元素列表中。 更多 在索引运算符内部传递长列表可能会导致可读性问题。 为了解决这个问题,您可以先将所有列名保存到列表变量中。...在 Pandas 中没有引用数据类型的标准或首选方法,因此最好同时了解两种方式: Python 对象 字符串 注释 np.number number 选择整数和浮点数,而不考虑大小 np.float64...本章通过回答在 Pandas 中不常见的常见问题继续进行。 制定数据分析计划 尽管开始数据分析时没有标准方法,但是通常最好在首次检查数据集时为自己开发一个例程。...Pandas 对象数据类型是更广泛的数据类型。 对象列中的每个值可以是任何数据类型。 因此,对象数据类型列中每个单独值的存储都不一致。 像其他数据类型一样,每个值都没有预定义的内存量。...因为将整个序列而不是每个元素作为True或False都没有意义,Pandas 都会引发错误。 Python 中的许多对象都具有布尔表示形式。 例如,除 0 以外的所有整数都被视为True。

    37.6K10

    Python 数据分析(PYDA)第三版(二)

    在这种情况下,列变成了纯 Python 对象的数组。 内部字典中的键被组合以形成结果中的索引。...重新索引 pandas 对象上的一个重要方法是reindex,它意味着创建一个新对象,其值重新排列以与新索引对齐。..._check_indexing_error(key) 349 raise KeyError(key) KeyError: -1 在这种情况下,pandas 可能会“回退”到整数索引,但是在不引入对用户代码中微妙错误的情况下...算术和数据对齐 pandas 可以使处理具有不同索引的对象变得更简单。例如,当您添加对象时,如果任何索引对不相同,结果中的相应索引将是索引对的并集。...,当一个对象中找到一个轴标签而另一个对象中没有时,您可能希望填充一个特殊值,比如 0。

    29400

    Pandas 2.2 中文官方教程和指南(十一·一)

    一个带有标签 'a':'f' 的切片对象(请注意,与通常的 Python 切片相反,开始和停止都包括在内,当存在于索引中时!请参阅使用标签切片和端点是包含的。)...每个要求的标签必须在索引中,否则将引发KeyError。在切片时,如果存在于索引中,则起始边界和停止边界都包括。整数是有效的标签,但它们指的是标签而不是位置。 .loc属性是主要的访问方法。...一个带有标签'a':'f'的切片对象(请注意,与通常的 Python 切片相反,当索引中存在时,起始和停止都包括在内!请参见使用标签切片)。 一个布尔数组。...从索引派生的列的名称存储在names属性中。...,而不是将索引值放入 DataFrame 的列中。

    40710
    领券