如何从pandas数据框中找到与数组相同的行索引?

时间:2019-06-03 10:56:18

标签: pandas dataframe indexing

我想从pandas数据框中找到一些与数组相同的行的索引。

我的数据框如下所示

# app/operations/txn.rb def create_txn @transaction = Transaction.new(transaction_params) @transaction.save end def transaction_params { . . . amount: dest_amount, . . . } end def dest_amount #logic end

我要输入的输入值就像 df = pd.DataFrame({'a':[True, False, True, True],'b':[False, True, True, True],'c':[True, True, False, True],'d':[True, False, True, False]}),我想得到row = [True, True, False, True]

我为此尝试过一些

[2]

它可以工作,但是对于我的工作来说非常慢。有什么方法吗?

1 个答案:

答案 0 :(得分:4)

使用DataFrame.eqSeries.all

df[df.eq(row).all(1)]

示例

df = pd.DataFrame({'a':[True, False, True, True],'b':[False, True, True, True],'c':[True, True, False, True],'d':[True, False, True, False]})
row = [True, True, False, True]

df[df.eq(row).all(1)]

[出]

      a     b      c     d
2  True  True  False  True 

如果需要,在index.to_list()上链接以获取索引列表:

df[df.eq(row).all(1)].index.to_list()

[2]