Python酷库之旅-第三方库Pandas(206)

目录

一、用法精讲

961、pandas.IntervalIndex.mid属性

961-1、语法

961-2、参数

961-3、功能

961-4、返回值

961-5、说明

961-6、用法

961-6-1、数据准备

961-6-2、代码示例

961-6-3、结果输出

962、pandas.IntervalIndex.length属性

962-1、语法

962-2、参数

962-3、功能

962-4、返回值

962-5、说明

962-6、用法

962-6-1、数据准备

962-6-2、代码示例

962-6-3、结果输出

963、pandas.IntervalIndex.get_loc方法

963-1、语法

963-2、参数

963-3、功能

963-4、返回值

963-5、说明

963-6、用法

963-6-1、数据准备

963-6-2、代码示例

963-6-3、结果输出

964、pandas.IntervalIndex.get_indexer方法

964-1、语法

964-2、参数

964-3、功能

964-4、返回值

964-5、说明

964-6、用法

964-6-1、数据准备

964-6-2、代码示例

964-6-3、结果输出

965、pandas.MultiIndex类

965-1、语法

965-2、参数

965-3、功能

965-4、返回值

965-5、说明

965-6、用法

965-6-1、数据准备

965-6-2、代码示例

965-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

961、pandas.IntervalIndex.mid属性
961-1、语法
# 961、pandas.IntervalIndex.mid属性
pandas.IntervalIndex.mid
961-2、参数

        无

961-3、功能

        用于返回IntervalIndex中每个区间的中点,该属性对每个在IntervalIndex中定义的区间计算中间值,结果是一个Float64Index或Int64Index,具体取决于区间的类型。

961-4、返回值

        返回值是一个Float64Index,它包含每个区间的中间值,这些中间值是通过计算每个区间的下限和上限之间的平均值得到的。具体来说,对于每个区间[a, b],中点计算公式为(a + b) / 2。

961-5、说明

        无

961-6、用法
961-6-1、数据准备
961-6-2、代码示例
# 961、pandas.IntervalIndex.mid属性
import pandas as pd
# 创建一个IntervalIndex
interval_index = pd.IntervalIndex.from_tuples([(1, 3), (4, 6), (7, 9)])
# 获取每个区间的中点
mid_points = interval_index.mid
print(mid_points)
961-6-3、结果输出
# 961、pandas.IntervalIndex.mid属性
# Index([2.0, 5.0, 8.0], dtype='float64')
962、pandas.IntervalIndex.length属性
962-1、语法
# 962、pandas.IntervalIndex.length属性
pandas.IntervalIndex.length
962-2、参数

        无

962-3、功能

        计算IntervalIndex中每个区间的长度。

962-4、返回值

        返回一个Int64Index对象,包含每个区间的长度。

962-5、说明

        无

962-6、用法
962-6-1、数据准备
962-6-2、代码示例
# 962、pandas.IntervalIndex.length属性
import pandas as pd
# 创建一个IntervalIndex
intervals = pd.IntervalIndex.from_tuples([(0, 1), (1, 3), (3, 5)])
# 计算区间的长度
lengths = intervals.length
print(lengths)
962-6-3、结果输出
# 962、pandas.IntervalIndex.length属性
# Index([1, 2, 2], dtype='int64')
963、pandas.IntervalIndex.get_loc方法
963-1、语法
# 963、pandas.IntervalIndex.get_loc方法
pandas.IntervalIndex.get_loc(key)
Get integer location, slice or boolean mask for requested label.Parameters:
key
label
Returns:
int if unique index, slice if monotonic index, else mask
963-2、参数

963-2-1、key(必须)表示要查找的区间,可以是一个Interval对象。

963-3、功能

        用于查找指定的区间在IntervalIndex中的位置(索引),该方法可以帮助你快速确定某个区间是否存在于IntervalIndex中,以及它的位置。

963-4、返回值

        返回指定区间的整数索引,如果区间不存在,则会抛出KeyError。

