加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 熊猫数据框:检查数据是否单调递减

发布时间:2020-12-16 23:45:34 所属栏目:Python 来源:网络整理
导读:我有一个这样的熊猫数据框: Balance Jan Feb Mar Apr0 9.724135 0.389376 0.464451 0.229964 0.6915041 1.114782 0.838406 0.679096 0.185135 0.1438832 7.613946 0.960876 0.220274 0.788265 0.6064023 0.144517 0.800086 0.287874 0.223539 0.2060024 1.3
我有一个这样的熊猫数据框:
Balance       Jan       Feb       Mar       Apr
0  9.724135  0.389376  0.464451  0.229964  0.691504
1  1.114782  0.838406  0.679096  0.185135  0.143883
2  7.613946  0.960876  0.220274  0.788265  0.606402
3  0.144517  0.800086  0.287874  0.223539  0.206002
4  1.332838  0.430812  0.939402  0.045262  0.388466

我想通过弄清楚从1月到4月的值是单调递减(如索引1和3中的行)是否分组,然后将每个组的余额加起来,即最终我想要最终得到两个数字(1.259299为减少的时间序列,其他18.670919).

我想如果我可以添加一列“正在减少”,包括布尔值,我可以使用大熊猫的groupby做这些金额,但是如何创建这个列?

谢谢,
安妮

解决方法

您可以使用algos中的一个isonmon功能:
In [10]: months = ['Jan','Feb','Mar','Apr']

In [11]: df.loc[:,months].apply(lambda x: pd.algos.is_monotonic_float64(-x)[0],axis=1)
Out[11]:
0    False
1     True
2    False
3     True
4    False
dtype: bool

is_monotonic检查数组是否减少,因此是-x.value.

(这似乎比Tom的解决方案快得多,甚至使用提供的小型DataFrame).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读