【问题标题】:Pandas column means comparisonsPandas 列表示比较
【发布时间】:2020-12-02 23:52:12
【问题描述】:

在 Pandas 中,我喜欢将列中最后 100 个值的平均值与整个列的平均值进行比较,基本上是这些值: value_x = df[['a','b']].tail(100).mean()value_y = df[['a','b']].mean() 其中“a”列是真/假类型的标识。 现在我有value_avalue_b,但不是我想要的格式。

下一部分也是如此:在数据中,我想对“a”列中的值进行分组,所以它看起来像这样: value_x2 = df[['a','b']].tail(100).groupby(['a']).mean()value_y2 = df[['a','b']].groupby(['a']).mean()

从中我可以得到这样的“价值”:value_x3 = value_x2.loc['a_ID1']value_y3 = value_y2.loc['a_ID1']

我的问题是我无法比较这些值,如果我这样做了

if value_x3 > value_y3: print('aaa') else: print('bbb')

我得到 ValueError:Series 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。

如何将值转换为正确的格式? 谢谢。

【问题讨论】:

    标签: python pandas pandas-groupby mean


    【解决方案1】:

    好的,我自己找到了答案。 我没有使用前面提到的方式,而是使用更简单的方式:df[df['a_ID1']=='ID1'].b.mean().tail(100) 相同

    如果您有更好的想法,请分享。 谢谢。

    【讨论】:

      猜你喜欢
      • 2020-08-07
      • 2018-11-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2015-02-13
      • 2023-01-11
      • 2023-01-02
      相关资源
      最近更新 更多