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

news2024/9/17 7:25:49

目录

一、用法精讲

196、pandas.Series.first方法

196-1、语法

196-2、参数

196-3、功能

196-4、返回值

196-5、说明

196-6、用法

196-6-1、数据准备

196-6-2、代码示例

196-6-3、结果输出

197、pandas.Series.head方法

197-1、语法

197-2、参数

197-3、功能

197-4、返回值

197-5、说明

197-6、用法

197-6-1、数据准备

197-6-2、代码示例

197-6-3、结果输出

198、pandas.Series.idxmax方法

198-1、语法

198-2、参数

198-3、功能

198-4、返回值

198-5、说明

198-6、用法

198-6-1、数据准备

198-6-2、代码示例

198-6-3、结果输出

199、pandas.Series.idxmin方法

199-1、语法

199-2、参数

199-3、功能

199-4、返回值

199-5、说明

199-6、用法

199-6-1、数据准备

199-6-2、代码示例

199-6-3、结果输出

200、pandas.Series.isin方法

200-1、语法

200-2、参数

200-3、功能

200-4、返回值

200-5、说明

200-6、用法

200-6-1、数据准备

200-6-2、代码示例

200-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

196、pandas.Series.first方法
196-1、语法
# 196、pandas.Series.first方法
pandas.Series.first(offset)
Select initial periods of time series data based on a date offset.

Deprecated since version 2.1: first() is deprecated and will be removed in a future version. Please create a mask and filter using .loc instead.

For a DataFrame with a sorted DatetimeIndex, this function can select the first few rows based on a date offset.

Parameters:
offset
str, DateOffset or dateutil.relativedelta
The offset length of the data that will be selected. For instance, ‘1ME’ will display all the rows having their index within the first month.

Returns:
Series or DataFrame
A subset of the caller.

Raises:
TypeError
If the index is not a DatetimeIndex
196-2、参数

196-2-1、offset(必须)字符串,表示定义时间偏移量的单位。

196-3、功能

        用于从时间序列数据中提取符合指定时间偏移量的第一个记录。

196-4、返回值

        返回一个pandas.Series对象,包含时间序列中第一个符合指定时间偏移条件的记录及其对应的值,如果没有符合条件的记录,返回的将是NaN。

196-5、说明

        常见的offset参数值:

196-5-1、'D'-日:提取第一个符合“每天”时间偏移的记录。例如,first('D')返回时间序列中的第一个日期。

196-5-2、'W'-周:提取第一个符合“每周”时间偏移的记录。例如,first('W')返回时间序列中的第一个符合每周的日期。

196-5-3、'M'-月:提取第一个符合“每月”时间偏移的记录。例如,first('M')返回时间序列中的第一个符合每月的日期。

196-5-4、'Q'-季度:提取第一个符合“每季度”时间偏移的记录。例如,first('Q')返回时间序列中的第一个符合每季度的日期。

196-5-5、'A'或'Y'-年:提取第一个符合“每年”时间偏移的记录。例如,first('A')或first('Y')返回时间序列中的第一个符合每年的日期。

196-6、用法
196-6-1、数据准备
196-6-2、代码示例
# 196、pandas.Series.first方法
import pandas as pd
# 示例数据
date_range = pd.date_range(start='2024-01-01', periods=12, freq='M')
ts = pd.Series(range(len(date_range)), index=date_range)
# 使用first方法
first_month = ts.first('M')
print(first_month)
196-6-3、结果输出
# 196、pandas.Series.first方法
# 2024-01-31    0
# Freq: ME, dtype: int64
197、pandas.Series.head方法
197-1、语法
# 197、pandas.Series.head方法
pandas.Series.head(n=5)
Return the first n rows.

This function returns the first n rows for the object based on position. It is useful for quickly testing if your object has the right type of data in it.

For negative values of n, this function returns all rows except the last |n| rows, equivalent to df[:n].

If n is larger than the number of rows, this function returns all rows.

Parameters:
n
int, default 5
Number of rows to select.

Returns:
same type as caller
The first n rows of the caller object.
197-2、参数

197-2-1、n(可选,默认值为5)整数,指定要返回的前N行记录的数量。如果N是一个正整数,方法将返回时间序列前N行的记录;如果N是负整数,则方法将返回从末尾倒数N行的记录。