963-5、说明

        无

963-6、用法
963-6-1、数据准备
963-6-2、代码示例
# 963、pandas.IntervalIndex.get_loc方法
import pandas as pd
# 创建一个IntervalIndex
intervals = pd.IntervalIndex.from_tuples([(0, 1), (1, 3), (3, 5)])
# 使用get_loc查找区间的位置
loc1 = intervals.get_loc(pd.Interval(0, 1))
loc2 = intervals.get_loc(pd.Interval(1, 3))
print(loc1)
print(loc2)
963-6-3、结果输出
# 963、pandas.IntervalIndex.get_loc方法
# 0
# 1
964、pandas.IntervalIndex.get_indexer方法
964-1、语法
# 964、pandas.IntervalIndex.get_indexer方法
pandas.IntervalIndex.get_indexer(target, method=None, limit=None, tolerance=None)
Compute indexer and mask for new index given the current index.The indexer should be then used as an input to ndarray.take to align the current data to the new index.Parameters:
targetIndex
method{None, ‘pad’/’ffill’, ‘backfill’/’bfill’, ‘nearest’}, optional
default: exact matches only.pad / ffill: find the PREVIOUS index value if no exact match.backfill / bfill: use NEXT index value if no exact matchnearest: use the NEAREST index value if no exact match. Tied distances are broken by preferring the larger index value.limitint, optional
Maximum number of consecutive labels in target to match for inexact matches.toleranceoptional
Maximum distance between original and new labels for inexact matches. The values of the index at the matching locations must satisfy the equation abs(index[indexer] - target) <= tolerance.Tolerance may be a scalar value, which applies the same tolerance to all values, or list-like, which applies variable tolerance per element. List-like includes list, tuple, array, Series, and must be the same size as the index and its dtype must exactly match the index’s type.Returns:
np.ndarray[np.intp]
Integers from 0 to n - 1 indicating that the index at these positions matches the corresponding target values. Missing values in the target are marked by -1.NotesReturns -1 for unmatched values, for further explanation see the example below.
964-2、参数

964-2-1、target(必须)array-like,一个包含要查找的值的数组或序列,这些值可以是区间的边界或其他数值。

964-2-2、method(可选,默认值为None)str,指定查找方法,可选值包括:

  • 'pad'或'ffill':查找第一个小于或等于目标值的区间(向前查找)。
  • 'backfill'或'bfill':查找第一个大于目标值的区间(向后查找)。

964-2-3、limit(可选,默认值为None)int,限制结果中可以返回的匹配数量,如果设置了这个参数,返回的位置索引将受到限制。

964-2-4、tolerance(可选,默认值为None)array-like,指定容忍度,以控制可以接受的值范围,如果提供了这个参数,则只有在区间边界内的值才会被视为匹配。

964-3、功能

        检索target中每个元素在IntervalIndex中的索引位置,它能够处理不同的查找策略(如精确匹配、向前查找和向后查找)。

964-4、返回值

        返回一个一维的NumPy数组,其中包含target中每个值在IntervalIndex中的对应索引,如果某个值在区间中没有找到,则返回-1。

964-5、说明

        无

964-6、用法
964-6-1、数据准备
964-6-2、代码示例
# 964、pandas.IntervalIndex.get_indexer方法
import pandas as pd
index = pd.Index(['c', 'a', 'b'])
arr1 = index.get_indexer(['a', 'b', 'x'])
print(arr1)
964-6-3、结果输出
# 964、pandas.IntervalIndex.get_indexer方法
# [ 1  2 -1]
965、pandas.MultiIndex
965-1、语法
# 965、pandas.MultiIndex类
class pandas.MultiIndex(levels=None, codes=None, sortorder=None, names=None, dtype=None, copy=False, name=None, verify_integrity=True)
A multi-level, or hierarchical, index object for pandas objects.Parameters:
levels
sequence of arrays
The unique labels for each level.codes
sequence of arrays
Integers for each level designating which label at each location.sortorder
optional int
Level of sortedness (must be lexicographically sorted by that level).names
optional sequence of objects
Names for each of the index levels. (name is accepted for compat).copy
bool, default False
Copy the meta-data.verify_integrity
bool, default True
Check that the levels/codes are consistent and valid.See alsoMultiIndex.from_arrays
Convert list of arrays to MultiIndex.MultiIndex.from_product
Create a MultiIndex from the cartesian product of iterables.MultiIndex.from_tuples
Convert list of tuples to a MultiIndex.MultiIndex.from_frame
Make a MultiIndex from a DataFrame.Index
The base pandas Index type.NotesSee the user guide for more.
965-2、参数

