数据分析-Pandas序列滑动窗口配置参数

数据分析-Pandas序列滑动窗口配置参数

数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律?

数据表,时间序列数据在数据分析建模中很常见,例如天气预报,空气状态监测,股票交易等金融场景。数据分析过程中重新调整,重塑数据表是很重要的技巧,此处选择Titanic数据,以及巴黎、伦敦欧洲城市空气质量监测 N O 2 NO_2 NO2数据作为样例。

数据分析

数据分析-Pandas如何转换产生新列

数据分析-Pandas如何统计数据概况

数据分析-Pandas如何轻松处理时间序列数据

数据分析-Pandas如何选择数据子集

数据分析-Pandas如何重塑数据表-CSDN博客

本文用到的样例数据:

Titanic数据

空气质量监测 N O 2 NO_2 NO2数据

样例代码:

源代码参考 Pandas如何重塑数据表

源代码参考 python数据分析-数据表读写到pandas

导入关键模块

import pandas as pd
import numpy as np
import matplotlib.pyplot as pltplt.close("all")

时间序列,有时候需要观察一个窗口下的数据统计,比如,股市中的移动平均曲线,气象监测数据的移动平均。滑动窗口可以过滤掉不必要的高频信号。

窗口居中

通用滑动窗口,默认情况下,标签设置在窗口的右边缘,但可以使用关键字,以便可以在中心设置标签。center

times = ['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-04', '2020-01-05', '2020-01-06', '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10']s = pd.Series(range(10), index=pd.DatetimeIndex(times))
print(s)ma = s.rolling(window=5).mean()
print (ma)ma_c = s.rolling(window=5, center=True).mean()
print (ma_c)

为了方便理解,采用连续整数数值作为序列。可以看出,数值序列的值是不变的,改变的是输出数值的位置,index

# s 
2020-01-01    0
2020-01-02    1
2020-01-03    2
2020-01-04    3
2020-01-05    4
2020-01-06    5
2020-01-07    6
2020-01-08    7
2020-01-09    8
2020-01-10    9
dtype: int64# ma
2020-01-01    NaN
2020-01-02    NaN
2020-01-03    NaN
2020-01-04    NaN
2020-01-05    2.0 # 第一个数值位置
2020-01-06    3.0
2020-01-07    4.0
2020-01-08    5.0
2020-01-09    6.0
2020-01-10    7.0 # 最后一个数值位置# ma_c
2020-01-01    NaN
2020-01-02    NaN
2020-01-03    2.0 # 第一个数值位置
2020-01-04    3.0
2020-01-05    4.0
2020-01-06    5.0
2020-01-07    6.0
2020-01-08    7.0 # 最后一个数值位置
2020-01-09    NaN
2020-01-10    NaN

窗口端点的闭合

可以使用以下参数指定在滚动窗口计算中包含间隔端点:closed

含义
'right'右端点闭合
'left'左端点闭合
'both'两个端点闭合
'neither'两个端点不闭合
times = ['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-04', '2020-01-05', '2020-01-06', '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10']df = pd.Dataframe({"x" : range(10)}, index=pd.DatetimeIndex(times))
print(df)df["right"] = df.rolling(3, closed="right").x.sum()  # defaultdf["both"] = df.rolling(3, closed="both").x.sum()df["left"] = df.rolling(3, closed="left").x.sum()df["neither"] = df.rolling(3, closed="neither").x.sum()

以时间为移动窗口的操作结果如下,可以看出在边缘值计算方式:

            x  right  both  left  neither
2020-01-01  0    0.0   0.0   NaN      NaN
2020-01-02  1    1.0   1.0   0.0      0.0
2020-01-03  2    3.0   3.0   1.0      1.0
2020-01-04  3    6.0   6.0   3.0      3.0
2020-01-05  4    9.0  10.0   6.0      5.0
2020-01-06  5   12.0  14.0   9.0      7.0
2020-01-07  6   15.0  18.0  12.0      9.0
2020-01-08  7   18.0  22.0  15.0     11.0
2020-01-09  8   21.0  26.0  18.0     13.0
2020-01-10  9   24.0  30.0  21.0     15.0

