Qual seria a diferença de usar .query e .loc? No fim não daria na mesma e o meu df seria "filtrado"?
Qual seria a diferença de usar .query e .loc? No fim não daria na mesma e o meu df seria "filtrado"?
Olá, Camila!
A função .loc
e o método .query
são usados para filtrar um DataFrame no pandas, mas eles têm algumas diferenças importantes.
O .loc
é usado para selecionar linhas e colunas com base em rótulos. Por exemplo, se você tiver um DataFrame com rótulos de linha e coluna, você pode usar o .loc
para selecionar um valor específico com base nesses rótulos. Por exemplo:
df.loc[1, 'coluna']
Já o .query
é usado para filtrar um DataFrame com base em uma expressão booleana. Por exemplo, se você quiser selecionar todas as linhas onde a coluna 'idade' é maior que 30, você pode usar o .query
da seguinte forma:
df.query('idade > 30')
A principal diferença entre os dois é a forma como eles selecionam os dados. Enquanto o .loc
usa rótulos, o .query
usa expressões booleanas.
Cada um têm propósitos diferentes e são usados em situações diferentes, mas podem ser utilizados para encontrar os mesmos resultados. É importante entender essas diferenças para escolher o método correto para cada situação.
Espero ter ajudado e bons estudos!