965-2-1、levels(可选,默认值为None)list,一个包含多个层级(levels)列表的集合,每个层级包含该层的所有唯一值,这些值在创建MultiIndex时定义了每一层的内容。

965-2-2、codes(可选,默认值为None)list,一个包含整数列表的集合,表示各个层级的索引位置,长度应与levels参数对应,指定每个层级中对应值的位置。

965-2-3、sortorder(可选,默认值为None)int,指定索引的排序顺序,可以是一个整数,表示根据哪个层级进行排序。

965-2-4、names(可选,默认值为None)list,为MultiIndex的每一层级指定名称,可以帮助在访问或操作数据时提高可读性,默认情况下,层级没有名称。

965-2-5、dtype(可选,默认值为None)数据类型,指定索引的数据类型,默认情况下会根据提供的数据和层级自动推断。

965-2-6、copy(可选,默认值为False)bool,是否复制输入数据,默认值为False,如果为True,将强制复制数据。

965-2-7、name(可选,默认值为None)string,为整个索引设置一个通用名称(单一名称),当MultiIndex作为某一列的索引时会用到。

965-2-8、verify_integrity(可选,默认值为True)bool,是否验证数组的完整性,确保不含有重复的条目。

965-3、功能

        支持多重层级索引,允许在同一数据结构中组织更多的层次信息,对于处理复杂的数据,如时间序列或分组数据,特别有用。

965-4、返回值

        返回一个pandas.MultiIndex对象,可以将其直接用于pandas的DataFrame或Series中作为索引,其提供的方法和属性使得对多层结构数据的操作非常灵活和高效,包括切片、合并、重设索引等。

965-5、说明

        无

965-6、用法
965-6-1、数据准备
965-6-2、代码示例
# 965、pandas.MultiIndex类
import pandas as pd
# 创建多个层级的索引
levels = [['A', 'B'], [1, 2]]
codes = [[0, 0, 1, 1], [0, 1, 0, 1]]  # A1, A2, B1, B2
# 创建MultiIndex
multi_index = pd.MultiIndex(levels=levels, codes=codes, names=['Letter', 'Number'])
# 创建一个DataFrame,并使用MultiIndex
data = {'Value': [10, 20, 30, 40]}
df = pd.DataFrame(data, index=multi_index)
# 显示DataFrame
print("初始DataFrame:")
print(df)
# 选取A的所有数据
print("\n选择'A'的数据:")
print(df.loc['A'])
# 选择特定层级的值,例如'B'和1
print("\n选择'B'1的数据:")
print(df.loc[('B', 1)])
# 重设索引
df_reset = df.reset_index()
print("\n重设索引后的DataFrame:")
print(df_reset)
# 通过层级进行分组并计算均值
grouped = df.groupby(level='Letter').mean()
print("\n按字母分组计算均值:")
print(grouped)
965-6-3、结果输出
# 965、pandas.MultiIndex类
# 初始DataFrame:
#                Value
# Letter Number       
# A      1          10
#        2          20
# B      1          30
#        2          40
# 
# 选择'A'的数据:
#         Value
# Number       
# 1          10
# 2          20
# 
# 选择'B'1的数据:
# Value    30
# Name: (B, 1), dtype: int64
# 
# 重设索引后的DataFrame:
#   Letter  Number  Value
# 0      A       1     10
# 1      A       2     20
# 2      B       1     30
# 3      B       2     40
# 
# 按字母分组计算均值:
#         Value
# Letter       
# A        15.0
# B        35.0

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/469629.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【论文阅读】利用SEM二维图像表征黏土矿物三维结构

