我有以下DataFrame:
Date A
2015-01-01 10
2015-01-02 14
2015-01-05 NaN
2015-01-06 NaN
2015-01-07 5
2015-01-10 1
2015-01-11 NaN
2015-01-12 21
2015-01-14 13
并且我希望只有当这两个值相邻且没有被NaN分隔时,才能获得数据帧中pct更改的数据帧.
即我想这样:
Date A
2015-01-02 0.2857
2015-01-10 -0.8
2015-01-14 -0.38
但是,如果我这样做:df.pct_change()它将返回14-01到201-01-07之间的pct变化
解决方法:
使用pct_change和shift:
df.pct_change()[df.shift(1).notnull()].dropna()
输出:
A
Date
2015-01-02 0.400000
2015-01-10 -0.800000
2015-01-14 -0.380952
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。