197-3、功能

        用于获取时间序列前N行记录的方法。

197-4、返回值

        返回一个pandas.Series对象,包含时间序列中前N行记录的一个新的Series对象,返回的Series对象的索引和原时间序列保持一致。

197-5、说明

        无

197-6、用法
197-6-1、数据准备

        无

197-6-2、代码示例
# 197、pandas.Series.head方法
import pandas as pd
# 创建示例时间序列
data = pd.Series([10, 20, 30, 40, 50, 60, 70])
# 获取前5行记录
print(data.head(5))
197-6-3、结果输出
# 197、pandas.Series.head方法
# 0    10
# 1    20
# 2    30
# 3    40
# 4    50
# dtype: int64
198、pandas.Series.idxmax方法
198-1、语法
# 198、pandas.Series.idxmax方法
pandas.Series.idxmax(axis=0, skipna=True, *args, **kwargs)
Return the row label of the maximum value.

If multiple values equal the maximum, the first row label with that value is returned.

Parameters:
axis
{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.

skipna
bool, default True
Exclude NA/null values. If the entire Series is NA, the result will be NA.

*args, **kwargs
Additional arguments and keywords have no effect but might be accepted for compatibility with NumPy.

Returns:
Index
Label of the maximum value.

Raises:
ValueError
If the Series is empty.
198-2、参数

198-2-1、axis(可选,默认值为0)用于指定操作的轴,通常Series只有一个轴,所以这个参数通常是默认的0。

198-2-2、skipna(可选,默认值为True)是否忽略NA/NaN值,默认是True,即忽略这些值来计算最大值的索引。

198-2-3、*args(可选)其他位置参数,为后续扩展功能做预留。

198-2-4、**kwargs(可选)其他关键字参数,为后续扩展功能做预留。

198-3、功能

        查找并返回Series中最大值的索引。

198-4、返回值

        返回最大值所在的索引(即标签),类型与Series的索引类型相同。

198-5、说明

        使用场景:

198-5-1、数据探索: 在数据探索阶段,了解数据集中最大值的位置可以帮助识别潜在的关键数据点。例如,在分析销售数据时,找到销售额最高的日期可以帮助发现销售高峰期。

198-5-2、性能分析: 在性能分析中,确定最大性能指标(如最大CPU使用率或最大吞吐量)的时间点,可以帮助优化系统性能或识别性能瓶颈。

198-5​​​​​​​-3、异常检测: 当分析数据时,找到最大值的位置有助于识别异常值或极端情况。例如,在监控传感器数据时,最大温度读数的时间点可能需要进一步检查。

198-5​​​​​​​-4、决策支持: 在决策过程中,知道哪个项目或时间点具有最大值可以帮助做出更好的决策。例如,在市场营销策略评估中,找到最高的投资回报率的时间点,可以帮助制定未来的营销计划。

198-5​​​​​​​-​​​​​​​5、数据排序与筛选: 在进行数据排序和筛选时,找到最大值的位置可以帮助进一步操作。例如,确定最高评分的用户,或找到最大收益的产品。

198-6、用法
198-6-1、数据准备
198-6-2、代码示例
# 198、pandas.Series.idxmax方法
# 198-1、数据探索
import pandas as pd
# 示例数据
data = {
    '日期': ['2024-01-01', '2024-01-02', '2024-01-03', '2024-01-04'],
    '销售额': [200, 300, 150, 400]
}
df = pd.DataFrame(data)
# 找到销售额最高的日期
max_sales_date = df['销售额'].idxmax()
print(f"销售额最高的日期是: {df.loc[max_sales_date, '日期']}")

# 198-2、性能分析
import pandas as pd
# 示例数据
data = {
    '时间': ['00:00', '01:00', '02:00', '03:00'],
    'CPU使用率': [55, 75, 60, 80]
}
df = pd.DataFrame(data)
# 找到最高CPU使用率的时间点
max_cpu_time = df['CPU使用率'].idxmax()
print(f"最高CPU使用率的时间点是: {df.loc[max_cpu_time, '时间']}")

# 198-3、异常检测
import pandas as pd
# 示例数据
data = {
    '时间': ['2024-07-01', '2024-07-02', '2024-07-03', '2024-07-04'],
    '温度': [23.5, 29.0, 25.0, 30.2]
}
df = pd.DataFrame(data)
# 找到最高温度读数的时间点
max_temp_date = df['温度'].idxmax()
print(f"最高温度的时间点是: {df.loc[max_temp_date, '时间']}")

# 198-4、决策支持
import pandas as pd
# 示例数据
data = {
    '广告活动': ['活动A', '活动B', '活动C', '活动D'],
    '投资回报率': [3.5, 4.2, 2.8, 5.1]
}
df = pd.DataFrame(data)
# 找到投资回报率最高的广告活动
max_roi_index = df['投资回报率'].idxmax()
print(f"投资回报率最高的广告活动是: {df.loc[max_roi_index, '广告活动']}")

# 198-5、数据排序与筛选
import pandas as pd
# 示例数据
data = {
    '产品': ['产品X', '产品Y', '产品Z'],
    '销售额': [1000, 1500, 1200]
}
df = pd.DataFrame(data)
# 找到销售额最高的产品
max_sales_product_index = df['销售额'].idxmax()
print(f"销售额最高的产品是: {df.loc[max_sales_product_index, '产品']}")
198-6-3、结果输出
# 198、pandas.Series.idxmax方法
# 198-1、数据探索
# 销售额最高的日期是: 2024-01-04

# 198-2、性能分析
# 最高CPU使用率的时间点是: 03:00

# 198-3、异常检测
# 最高温度的时间点是: 2024-07-04

# 198-4、决策支持
# 投资回报率最高的广告活动是: 活动D

# 198-5、数据排序与筛选
# 销售额最高的产品是: 产品Y
199、pandas.Series.idxmin方法
199-1、语法
# 199、pandas.Series.idxmin方法
pandas.Series.idxmin(axis=0, skipna=True, *args, **kwargs)
Return the row label of the minimum value.

If multiple values equal the minimum, the first row label with that value is returned.

Parameters:
axis
{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.

skipna
bool, default True
Exclude NA/null values. If the entire Series is NA, the result will be NA.

*args, **kwargs
Additional arguments and keywords have no effect but might be accepted for compatibility with NumPy.

Returns:
Index
Label of the minimum value.

Raises:
ValueError
If the Series is empty.
199-2、参数

199-2-1、axis(可选,默认值为0)用于指定操作的轴,通常Series只有一个轴,所以这个参数通常是默认的0。

199-2-2、skipna(可选,默认值为True)是否忽略NA/NaN值,默认是True,即忽略这些值来计算最大值的索引。

199-2-3、*args(可选)其他位置参数,为后续扩展功能做预留。

199-2-4、**kwargs(可选)其他关键字参数,为后续扩展功能做预留。

199-3、功能

        用于返回Series对象中最小值的索引的位置的方法,它可以用于快速定位最小值的索引位置。

199-4、返回值

        返回值是最小值所在的索引标签,如果Series是基于默认的整数索引,则返回的是最小值的整数位置;如果Series使用了自定义的索引标签,则返回的是对应的标签。

199-5、说明

        无

199-6、用法
199-6-1、数据准备
199-6-2、代码示例
# 199、pandas.Series.idxmin方法
# 199-1、基本用法
import pandas as pd
# 示例数据
data = pd.Series([3, 1, 4, 1, 5])
# 找到最小值的索引
min_index = data.idxmin()
print(f"最小值的索引是: {min_index}")

# 199-2、跳过NaN值
import pandas as pd
import numpy as np
# 示例数据
data = pd.Series([3, np.nan, 4, 1, 5])
# 找到最小值的索引,跳过NaN
min_index = data.idxmin()
print(f"最小值的索引是: {min_index}")

# 199-3、无有效数据
import pandas as pd
import numpy as np
# 示例数据
data = pd.Series([np.nan, np.nan, np.nan])
# 尝试找到最小值的索引
try:
    min_index = data.idxmin()
except ValueError as e:
    print(f"错误: {e}")
print(f"最小值的索引是: {min_index}")
199-6-3、结果输出
# 199、pandas.Series.idxmin方法
# 199-1、基本用法
# 最小值的索引是: 1

# 199-2、跳过NaN值
# 最小值的索引是: 3

# 199-3、无有效数据
# 最小值的索引是: nan(注:后续更新版本中,此处可能会报错)
200、pandas.Series.isin方法
200-1、语法
# 200、pandas.Series.isin方法
pandas.Series.isin(values)
Whether elements in Series are contained in values.

Return a boolean Series showing whether each element in the Series matches an element in the passed sequence of values exactly.

Parameters:
values
set or list-like
The sequence of values to test. Passing in a single string will raise a TypeError. Instead, turn a single string into a list of one element.

Returns:
Series
Series of booleans indicating if each element is in values.

Raises:
TypeError
If values is a string
200-2、参数

200-2-1、values(必须)可以是一个列表、集合、或其他可迭代对象,包含需要检查的值。

200-3、功能

        用于检查Series对象中的每个元素是否存在于给定的values列表或集合中,并返回一个布尔型的Series对象。

200-4、返回值

        返回一个布尔型的Series对象,每个布尔值表示原始Series中对应位置的元素是否存在于values中。

200-5、说明

        无

200-6、用法
200-6-1、数据准备
200-6-2、代码示例
# 200、pandas.Series.isin方法
import pandas as pd
# 示例数据
data = pd.Series(['apple', 'banana', 'cherry', 'date'])
# 检查哪些元素在给定的列表中
result = data.isin(['banana', 'date'])
print(result)
200-6-3、结果输出
# 200、pandas.Series.isin方法
# 0    False
# 1     True
# 2    False
# 3     True
# dtype: bool

二、推荐阅读

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

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

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

相关文章

【C++题解】1069. 字符图形5-星号梯形

问题&#xff1a;1069. 字符图形5-星号梯形 类型&#xff1a;嵌套循环、图形输出 题目描述&#xff1a; 打印字符图形。 输入&#xff1a; 一个整数&#xff08; 0<n<10 &#xff09;。 输出&#xff1a; 一个字符图形。 样例&#xff1a; 输入&#xff1a; 3输…

卷积神经网络(三)---案例分析

上面部分介绍了 PyTorch 中的卷积模块&#xff0c;接下来将会介绍几个卷积神经网络的案例&#xff0c;通过案例入手来介绍卷积神经网络的结构设计。 1. LeNet LeNet 是整个卷积神经网络的开山之作&#xff0c;1998年由 LeCun 提出&#xff0c;它的结构特别简单&#xff0c;我们…

看懂循环队列

循环队列的设计过程 1.循环队列2.设计循环队列的逻辑过程2.1 定义循环队列的数据结构2.2 初始化队列2.3 入队操作2.4. 出队操作2.5 判断队列状态2.5 获取队头和队尾的元素力扣相关题目完整代码 1.循环队列 循环队列是使用有限数组来模拟队列&#xff0c;与普通的队列不同的是&…

文献综述在确定先前研究中使用的方法学方法方面发挥什么作用

VersaBot一键生成文献综述 文献综述在确定先前研究中使用的方法学方法方面发挥着至关重要的作用&#xff0c;可以作为设计自己的方法论并证明其重要性的基础。就是这样; 1. 揭示现有方法&#xff1a; 通过探索与您的主题相关的研究&#xff0c;您将发现其他研究人员采用的不同…

普通人有必要学Python吗?学了之后能做什么?

目录 首先来说一下极其推荐的方向&#xff1a; 1、数据分析 2、科学计算 3、大数据框架 4、脚本开发 5、爬虫 6、Web框架 总结&#xff1a; 如果你还没有开始使用Python&#xff0c;答应我&#xff0c;把这个回答看完&#xff0c;如果你真的学习并深入使用过Python&…

锅总浅析虚拟化技术

常见的虚拟化技术有哪些&#xff1f;KVM集群解决方案有哪些&#xff1f;如何用Libvirt操作KVM组成集群&#xff1f;PVE构建虚拟化的特性和其架构又是怎样的&#xff1f;希望完本文&#xff0c;能帮您解答这些疑惑&#xff01; 一、常见虚拟化技术概述 虚拟化技术是一种通过软…

Qt 实现抽屉效果

1、实现效果和UI设计界面 2、工程目录 3、mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QToolButton> #include <QPushButton> #include <vector> using namespace std;QT_BEGIN_NAMESPACE namespace…

前后端分离开发遵循接口规范-YAPI

目前&#xff0c;网站主流开发方式是前后端分离。因此前后端必须遵循一套统一的规范&#xff0c;才能保证前后端进行正常的数据&#xff08;JSON数据格式&#xff09;请求、影响&#xff0c;这套规范即是 YAPI. 产品经理撰写原型&#xff1b; 前端或后端撰写接口文档。 YAPI…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《计及联盟合作成本的新能源场站共享储能优化配置策略》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

[Spring] MyBatis操作数据库(进阶)

&#x1f338;个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 &#x1f3f5;️热门专栏: &#x1f9ca; Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 &#x1f355; Collection与…

功能性的安全保障:输入校验

前言 在软件开发过程中&#xff0c;确保系统的安全性是至关重要的一环。它不仅关乎保护用户数据的完整性和隐私性&#xff0c;也是维护系统稳定运行的基石。我认为&#xff0c;从宏观角度审视&#xff0c;软件开发的安全性保障主要可分为两大类&#xff1a;功能性的安全性保障…

GitEval — 预测你的 GitHub 个人资料的质量

使用机器学习来预测你是否擅长编码 可直接在橱窗里购买&#xff0c;或者到文末领取优惠后购买&#xff1a; 如果你曾经申请过技术职位&#xff0c;你可能已经向公司发送了你的 GitHub 个人资料链接。此个人资料中的信息可以很好地表明你的编码能力以及是否适合团队。所有这些信…

【全国大学生电子设计竞赛】2024年C题

&#x1f970;&#x1f970;全国大学生电子设计大赛学习资料专栏已开启&#xff0c;限时免费&#xff0c;速速收藏~

Opencv画出红底白字标准中文显示框

链接&#xff1a;https://pan.baidu.com/s/1iEJKpqt-z_5yBJdenUABbA 提取码&#xff1a;uoox 先把这个文件拿了&#xff0c;这个文件是一个ttf的字体&#xff0c;用于显示中文。 核心代码&#x1f451; def cv2AddChineseText(self, img_ori, text, p1, box_color, textColo…

【JavaScript】函数声明和函数表达式的区别

文章目录 一、函数声明1. 定义方式2. 作用域提升&#xff08;Hoisting&#xff09;3. 块级作用域 二、函数表达式1. 定义方式2. 作用域提升&#xff08;Hoisting&#xff09;3. 自引用 三、其他区别1. 函数名2. 可读性和代码组织3. 使用场景 四、总结函数声明函数表达式 在Java…

昇思MindSpore学习入门-自动混合精度

混合精度&#xff08;Mix Precision&#xff09;训练是指在训练时&#xff0c;对神经网络不同的运算采用不同的数值精度的运算策略。在神经网络运算中&#xff0c;部分运算对数值精度不敏感&#xff0c;此时使用较低精度可以达到明显的加速效果&#xff08;如conv、matmul等&am…

Android 10.0 Launcher3仿ios的folder文件夹widget功能实现一

1.前言 在10.0的系统ROM开发中,在进行一些系统Launcher3定制功能开发中,需要实现folder文件夹widget的功能,由于launcher3 默认不支持folder跨行显示,所以就需要借助自定义的widget小部件功能来实现相关功能,接下来分析实现相关功能 2.Launcher3仿ios的folder文件夹widge…

【保姆级教程】免费域名注册 Cloudflare 域名解析 Ngnix端口转发

前段时间&#xff0c;带大家搞了两台云服务器&#xff1a; 玩转云服务&#xff1a;Oracle Cloud甲骨文永久免费云服务器注册及配置指南玩转云服务&#xff1a;手把手带你薅一台腾讯云服务器&#xff0c;公网 IP 基于这两台云服务器&#xff0c;我们玩转了很多有趣的开源项目&…

ElasticSearch(八)— 聚集查询1

一、总概 聚集查询(Aggregation)提供了针对多条文档的统计运算功能&#xff0c;它不是针对文档本身内容的检索&#xff0c;而是要将它们聚合到一起运算某些方面的特征值。 聚集查询与 SQL 语言中的聚集函数非常像&#xff0c;聚集函数在 Elasticsearch 中相当于是聚集查询的一…

掌控数据流的智能仪表板:Redpanda Console

Redpanda Console&#xff1a; 一站式管理&#xff0c;让数据流尽在掌控之中。- 精选真开源&#xff0c;释放新价值。 概览 Redpanda Console&#xff0c;是一款创新的Web界面工具&#xff0c;专为简化Kafka和Redpanda数据流的监控与管理而设计。它以用户友好的交互方式&#…