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

news2024/12/23 0:31:46

目录

一、用法精讲

971、pandas.MultiIndex.set_levels方法

971-1、语法

971-2、参数

971-3、功能

971-4、返回值

971-5、说明

971-6、用法

971-6-1、数据准备

971-6-2、代码示例

971-6-3、结果输出

972、pandas.MultiIndex.from_arrays类方法

972-1、语法

972-2、参数

972-3、功能

972-4、返回值

972-5、说明

972-6、用法

972-6-1、数据准备

972-6-2、代码示例

972-6-3、结果输出

973、pandas.MultiIndex.from_tuples类方法

973-1、语法

973-2、参数

973-3、功能

973-4、返回值

973-5、说明

973-6、用法

973-6-1、数据准备

973-6-2、代码示例

973-6-3、结果输出

974、pandas.MultiIndex.from_product类方法

974-1、语法

974-2、参数

974-3、功能

974-4、返回值

974-5、说明

974-6、用法

974-6-1、数据准备

974-6-2、代码示例

974-6-3、结果输出

975、pandas.MultiIndex.from_frame类方法

975-1、语法

975-2、参数

975-3、功能

975-4、返回值

975-5、说明

975-6、用法

975-6-1、数据准备

975-6-2、代码示例

975-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

971、pandas.MultiIndex.set_levels方法
971-1、语法
# 971、pandas.MultiIndex.set_levels方法
pandas.MultiIndex.set_levels(levels, *, level=None, verify_integrity=True)
Set new levels on MultiIndex. Defaults to returning new index.

Parameters:
levels
sequence or list of sequence
New level(s) to apply.

level
int, level name, or sequence of int/level names (default None)
Level(s) to set (None for all levels).

verify_integrity
bool, default True
If True, checks that levels and codes are compatible.

Returns:
MultiIndex
971-2、参数

971-2-1、levels(必需)列表或数组,用于替换多重索引的指定级别的新值,可以传入单个列表或多个列表。

971-2-2、level(可选,默认值为None)整数、整数列表或None,指定特定级别时,仅修改对应的层级,可以是单个整数或整数列表,当为None时,替换所有级别。

971-2-3、verify_integrity(可选,默认值为True)布尔值,是否检查新的级别值是否有效和一致。

971-3、功能

        修改多重索引的特定级别或全部级别的值,允许灵活地重新设置多重索引的层级。

971-4、返回值

        返回一个新的MultiIndex对象,原始MultiIndex对象不会被修改。

971-5、说明

        无

971-6、用法
971-6-1、数据准备
971-6-2、代码示例
# 971、pandas.MultiIndex.set_levels方法
import pandas as pd
# 创建多重索引
index = pd.MultiIndex.from_arrays([
    ['A', 'A', 'B', 'B'],
    [1, 2, 1, 2]
])
# 修改第一级别
new_index = index.set_levels(['X', 'Y'], level=0)
# 修改全部级别
new_index = index.set_levels([['X', 'Y'], [3, 4]])
print(new_index)
971-6-3、结果输出
# 971、pandas.MultiIndex.set_levels方法
# MultiIndex([('X', 3),
#             ('X', 4),
#             ('Y', 3),
#             ('Y', 4)],
#            )
972、pandas.MultiIndex.from_arrays类方法
972-1、语法
# 972、pandas.MultiIndex.from_arrays类方法
classmethod pandas.MultiIndex.from_arrays(arrays, sortorder=None, names=_NoDefault.no_default)
Convert arrays to MultiIndex.

Parameters:
arrays
list / sequence of array-likes
Each array-like gives one level’s value for each data point. len(arrays) is the number of levels.

sortorder
int or None
Level of sortedness (must be lexicographically sorted by that level).

names
list / sequence of str, optional
Names for the levels in the index.

Returns:
MultiIndex
972-2、参数

972-2-1、arrays(必需)列表或数组的列表,用于构建多重索引的数组,每个数组代表一个级别的索引。

972-2-2、sortorder(可选,默认值None)整数或None,指定索引的排序顺序,可以是一个整数,表示要排序的级别的索引,如果为 None,则不进行排序。

972-2-3、names(可选)字符串列表或None,为每个级别指定名称,如果不提供,则级别将没有名称。

972-3、功能

        创建一个多重索引对象,允许在数据框中使用多层索引。

