千家信息网

pandas如何使用DataFrame.shift()函数

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关pandas如何使用DataFrame.shift()函数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。操作pandas DataFra
千家信息网最后更新 2026年11月02日pandas如何使用DataFrame.shift()函数

这篇文章将为大家详细讲解有关pandas如何使用DataFrame.shift()函数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

操作

pandas DataFrame.shift()函数可以把数据移动指定的位数

period参数指定移动的步幅,可以为正为负.axis指定移动的轴,1为行,0为列.

eg: 有这样一个DataFrame数据:

import pandas as pddata1 = pd.DataFrame({    'a': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],    'b': [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]})print data1   a  b0  0  91  1  82  2  73  3  64  4  55  5  46  6  37  7  28  8  19  9  0

如果想让 a和b的数据都往下移动一位:

data2 = data1.shift(axis=0)print data2     a    b0  NaN  NaN1  0.0  9.02  1.0  8.03  2.0  7.04  3.0  6.05  4.0  5.06  5.0  4.07  6.0  3.08  7.0  2.09  8.0  1.0

如果是在行上往右移动一位:

data3 = data1.shift(axis=1)print data3    a    b0 NaN  0.01 NaN  1.02 NaN  2.03 NaN  3.04 NaN  4.05 NaN  5.06 NaN  6.07 NaN  7.08 NaN  8.09 NaN  9.0

如果想往上或者往左移动,可以指定(periods=-1):

data4 = data1.shift(periods=-1, axis=0)print data4     a    b0  1.0  8.01  2.0  7.02  3.0  6.03  4.0  5.04  5.0  4.05  6.0  3.06  7.0  2.07  8.0  1.08  9.0  0.09  NaN  NaN

一个例子:

这里有一组某车站各个小时的总进站人数和总出站人数的数据:

entries_and_exits = pd.DataFrame({    'ENTRIESn': [3144312, 3144335, 3144353, 3144424, 3144594,                 3144808, 3144895, 3144905, 3144941, 3145094],    'EXITSn': [1088151, 1088159, 1088177, 1088231, 1088275,               1088317, 1088328, 1088331, 1088420, 1088753]})

要求计算每个小时该车站进出站人数

思路: 把第n+1小时的总人数-第n小时的总人数,就是这个小时里的进出站人数

entries_and_exits_hourly = entries_and_exits - entries_and_exits.shift(axis=0)print(entries_and_exits_hourly.fillna(0))   #最后用0来填补NaN   ENTRIESn  EXITSn0       0.0     0.01      23.0     8.02      18.0    18.03      71.0    54.04     170.0    44.05     214.0    42.06      87.0    11.07      10.0     3.08      36.0    89.09     153.0   333.0

关于"pandas如何使用DataFrame.shift()函数"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

人数 移动 小时 数据 函数 篇文章 更多 不错 实用 位数 例子 内容 参数 就是 思路 文章 是在 步幅 知识 车站 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 湖南永感互联网科技有限公司 厦门中拓互联网络科技有限公司 互联网中国科技 北京互联网科技 上海致骋互联网科技 互联网科技创新企业排名 恒生科技互联网指数分析 老年人脱离互联网科技的作文 深圳国际航运科技和互联网 互联网科技革命什么开始 新兴科技互联网创新大赛颁奖典礼 996高科技互联网公司 爱医互联网络科技 合肥互联网科技公司公章图片 智帮互联网科技公司最近动向 广州百诚互联网科技有限公司官网 互联网科技数字货币 郑州欣桑互联网科技有限公司 科技互联网经济论坛 科技互联网公司两年变化 浩特互联网科技 互联网金融科技平台 互联网科技logo设计 美国互联网前沿科技 移动互联网年度科技创新 互联网时代科技型公司的机会 互联网领先科技活动 伍佰万互联网科技是干嘛的 广州全民伙伴互联网科技有限公司 武汉亿视互联网科技有限公司
0