Expressão pandas DataFrame.query que retorna todas as linhas por padrão

Eu descobri o método pandas DataFrame.query e elequase faz exatamente o que eu precisava (e implementei meu próprio analisador, já que eu não tinha percebido que existia, mas realmente deveria estar usando o método padrão).

Gostaria que meus usuários pudessem especificar a consulta em um arquivo de configuração. A sintaxe parece intuitiva o suficiente para que eu possa esperar que meus usuários não programadores (mas engenheiros) descubram isso.

Só falta uma coisa: uma maneira de selecionar tudo no quadro de dados. Às vezes, o que meus usuários desejam usar é cada linha, para que eles colocassem 'All' ou algo nessa opção de configuração. De fato, essa será a opção padrão.

Eu tentei o df.query ('True'), mas isso gerou um KeyError. Eu tentei o df.query ('1'), mas que retornou a linha com o índice 1. A string vazia gerou um ValueError.

As únicas coisas em que consigo pensar são: 1) colocar uma cláusula if toda vez que precisar fazer esse tipo de consulta (provavelmente 3 ou 4 vezes no código) ou 2) subclasse DataFrame e reimplementar a consulta ou adicionar um método query_with_all:

import pandas as pd

class MyDataFrame(pd.DataFrame):
    def query_with_all(self, query_string):
        if query_string.lower() == 'all':
            return self
        else:
            return self.query(query_string)

E então uso minha própria classe todas as vezes, em vez da classe dos pandas. Essa é a única maneira de fazer isso?

questionAnswers(2)

yourAnswerToTheQuestion