当前位置: 首页 > news >正文

pandas 笔记:shift

用于将数据系列或数据框中的数据按指定的位置移动。这对于某些时间序列分析特别有用,例如计算数据的变化量或滞后值

1 对Series/DataFrame数据进行移动

1.0 原始数据

import pandas as pd
import numpy as np
df1=pd.DataFrame(np.arange(12).reshape(3,4),columns=['a','b','c','d'],index=['A','B','C'])
df1'''a	b	c	d
A	0	1	2	3
B	4	5	6	7
C	8	9	10	11
'''

1.1  正数:向下移动,负数:向上移动

df1.shift(1)
'''a	b	c	d
A	NaN	NaN	NaN	NaN
B	0.0	1.0	2.0	3.0
C	4.0	5.0	6.0	7.0
'''df1.shift(-2)
'''a	b	c	d
A	8.0	9.0	10.011.0
B	NaN	NaN	NaN	NaN
C	NaN	NaN	NaN	NaN
'''

1.2 axis 沿着那个轴shift(默认0)

df1.shift(-2,axis=1)
'''a	b	c	d
A	2	3	NaN	NaN
B	6	7	NaN	NaN
C	10	11	NaN	NaN
'''

1.3 fill_value (NaN 用什么填充)

df1.shift(-2,axis=1,fill_value='-1')'''a	b	c	d
A	2	3	-1	-1
B	6	7	-1	-1
C	10	11	-1	-1
'''

1.4 对单列进行shift

df1['a'].shift(-2,fill_value='-1')
'''
A     8
B    -1
C    -1
Name: a, dtype: object
'''

2 DateTime shift

import pandas as pddf=pd.date_range(start='2023-09-13 10:00:00',end='2023-09-13 18:00:00',freq='1h')
df
'''
DatetimeIndex(['2023-09-13 10:00:00', '2023-09-13 11:00:00','2023-09-13 12:00:00', '2023-09-13 13:00:00','2023-09-13 14:00:00', '2023-09-13 15:00:00','2023-09-13 16:00:00', '2023-09-13 17:00:00','2023-09-13 18:00:00'],dtype='datetime64[ns]', freq='H')
'''

默认按照dataframe的frequency 进行shift

df.shift(2,)
'''
DatetimeIndex(['2023-09-13 12:00:00', '2023-09-13 13:00:00','2023-09-13 14:00:00', '2023-09-13 15:00:00','2023-09-13 16:00:00', '2023-09-13 17:00:00','2023-09-13 18:00:00', '2023-09-13 19:00:00','2023-09-13 20:00:00'],dtype='datetime64[ns]', freq='H')
'''

freq 手动指定frequency

df.shift(2,freq='1min')
'''
DatetimeIndex(['2023-09-13 10:02:00', '2023-09-13 11:02:00','2023-09-13 12:02:00', '2023-09-13 13:02:00','2023-09-13 14:02:00', '2023-09-13 15:02:00','2023-09-13 16:02:00', '2023-09-13 17:02:00','2023-09-13 18:02:00'],dtype='datetime64[ns]', freq='H')
'''

相关文章:

pandas 笔记:shift

