【问题标题】:where condition is met, get last row pandas在满足条件的地方,获取最后一行 pandas
【发布时间】:2018-09-27 20:04:58
【问题描述】:
+------------+----+----+----+-----+----+----+----+-----+
|     WS     | 1  | 2  | 3  |  4  | 1  | 2  | 3  |  4  |
+------------+----+----+----+-----+----+----+----+-----+
| w1         |  0 |  0 |  0 |  50 |  0 |  0 |  0 |  50 |
| w2         |  0 | 30 |  0 |   0 |  0 | 30 |  0 |   0 |
| d1         |  0 |  0 |  0 |   0 |  0 |  0 |  0 |   0 |
| d2         | 62 |  0 |  0 |   0 | 62 |  0 |  0 |   0 |
| Total      | 62 | 30 |  0 |  50 | 62 | 30 |  0 |  50 |
| Cumulative | 62 | 92 | 92 | 142 | 62 | 92 | 92 | 142 |
+------------+----+----+----+-----+----+----+----+-----+

根据列值大于0的情况,我想得到行“累积”的对应值。

如图所示,当50 > 0时,我想得到对应的“累积”值142。

+------------+----+----+---+-----+----+----+---+-----+
|     WS     | 1  | 2  | 3 |  4  | 1  | 2  | 3 |  4  |
+------------+----+----+---+-----+----+----+---+-----+
| Cumulative | 62 | 92 | 0 | 142 | 62 | 92 | 0 | 142 |
+------------+----+----+---+-----+----+----+---+-----+

我尝试过 pandas loc 和 iloc,但它们无法执行我想要的操作。

谢谢你!

【问题讨论】:

  • 将您的数据框发布为文本,而不是图像。
  • 一些代码也不错。
  • 希望问题描述现在更好。

标签: python pandas indexing


【解决方案1】:

您当然应该更好地设计您的问题,但无论如何,这里有一个可能的解决方案:

假设 df 是您的 DataFrame:

df[df>5].loc['Cumulative'].dropna()

【讨论】:

  • 感谢您的建议。也许我编辑的问题描述更清楚。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-03
  • 1970-01-01
  • 2018-10-06
  • 2019-07-05
  • 2022-12-06
  • 2013-08-14
相关资源
最近更新 更多