python – 如何使用循环将行除以前一行的内容
发布时间:2020-12-20 11:05:22 所属栏目:Python 来源:网络整理
导读:使用pandas DataFrame,我想取每个第i行并将其除以第i-1行.我想使用矢量化(即,不用于循环). 例如如果我有以下DataFrame: 1 10 2 20 8 160 32 480 我最终会: 1 10 2 2 4 8 4 3 注:除法运算使用旧表值,而不是更新的表值. 附:抱歉格式不好! 解决方法 使用,d
使用pandas DataFrame,我想取每个第i行并将其除以第i-1行.我想使用矢量化(即,不用于循环).
例如如果我有以下DataFrame: 1 10 2 20 8 160 32 480 我最终会: 1 10 2 2 4 8 4 3 注:除法运算使用旧表值,而不是更新的表值. 附:抱歉格式不好! 解决方法
使用,div,shift和fillna:
df.div(df.shift(1)).fillna(df).astype(int) 输出: A B 0 1 10 1 2 2 2 4 8 3 4 3 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |