pandas中层次化索引使用规则总结

pandas中多层次索引的使用心得作为一个初学python的小白,学习pandas的多层次索引时,被各种[],()的组合搞晕了,经过多次尝试和验证,发现了其中一些规则,欢迎大家一起验证一下。一些基本规则1、在[]内嵌套使用[]或()时,内嵌的[]表示同一个轴向上同一个层级的索引,内嵌的()表示同一个轴向上不同层级(层次化索引中经常用到);2、[][]并列使用表示在前一个[]的结果中再次执行[],即按顺序选取子集;3、使用层次化索引时,必须依层级指定标签,不允许跳过上一层级的,直接选取低层级。Se
摘要由CSDN通过智能技术生成

pandas中层次化索引使用规则总结

作为一个初学python的小白,学习pandas的层次化索引时,被各种[],()的组合搞晕了,网上很多文章只是按书上的例子摘录,对于原理或规则的讲述很少,使用时往往难以掌控,经过多次尝试和验证,发现了其中一些规律,欢迎大家一起验证一下。

一些基本规则

1、在[]内嵌套使用[]或()时,内嵌的[]表示同一个轴向上同一个层级的索引,内嵌的()表示同一个轴向上不同层级(层次化索引中经常用到);
2、[][]并列使用表示在前一个[]的结果中再次执行[],即按顺序选取子集;
3、使用层次化索引时,必须依层级指定标签,不允许跳过上一层级的,直接选取低层级。

Series选取子集时:

1、Series“没有列”,不存在列索引,所以[]中只能使用行索引,直接选取或使用loc选取的用法是一样的,以下以loc选取为例;
2、选取不同层级的行标签轴,每个层级只含一个标签的格式
ser.loc[row_index_level_1,row_index_level_2,…,row_index_level_n];
3、选取不同层级的标签轴,每个层级含多个索引时,用内嵌的[]把同一个层级的行索引括起来
ser.loc[[row_index_level_1_1,row_index_level_1_2],…,row_index_level_n_n]
4、Series“没有列”,这里不同层级之间的索引

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pandas ,DataFrame 的每一列都有一个列索引(column index),而每一行都有一个行索引(row index),这些索引用于标识 DataFrame 的数据。 列索引是一个包含列标签(column label)的 Index 对象,可以使用 `df.columns` 属性来访问它,其 df 是 DataFrame 对象。行索引是一个包含行标签(row label)的 Index 对象,可以使用 `df.index` 属性来访问它。 行索引和列索引都遵循以下规则: 1. 索引可以是任何 hashable 的对象,通常使用字符串或整数作为索引。如果没有显式指定索引,则使用默认的整数索引,从 0 开始递增。 2. 索引对象是不可变的,不能直接修改索引的值。如果需要修改索引,需要先创建一个新的索引对象。 3. 索引对象可以包含重复的标签,但是在某些操作可能会出现问题。为了避免这种情况,可以使用 `duplicated()` 和 `drop_duplicates()` 方法来检测和删除重复的标签。 4. 索引对象可以使用切片(slice)来进行筛选或切片操作,也可以使用布尔索引进行过滤。 5. 所有的 Pandas 函数和方法都支持使用索引和列索引进行数据选择和操作。 6. 索引对象可以使用 `set_index()` 方法来更改 DataFrame 的行索引,也可以使用 `reset_index()` 方法来重置行索引。列索引只能通过修改 `df.columns` 属性来更改。 总之,索引Pandas 非常重要的概念,可以帮助我们对数据进行快速的查询、切片和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值