python中shift_Pandas DataFrame.shift()用法示例

本文概述

如果要移动列或从DataFrame中减去前一个行值所对应的列值, 则可以使用shift()函数来实现。它由一个称为period的标量参数组成, 该参数负责显示要在所需轴上进行的平移次数。它还能够处理时间序列数据。

句法

DataFrame.shift(periods=1, freq=None, axis=0)

参数

周期:它由一个可以为正或为负的整数组成。它定义了要移动的周期数。

freq:可以与DateOffset, tseries模块, str或time规则(例如’EOM’)一起使用。

轴:0用于移动索引, 而1用于移动列。

fill_value:用于填充新丢失的值。

Return

它返回DataFrame的移位副本。

示例1:下面的示例演示shift()的工作。

import pandas as pd

info= pd.DataFrame({'a_data': [45, 28, 39, 32, 18], 'b_data': [26, 37, 41, 35, 45], 'c_data': [22, 19, 11, 25, 16]})

info.shift(periods=2)

输出

a_data b_data c_data

0 NaN NaN NaN

1 NaN NaN NaN

2 45.0 26.0 22.0

3 28.0 37.0 19.0

4 39.0 41.0 11.0

示例2:该示例显示如何使用fill_value填充DataFrame中的缺失值。

import pandas as pd

info= pd.DataFrame({'a_data': [45, 28, 39, 32, 18], 'b_data': [26, 38, 41, 35, 45], 'c_data': [22, 19, 11, 25, 16]})

info.shift(periods=2)

info.shift(periods=2, axis=1, fill_value= 70)

输出

a_data b_data c_data

0 70 70 45

1 70 70 28

2 70 70 39

3 70 70 32

4 70 70 18

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值