972-4、返回值

        返回一个MultiIndex对象。

972-5、说明

        无

972-6、用法
972-6-1、数据准备
972-6-2、代码示例
# 972、pandas.MultiIndex.from_arrays类方法
import pandas as pd
# 创建多重索引
arrays = [
    ['A', 'A', 'B', 'B'],
    [1, 2, 1, 2]
]
# 使用from_arrays创建MultiIndex
multi_index = pd.MultiIndex.from_arrays(arrays, names=['letter', 'number'])
# 输出结果
print(multi_index)
972-6-3、结果输出
# 972、pandas.MultiIndex.from_arrays类方法
# MultiIndex([('A', 1),
#             ('A', 2),
#             ('B', 1),
#             ('B', 2)],
#            names=['letter', 'number'])
973、pandas.MultiIndex.from_tuples类方法
973-1、语法
# 973、pandas.MultiIndex.from_tuples类方法
classmethod pandas.MultiIndex.from_tuples(tuples, sortorder=None, names=None)
Convert list of tuples to MultiIndex.

Parameters:
tuples
list / sequence of tuple-likes
Each tuple is the index of one row/column.

sortorder
int or None
Level of sortedness (must be lexicographically sorted by that level).

names
list / sequence of str, optional
Names for the levels in the index.

Returns:
MultiIndex
973-2、参数

973-2-1、tuples(必需)可迭代的元组列表,包含用于构建多重索引的元组,每个元组表示索引的一层。

973-2-2、sortorder(可选,默认值为None)整数或None,指定要排序的索引级别的顺序,如果为None,则不进行排序。

973-2-3、names(可选,默认值为None)字符串列表或None,为每个级别指定名称,如果不提供,则级别将没有名称。

973-3、功能

        创建一个多重索引对象,使数据框中能够使用多层级别的索引。

973-4、返回值

        返回一个MultiIndex对象。

973-5、说明

        无

973-6、用法
973-6-1、数据准备
973-6-2、代码示例
# 973、pandas.MultiIndex.from_tuples类方法
import pandas as pd
# 创建多重索引的元组
tuples = [
    ('A', 1),
    ('A', 2),
    ('B', 1),
    ('B', 2)
]
# 使用from_tuples创建MultiIndex
multi_index = pd.MultiIndex.from_tuples(tuples, names=['letter', 'number'])
# 输出结果
print(multi_index)
973-6-3、结果输出
# 973、pandas.MultiIndex.from_tuples类方法
# MultiIndex([('A', 1),
#             ('A', 2),
#             ('B', 1),
#             ('B', 2)],
#            names=['letter', 'number'])
974、pandas.MultiIndex.from_product类方法
974-1、语法
# 974、pandas.MultiIndex.from_product类方法
classmethod pandas.MultiIndex.from_product(iterables, sortorder=None, names=_NoDefault.no_default)
Make a MultiIndex from the cartesian product of multiple iterables.

Parameters:
iterables
list / sequence of iterables
Each iterable has unique labels for each level of the index.

sortorder
int or None
Level of sortedness (must be lexicographically sorted by that level).

names
list / sequence of str, optional
Names for the levels in the index. If not explicitly provided, names will be inferred from the elements of iterables if an element has a name attribute.

Returns:
MultiIndex
974-2、参数

974-2-1、iterables(必需)可迭代对象的列表,提供多个可迭代对象,这些对象将用于生成笛卡尔积。

974-2-2、sortorder(可选,默认值为None)整数或None,指定要排序的索引级别的顺序,如果为None,则不进行排序。

974-2-3、names(可选)字符串列表或None,为每个级别指定名称,如果不提供,则级别将没有名称。

974-3、功能

        创建一个多重索引对象,该对象是通过给定的可迭代对象生成的所有可能组合。

974-4、返回值

        返回一个MultiIndex对象。

974-5、说明

        无

974-6、用法
974-6-1、数据准备
974-6-2、代码示例
# 974、pandas.MultiIndex.from_product类方法
import pandas as pd
# 创建多个可迭代对象
iterables = [
    ['A', 'B'],
    [1, 2, 3]
]
# 使用from_product创建MultiIndex
multi_index = pd.MultiIndex.from_product(iterables, names=['letter', 'number'])
# 输出结果
print(multi_index)
974-6-3、结果输出
# 974、pandas.MultiIndex.from_product类方法
# MultiIndex([('A', 1),
#             ('A', 2),
#             ('A', 3),
#             ('B', 1),
#             ('B', 2),
#             ('B', 3)],
#            names=['letter', 'number'])
975、pandas.MultiIndex.from_frame类方法
975-1、语法
# 975、pandas.MultiIndex.from_frame类方法
classmethod pandas.MultiIndex.from_frame(df, sortorder=None, names=None)
Make a MultiIndex from a DataFrame.

