pandas初学记录之shift()——计算时间索引的timedelta

本文介绍了如何使用pandas的shift()函数计算时间索引的timedelta,探讨了在处理DataFrame时避免使用iterrows(),并分享了一种通过复制索引创建新列再进行shift操作的方法来实现行间索引差值的计算。
摘要由CSDN通过智能技术生成

小技巧:复制一个表格的部分目录列,自动带索引:

df2 = df[['close','long_break']].head(20).copy()

得到如下df2:

	     	 		close	long_break
datetime		
2012-06-05 18:30:00	1810.0	False
2012-06-05 19:00:00	1805.0	False
2012-06-06 13:30:00	1812.0	False
2012-06-06 14:00:00	1814.0	False
2012-06-06 14:15:00	1814.0	False
2012-06-06 15:00:00	1812.0	False
2012-06-06 15:30:00	1811.0	False
2012-06-06 18:00:00	1810.0	False
2012-06-06 18:30:00	1816.0	True
2012-06-06 19:00:00	1816.0	True

想得到当前行与前一行的索引差值,但是不想用iterrows,那样应该不如适量运算快(不装逼,我现在理解的矢量运算就是列与列,行与行的直接数学运算,不知对否)。
所以想使用shift对下移以为,然后index - index.shift(1),但是报错,非得要我填入freq(频率的意思参数,好像datetimeindex使用shift函数必须要有fre

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值