导言 在油气储层研究中&#xff0c;黏土矿物对流体流动的影响需要在微观尺度上理解&#xff0c;但传统的二维SEM图像难以完整地表征三维孔隙结构。常规的三维成像技术如FIB-SEM&#xff08;聚焦离子束扫描电子显微镜&#xff09;虽然可以获取高精度的3D图像&#xff0c;但成本…

前端入门一之ES6--面向对象、够着函数和原型、继承、ES5新增方法、函数进阶、严格模式、高阶函数、闭包

前言 JS是前端三件套之一&#xff0c;也是核心&#xff0c;本人将会更新JS基础、JS对象、DOM、BOM、ES6等知识点&#xff0c;这篇是ES6;这篇文章是本人大一学习前端的笔记&#xff1b;欢迎点赞 收藏 关注&#xff0c;本人将会持续更新。 文章目录 JS高级 ES61、面向对象1.1…

数据安全、信息安全、网络安全区别与联系

关键字&#xff1a; 信息安全 数据安全 网络安全 [导读] 在 “互联网 ” 被广泛提及的今天&#xff0c;安全问题也越来越多的受到人们关注&#xff0c;然而很多人对于 “信息安全”、“数据安全”、“网络安全” 的概念并不是很清楚。我们汇总了官方机构给这三者的定义&#…

Linux——简单认识vim、gcc以及make/Makefile

前言&#xff1a;大佬写博客给别人看&#xff0c;菜鸟写博客给自己看&#xff0c;我是菜鸟。 1、vim操作&#xff1a; 默认打开vim时&#xff0c;vim处于命令模式。(在其他模式中&#xff0c;Esc就能够返回命令模式) 常用的命令有&#xff1a; n gg&#xff1a;跳转到n行&…

Java反序列化之CommonsCollections2链的学习

一、前言 Apache Commons Collections 是一个著名的辅助开发库&#xff0c;包含了一些Java中没有的数据结构和辅助方法&#xff0c;不过随着Java 9 以后的版本中原生库功能的丰富&#xff0c;以及反序列化漏洞的影响&#xff0c;它也在逐渐被升级或替代。 在2015年底的common…

前端web

题目&#xff1a;制作带有下拉悬停菜单的导航栏 效果图 一、先制作标签 <body> <div id"menu"> <div id"container"> <div class"item">游戏1 <div class…

【大数据学习 | kafka高级部分】kafka中的选举机制

controller的选举 首先第一个选举就是借助于zookeeper的controller的选举 第一个就是controller的选举&#xff0c;这个选举是借助于zookeeper的独享锁实现的&#xff0c;先启动的broker会在zookeeper的/contoller节点上面增加一个broker信息&#xff0c;谁创建成功了谁就是主…

Android 开发指南:初学者入门

Android 是全球最受欢迎的移动操作系统之一&#xff0c;为开发者提供了丰富的工具和资源来创建各种类型的应用程序。本文将为你提供一个全面的入门指南&#xff0c;帮助你从零开始学习 Android 开发。 目录 1. 了解 Android 平台[1]2. 设置开发环境[2]3. 学习基础知识[3]4. 创…

漏洞挖掘 | 某医院小程序支付漏洞+越权

漏洞挖掘 | 某医院小程序支付漏洞越权 登陆后点击个人信息&#xff0c;抓包&#xff0c;放到repeter模块 修改strUserID参数可以越权查看别人信息 放intruder模块可以跑数据&#xff0c;这里有几万信息泄露 回到首页&#xff0c;点击医生咨询功能点 随便选一个需要付费的医…

MFC图形函数学习07——画扇形函数