Parameters:
df
DataFrame
DataFrame to be converted to MultiIndex.

sortorder
int, optional
Level of sortedness (must be lexicographically sorted by that level).

names
list-like, optional
If no names are provided, use the column names, or tuple of column names if the columns is a MultiIndex. If a sequence, overwrite names with the given sequence.

Returns:
MultiIndex
The MultiIndex representation of the given DataFrame.
975-2、参数

975-2-1、df(必需)DataFrame,表示要从中提取索引的DataFrame,它的列将被用作多重索引的级别。

975-2-2、sortorder(可选,默认值为None)整数或None,指定要排序的索引级别的顺序,如果为None,则不进行排序。

975-2-3、names(可选,默认值为None)字符串列表或None,为每个级别指定名称,如果不提供,则级别将没有名称。

975-3、功能

        用于从一个DataFrame中提取级别并创建一个多重索引,该方法对于处理具有层次结构的索引非常有用,通常用于将DataFrame的列转换为MultiIndex的级别。

975-4、返回值

        返回一个MultiIndex对象。

975-5、说明

        无

975-6、用法
975-6-1、数据准备
975-6-2、代码示例
# 975、pandas.MultiIndex.from_frame类方法
import pandas as pd
# 创建一个DataFrame
data = {
    'A': ['foo', 'foo', 'bar', 'bar'],
    'B': ['one', 'two', 'one', 'two'],
    'C': [1, 2, 3, 4]
}
df = pd.DataFrame(data)
# 使用from_frame创建MultiIndex
multi_index = pd.MultiIndex.from_frame(df[['A', 'B']], names=['first_level', 'second_level'])
# 输出结果
print(multi_index)
975-6-3、结果输出
# 975、pandas.MultiIndex.from_frame类方法
# MultiIndex([('foo', 'one'),
#             ('foo', 'two'),
#             ('bar', 'one'),
#             ('bar', 'two')],
#            names=['first_level', 'second_level'])

二、推荐阅读

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Linux]:IO多路转接之epoll

1. IO 多路转接之epoll 1.1 epoll概述 epoll是Linux内核为处理大规模并发网络连接而设计的高效I/O多路转接技术。它基于事件驱动模型,通过在内核中维护一个事件表,能够快速响应多个文件描述符上的I/O事件,如可读、可写、异常等,…

Spring Security 认证流程,长话简说

一、代码先行 1、设计模式 SpringSecurity 采用的是 责任链 的设计模式,是一堆过滤器链的组合,它有一条很长的过滤器链。 不过我们不需要去仔细了解每一个过滤器的含义和用法,只需要搞定以下几个问题即可:怎么登录、怎么校验账户、认证失败…

API 接口进行多分支管理的方法

原文链接:API 接口进行多分支管理的方法

链表类算法【leetcode】

链表的定义 面试时,需要自己手写... // 单链表 struct ListNode {int val; // 节点上存储的元素ListNode *next; // 指向下一个节点的指针ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数 }; 【构造函数可以省略,C默认生成一个构造函数…

重构开发之道,Blackbox.AI为技术注入智能新动力

本文目录 一、引言二、Blackbox.AI实战体验2.1 基于网页界面生成前端代码进行应用开发2.2 与AI助手实现实时智能对话2.3 重塑大型文件交互方式2.4 链接Github仓库进行对话编程 三、总结 一、引言 在生产力工具加速进化的浪潮中,Blackbox.AI开始崭露头角&#xff0c…

【STM32F1】——9轴姿态传感器JY901与IIC通信

【STM32F1】——9轴姿态传感器JY901与IIC通信 一、简介 本篇主要对9轴姿态传感器JY901的调试过程进行总结,实现了以下功能。 IIC通信采集+串口收发:使用STM32F103C8T6的GPIO口模拟IIC,从JY901读取数据,并通过USART1串口发送到PC。二、JY901介绍 电压:3.3-5V量程:X/Z轴 …