为了更好理解该参数的作用,以上述的序列x为例,当3D滑动窗口时,截断如下子序列:

[1, 2, 3, 4 ]

closed right : 2 + 3 + 4 = 9 ( 也就是左开,右闭,其中1 不纳入计算)

closed left : 1 + 2 + 3 = 6 (也就是左闭,右开,其中 4 不纳入计算)

closed both : 1 + 2 + 3 + 4 = 10 (也就是左闭,右闭,1,4 都纳入计算)

closed neither : 2 + 3 = 5 (也就是左开,右开,1, 4都不纳入计算)

在这里插入图片描述

以上代码只是一个简单示例,示例代码中的表达式可以根据实际问题进行修改。

后面介绍下其他的展示形式。

觉得有用 收藏 收藏 收藏

点个赞 点个赞 点个赞

End

GPT专栏文章:

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

大模型查询工具助手之股票免费查询接口

GPT实战系列-简单聊聊LangChain

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-ChatGLM2模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客

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

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

相关文章

初探Springboot 参数校验

文章目录 前言Bean Validation注解 实践出真知异常处理 总结 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 前言 工作中我们经常会遇到验证字段是否必填,或者字段的值是否…

极客早报第3期:罗斯否认插足凯特王妃婚姻;清明放假调休3天;国产伟哥去年销售近13亿