绘制扇形函数是MFC中绘图的基本函数&#xff0c;它绘制的仍是由椭圆弧与椭圆中心连线构成的椭圆扇形&#xff0c;特例是由圆弧与圆心连线构成的圆扇形。 一、绘制扇形函数 原型&#xff1a;BOOL Pie(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4); …

基于Python的膳食健康系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

头歌网络安全(11.12)

头歌禁止复制解决 必须先下篡改猴&#xff01;&#xff01;&#xff01;&#xff01; 头歌复制助手 Educoder Copy Helperhttps://scriptcat.org/zh-CN/script-show-page/1860 Java生成验证码 第1关&#xff1a;使用Servlet生成验证码 任务描述 本关任务&#xff1a;使用se…

ROM修改进阶教程------安卓14 安卓15去除app签名验证的几种操作步骤 详细图文解析

在安卓14 安卓15的固件中。如果修改了系统级别的app。那么就会触发安卓14 15的应用签名验证。要么会导致修改的固件会进不去系统,或者进入系统有bug。博文将从几方面来解析去除安卓14 15应用签名验证的几种方法。 💝💝💝通过博文了解: 1💝💝💝-----安卓14去除…

第七部分:2. STM32之ADC实验--AD多通道(AD采集三路传感器模块实验:光敏传感器、热敏传感器、反射式传感器附赠温湿度传感器教程)

这个多通道采用非扫描模式--单次转换模式 1.代码配置链路图 2. ADC的输入通道 3.ADC的非扫描模式的转换模式&#xff08;单次和连续&#xff09; 4.ADC的扫描模式的转换模式&#xff08;单次和连续&#xff09; 5.采集校准 代码实验&#xff1a; 代码部分&#xff1a; #inclu…

crond 任务调度 (Linux相关指令:crontab)

相关视频链接 crontab 进行 定时任务 的设置 概述 任务调度&#xff1a;是指系统在某个时间执行的特定的命令或程序 任务调度的分类&#xff1a; 1.系统工作&#xff1a;有些重要的工作必须周而复始地执行。如病毒扫描等。 2.个别用户可能希望执行某些程序&#xff0c;比如…

基于python 的opencv 使用GrabCut算法分割图像代码

#利用grabcut算法分割图像import numpy as np import cv2 from matplotlib import pyplot as plt import warningswarnings.filterwarnings("ignore", module "matplotlib")imgpath E:/code/image_opencv_test/lena.jpg img cv2.imread(imgpath)Coords1x…

AndroidStudio-文本显示

一、设置文本的内容 1.方式&#xff1a; &#xff08;1&#xff09;在XML文件中通过属性&#xff1a;android:text设置文本 例如&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.andr…

css:没错又是我

背景 给元素添加背景样式 还可以设置背景颜色、背景图片&#xff08;教练我要学这个&#xff09;、背景平铺、背景图片位置、背景图像固定 背景颜色 这个我们用过&#xff0c;就是&#xff1a; a {background-color: hotpink; } 一般默认值是transparent&#xff0c;也就…

使用Git工具在GitHub的仓库中上传文件夹(超详细)

如何使用Git工具在GitHub的仓库中上传文件夹&#xff1f; 如果觉得博主写的还可以&#xff0c;点赞收藏关注噢~ 第一步&#xff1a;拥有一个本地的仓库 可以fork别人的仓库或者自己新创建 fork别人的仓库 或者自己创建一个仓库 按照要求填写完成后&#xff0c;点击按钮创建…

uniapp的基本使用(easycom规范和条件编译)和uview组件的安装和使用

文章目录 1、uniapp1.uview组件安装2.uview-plus组件安装 2、条件编译3、easycom规范1.组件路径符合规范2.自定义easycom配置的示例 总结 1、uniapp UniApp的UI组件库&#xff0c;如TMUI、uViewUI、FirstUI、TuniaoUI、ThorUI等&#xff0c;这些组件库适用于Vue3和TypeScript&…