Linux网络——自定义协议与序列化

一、协议 协议是一种 " 约定 ". socket api 的接口 , 在读写数据时 , 都是按 " 字符串 " 的方式来发送接收的。如 果我们要传输一些 " 结构化的数据 ",依然可以通过协议。 其实,协议就是双方约定好的结构化的数据。…

Windows,虚拟机Ubuntu和开发板三者之间的NFS服务器搭建

Windows,虚拟机Ubuntu和开发板三者之间的NFS服务器搭建 (1)虚拟机 ubuntu 要使用桥接模式,不能使用其他模式 (2)通过网线将PC和开发板网口直连:这样的连接,开发板是无法连接外网的 (3&#xff…

更改Ubuntu22.04锁屏壁纸

更改Ubuntu22.04锁屏壁纸 sudo apt install gnome-shell-extensions gnome-shell-extension-manager安装Gnome Shell 扩展管理器后,打开“扩展管理器”并使用搜索栏找到“锁屏背景”扩展

大模型推理优化技术-KV Cache

近两年大模型火出天际;同时,也诞生了大量针对大模型的优化技术。本系列将针对一些常见大模型优化技术进行讲解。 大模型推理优化技术-KV Cache大模型推理服务调度优化技术-Continuous batching大模型底显存推理优化-Offload技术大模型推理优化技术-KV C…

力扣 LeetCode 24. 两两交换链表中的节点(Day2:链表)

解题思路: 暂存节点tmp和tmp1 注意:while (cur.next ! null && cur.next.next ! null)表示为偶数和奇数时的循环停止条件,并且while语句中的顺序不可交换,交换会报空指针异常 class Solution {public ListNode swapPai…

动态规划-背包问题——494.目标和

1.状态表示 题目来源 494.目标和——力扣 测试用例 2.算法原理 1.状态表示 首先我们需要将问题简化,这里需要找到能将数组组合计算成为指定数字target的添加方式,那么我们就可以将数字分为两类,一类是前面添加""的,另…

哪些因素会导致充电器的充电速度变慢?-纳米软件

充电器的充电速度变慢可能由多种原因引起。以下是一些常见的因素: 一、充电器本身的问题 充电头功率不足:不同的充电头有不同的输出功率,如果使用的充电头功率较低,那么充电速度就会变慢。例如,一些老旧的充电头可能…

刷题强训(day06) -- 大数加法、链表相加、大数乘法

目录 1、大数加法 1.1 题目 1.2 思路 1.3 代码实现 2、链表相加(二) 2.1 题目 2.2 思路 2.3 代码实现 3、大数乘法 3.1 题目 3.2 思路 3.3 代码实现 1、大数加法 1.1 题目 1.2 思路 这道题可以模拟列竖式相加解答, 将每一位都转…

数字后端教程之Innovus report_property和get_property使用方法及应用案例

数字IC后端实现Innovus中使用report_property可以报告出各种各样object的属性,主要有cell,net,PG Net,Pin,时钟clock,时序库lib属性,Design属性,timing path,timin arc等…

网络基础 - 网段划分篇

我们知道,IP 地址(IPv4 地址)由 “网络标识(网络地址)” 和 “主机标识(主机地址)” 两部分组成,例如 192.168.128.10/24,其中的 “/24” 表示从第 1 位开始到多少位属于网络标识,那么,剩余位就属于主机标识了&#xf…

python实战(八)——情感识别(多分类)

一、任务目标 本文使用的是来自Kaggle的一个情感识别数据集,这个数据集的总数据量是5934条,标签为anger、fear、joy三种情感的其中一种,很明显是一个多分类任务。这里,我们将使用微调技巧进行深度学习建模,同时我们会比…

23423234

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话: 知不足而奋进,望远山而前行&am…

opencv入门学习总结

opencv学习总结 不多bb,直接上代码!!! 案例一: import cv2 # 返回当前安装的 OpenCV 库的版本信息 并且是字符串格式 print(cv2.getVersionString()) """ 作用:它可以读取不同格式的图像文…

MySQL 中的索引下推功能

看到索引,应该大家都可以联想到这个是和查询效率有关系的,既然有这个功能,那么那句古话说的好啊:存在即合理。那么这个就是说有了这个功能,可以提升查询效率。 什么是索引下推 我们先有一个大概的理解:在…