一分钟速览新闻点! 每日简报 罗斯否认插足凯特王妃婚姻清明放假调休3天国产伟哥去年销售近13亿男子持台球杆殴打2名女店员被抓今日春分淀粉肠小王子带货日销售额涨超10倍[高中生被打伤下体休学 邯郸通报](https://www.baidu.com/s?wd高中生被打伤下体休学 邯郸通报…

ARM Cortex-R82处理器在压缩SSD场景的应用

ScaleFlux公司宣布在其下一代企业级SSD控制器产品线中采用Arm公司的Cortex-R82处理器。这一决策旨在应对企业环境中对高带宽存储解决方案日益增长的需求,并通过提升数据传输速度和效率来满足市场期待。 Arm Cortex-R82处理器是Arm公司迄今为止性能最强的实时处理器…

STC 51单片机烧录程序遇到一直检测单片机的问题

准备工作 一,需要一个USB-TTL的下载器 ,并安装好对应的驱动程序 二、对应的下载软件,stc软件需要官方的软件(最好是最新的,个人遇到旧的下载软件出现问题) 几种出现一直检测的原因 下载软件图标&#xf…

Unbuntu20.04 git push和pull相关问题

文章目录 Unbuntu20.04 git push和pull使用1.下载[Git工具包](https://git-scm.com/downloads)2.建立本地仓库3.将本地仓库与github远程仓库关联4.将本地仓库文件上传到github远程仓…

J4G企业通讯ip电话 sip对讲主机 停车场对讲主机

J4G企业通讯ip电话 sip对讲主机 停车场对讲主机 SV-J4G 是一款企业级彩屏网络电话,具有高清语音,320x240 2.8英寸彩屏,支持千兆以太网,12个SIP账号,支持PoE供电,支持外接EHS无线耳机,三方电话会…

Grok-1:参数量最大的开源大语言模型

Grok-1:参数量最大的开源大语言模型 项目简介 由马斯克领衔的大型模型企业 xAI 正式公布了一项重要动作:开源了一个拥有 3140 亿参数的混合专家模型(MoE)「Grok-1」,连同其模型权重和网络架构一并公开。 此举将 Gro…

清华大模型ChatGLM3部署初体验

正文共:1555 字 17 图,预估阅读时间:2 分钟 ChatGLM3是智谱AI和清华大学KEG实验室联合发布的对话预训练模型。该项目在GitHub的工程链接为: https://github.com/THUDM/ChatGLM3 在人工智能领域中,类似“3B”、“6B”、…

C++--STL标准库

一.模板 模板是C中泛型编程的基础。一个模板就是一个创建类或函数的蓝图。 生活中常见的模板有: 编写一个比较两个值大小的函数,如果第一个值大于第二个值返回大于0的数字,两个值相等返回0,第一个值小于第二个值返回小于0的数字。 我们可以根据值类型定义多个函数&…

Go语言实战:深入掌握标准库flag的强大用法

Go语言实战:深入掌握标准库flag的强大用法 引言flag库基础命令行参数的基本概念使用flag库定义和解析命令行参数处理非选项命令行参数小结 高级用法自定义Flag的解析命令行参数的分组和嵌套小结 实战技巧组织复杂命令行应用的参数错误处理和用户帮助信息调试命令行应…

php基于人工智能预警突发疾病系统python-flask-django-nodejs

根据现实需要,此系统我们设计出一下功能,主要有以下功能模板。 前台功能:首页、医生、疾病知识、后台管理。 医生功能:首页、个人中心、咨询信息管理、疾病预警管理、高血压管理、糖尿病管理。 用户功能:首页、个人中心…

数据分析能力模型分析与展示

具体内容: 专业素质 专业素质-01 数据处理 能力定义•能通过各种数据处理工具及数据处理方法,对内外部海量数据进行清洗和运用,提供统一数据标准,为业务分析做好数据支持工作。 L1•掌握一…

SinoDB客户端工具dbaccess

类似Oracle的客户端工具sqlplus,Mysql的客户端工具mysql,SinoDB数据库也有自带的命令行客户端工具dbaccess。 dbaccess 识别用户输入,将用户输入的 SQL 语句打包发送给 SinoDB 数据库服务器执行,然后接收服务器的执行结果&#xf…

Leet code 238 除自身以外的数组的乘积

解题思路 以示例1为例 创建两个数组dp(统计该位置之的所有乘积) bp(统计该位置之后的所有乘积) 比如 1 2 3 4 3的dp应该等于 1*2 bp应该等于 4 这样 dp* bp就为该位置的答案 分别计算出每个位置前后的乘积然后放入数组 然…

3.leetcode---验证回文串(Java版)

链接: https://leetcode.cn/problems/XltzEq/description/ 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s “A man, a plan…

2022年安徽省职业院校技能大赛 (高职组)“云计算”赛项样卷

#需要资源或有问题的,可私博主!!! #需要资源或有问题的,可私博主!!! #需要资源或有问题的,可私博主!!! 第一场次:私有云(5…

【Linux】自动化构建工具-make/Makefile

个人主页 : zxctscl 如有转载请先通知 文章目录 1. 前言2. 认识make/Makefile3. 了解make/Makefile原理3.1 依赖关系和依赖方法3.2 make检测的顺序3.3 PHONY:XXX 4. makefile内置符号 1. 前言 在上一篇中已经了解了【Linux】编译器-gcc/g使用,这次来一起…

具有功耗低、触控灵敏度高、抗干扰能力强等功能的单键电容式触控芯片——TS223B,适用于小家电、电子玩具等产品

•应用领域• 适用于小家电、电子玩具、智能物联网等各种触控产品方案。 •功能介绍• 这款推出的单键电容式触控芯片TS223B具有功耗低、触控灵敏度高、抗干扰能力强等众多优势,输出方式包括直接输出、电平翻转输出,并且输出的初始状态可以配置&#xff…

Outlook邮箱后缀是什么?如何改邮箱后缀?

Outlook邮箱后缀可以更改吗?微软有哪些后缀的邮箱? 对于许多刚接触Outlook邮箱的新手来说,了解Outlook邮箱后缀是必不可少的一步。那么,Outlook邮箱后缀究竟是什么呢?接下来,AokSend就来详细探讨一下这个问…

SSD203D高性能HDMI投影仪方案

一、方案描述: SSD203D是高度集成的高性能HDMI投影仪解决方案,主芯片为ARM Cortex A7,dule core,1.2GHz;内置DDR3,1Gb;支持H.264/H.265解码;支持JPEG基线编码;支持2D图形引擎;支持HDMI输出最高可达1920x1080/1920x120030fps ;支持SPI-Nor/Nand Flash;Built-in RTC;…