【发布时间】:2019-02-09 21:25:29
【问题描述】:
我有一个带有布尔条目的熊猫系列。我想获取值为True 的索引列表。
例如输入pd.Series([True, False, True, True, False, False, False, True])
应该产生输出[0,2,3,7]。
我可以通过列表理解来做到这一点,但是有什么更简洁或更快的方法吗?
【问题讨论】:
-
更好的测试用例是
s = pd.Series([True, False, True, True, False, False, False, True], index=list('ABCDEFGH'))。预期输出:Index(['A', 'C', 'D', 'H'], ...)。由于某些解决方案(尤其是所有 np 函数)会删除索引并使用自动编号索引。 -
...如果我们有一个命名索引,通常不希望删除它。
标签: python pandas boolean series boolean-indexing