用于将数据系列或数据框中的数据按指定的位置移动。这对于某些时间序列分析特别有用,例如计算数据的变化量或滞后值 1 对Series/DataFrame数据进行移动 1.0 原始数据 import pandas as pd import numpy as np df1pd.DataFrame(np.arange(12).reshape(3,4),column…...

解密(2023寒假每日一题 20)

给定一个正整数 k k k ,有 k k k 次询问,每次给定三个正整数 n i , e i , d i n_i,e_i,d_i ni​,ei​,di​ ,求两个正整数 p i , q i p_i,q_i pi​,qi​ ,使 n i p i q i , e i d i ( p i − 1 ) ( q i − 1 …...

如何实现Web应用、网站状态的监控?

如何实现Web应用、网站状态的监控? 关键词:网站监控,服务器监控,页面性能监控,用户体验监控本文通过代码分析、网站应用介绍网站状态监控的方式下文主要分为网站应用、技术实现两部分 一、网站应用 现在网络上已经存在一些Web网站监控的服务&#xff…...

手撕排序之堆排序

一、概念: 什么是逻辑结构、物理结构? 逻辑结构:是我们自己想象出来的,就像内存中不存在一个真正的树 物理结构(存储结构):实际上在内存中存储的形式。 堆的逻辑结构是一颗完全二叉树 堆的物理结构是一个数组 之…...

【奇想星球】重磅!我们的AIGC共创社区平台上线了!

文章目录 01 前言功能模块 02 相识缘起连接价值平台优势 03 奇想星球04 我们做了什么时间线 05 初心愿景06 可爱的小伙伴们后续开发及招募计划 07 结语 公众号原文链接 01 前言 2023年9月10日,我们的平台网站上线了! 奇想星球 | AIGC共创社区平台。网站地…...

2023年数维杯数学建模B题节能列车运行控制优化策略求解全过程文档及程序

2023年数维杯数学建模 B题 节能列车运行控制优化策略 原题再现: 在城市交通电气化进程快速推进的同时,与之相应的能耗增长和负面效应也在迅速增加。城市轨道交通中的快速增长的能耗给城轨交通的可持续性发展带来负担。2018 年,北京、上海、…...

Python--测试代码

目录 1、使用pip安装pytest 1.1 更新pip 1.2 安装putest 2、测试函数 2.1 单元测试和测试用例 2.2 可通过的测试 2.3 运行测试 2.4 未通过的测试 2.5 解决测试未通过 2.6 添加新测试 3、测试类 3.1 各种断言 3.2 一个测试的类 3.3 测试AnonymousSurvey类 3.4 使…...

CentOS 系列版本搭建 Nginx 服务

目录 Nginx 介绍 Nginx 安装 CentOS 系列版本 Nginx 删除 CentOS 系列版本 Nginx 介绍 Nginx 是一个广泛使用的Web服务器和反向代理服务器。 反向代理和负载均衡:Nginx支持反向代理和负载均衡,能够分发请求到多个后端服务器,提高了可用性…...

目标检测YOLO实战应用案例100讲-基于机器视觉的输电线路小目标检测和缺 陷识别(下)

目录 3.3.1 输电线路所有尺寸目标检测性能对比 3.3.2 输电线路小目标检测性能对比...

argparse--命令行参数解析库

文章目录 位置参数help ->描述信息type -> 被转换的类型 可选参数action ->动作基本类型 (store_true)短选项 结合位置参数和可选参数choiceaction ->动作基本类型 (count)default -> 默认值 argparse模块使编写用户友好的命令行变得容易 接口。程序定义了它需要…...

elasticsearch4-文档操作

个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:三人行,必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》,SpringCloud…...

阿里云服务器上CentOS 7.6使用rpm包安装MySQL 8.0.31

我这里下载的是最新版本,需要到MySQL官网最新版本下载地址。 要是想要下载以前的版本需要到MySQL以前版本网址中。 1)先使用wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar(这个网址现在已经不…...

redis未授权漏洞

redis未授权漏洞是什么? Redis 默认情况下会绑定在 0.0.0.0:6379,这样将会将 Redis 服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取 Redis的数据 它有什么危…...

详解3dMax中渲染线框的两种简单方法

在3dMax中渲染线框是你在某个时候想要完成的事情,例如为了演示分解步骤,或是仅仅为了在模型上创建线框覆盖的独特效果。为三维模型渲染线框最常见的原因是能够在模型上显示干净的拓扑。这篇文章将带你了解在3dMax中渲染三维模型线框的两种最常见、最简单…...

Git - Git 工作流程

文章目录 Git WorkFlow图解小结 Git WorkFlow Git Flow是一种基于Git的工作流程,确实利用了Git作为分布式版本控制系统的优势。 本地代码库 (Local Repository): 每个开发者都维护自己的本地代码库,这是Git分布式性质的体现。本地代码库包含了完整的项目…...

ARM如何利用PMU的Cycle Counter(时钟周期)来计算出CPU的时钟频率

本章将学习如何利用ARM PMU的Cycle Counter,来计算出CPU的时钟周期,从而计算出CPU的时钟频率。在介绍计算方法前,有必要先介绍下什么是时钟周期、机器周期以及指令周期。 如何计算出CPU的时钟频率 一,时钟周期,机器周…...

56资源网系统源码搭建知识付费-含源码

内置了上万条数据资源 大致功能: 支持免费与付费(增加了插件付费插件)支持侧边栏支持添加各类型广告(你所能用到的基本都有).支持网盘下载模块支持所有页面自定义支持文章页三方跳转支持添加页面支持自定义采集&#…...

【运营版】仿东郊到家上门服务app小程序开发同城美容家政预约推拿足浴SPA技师派单源码

套餐一:源码=小程序端+公众号端+APP端=280元 套餐二:全包服务 包服务器+域名+APP+认证小程序+H5+PC=1000元 后端:系统后端使用PHP语言开发 前端:前端使用uniapp进行前后端分离开发 用户端功能模块:技师选择 预约服务 优惠券 订单 技师服务...

uniapp项目实践总结(十五)使用websocket实现简易聊天室

导语:在一些社交软件中,经常可以看到各种聊天室的界面,接下来就总结一下聊天室的原理个实现方法,最后做一个简易的聊天室,包括登录/登出、加入/离开房间、发送接收聊天消息等功能。 目录 准备工作原理分析组件实现实战演练服务端搭建案例展示准备工作 在pages/index文件夹…...

论文阅读之Learning and Generalization of Motor Skills by Learning from Demonstration

论文阅读其实就是用自己的话讲一遍,然后理解其中的方法 0、论文基本信息 为什么阅读此篇论文:因为它是DMP经典论文,被引多次,学史可以明智,了解最初机理。 论文题目:Learning and Generalization of Moto…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件&#xff0c;这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下&#xff0c;实现高效测试与快速迭代&#xff1f;这一命题正考验着…...