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

前端之家收集整理的这篇文章主要介绍了python – 熊猫数据框:检查数据是否单调递减前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个这样的熊猫数据框:
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).

原文链接:https://www.f2er.com/python/185540.html

猜你在找的Python相关文章