Introdução
Neste laboratório, você aprenderá sobre o método query() na biblioteca Pandas. O método query() permite filtrar um DataFrame com base em uma expressão booleana. É semelhante ao método filter(). Você pode usar este método para filtrar o DataFrame com base em uma ou mais colunas, bem como combinar múltiplas condições usando o operador 'AND'.
Dicas da VM
Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.
Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.
Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.
Criando um DataFrame
Primeiramente, vamos criar um DataFrame para trabalhar. Neste exemplo, criaremos um DataFrame contendo informações sobre pessoas, incluindo seus nomes, idades, alturas e pesos.
#importing pandas as pd
import pandas as pd
#creating the DataFrame
df = pd.DataFrame({'Name': ['Chetan', 'Yashas', 'Yuvraj', 'Pooja', 'Sindu', 'Renuka'],
'Age': [19, 26, 22, 24, 21, 23],
'Height': [165, 150, 168, 157, 155, 170],
'Weight': [60, 65, 70, 50, 52, 55]})
Filtrando o DataFrame por uma Única Coluna
Em seguida, vamos filtrar o DataFrame com base em uma única coluna usando o método query(). Neste exemplo, filtraremos o DataFrame para incluir apenas as linhas onde a idade é inferior a 23.
#filtering the DataFrame by age
filtered_df = df.query('Age < 23')
#printing the filtered DataFrame
print(filtered_df)
Output:
Name Age Height Weight
0 Chetan 19 165 60
2 Yuvraj 22 168 70
4 Sindu 21 155 52
Filtrando o DataFrame Comparando Duas Colunas
Agora, vamos filtrar o DataFrame comparando duas colunas usando o método query(). Neste exemplo, filtraremos o DataFrame para incluir apenas as linhas onde os valores na coluna "sci_Marks" são maiores que os valores na coluna "Maths_Marks".
#creating the DataFrame
df = pd.DataFrame({'Name': ['Chetan', 'Yashas', 'Yuvraj', 'Pooja', 'Sindu', 'Renuka'],
'sci_Marks': [85, 70, 75, 90, 95, 70],
'Maths_Marks': [82, 79, 80, 89, 92, 70]})
#filtering the DataFrame by comparing two columns
filtered_df = df.query('sci_Marks > Maths_Marks')
#printing the filtered DataFrame
print(filtered_df)
Output:
Name sci_Marks Maths_Marks
0 Chetan 85 82
3 Pooja 90 89
4 Sindu 95 92
Filtrando o DataFrame Usando o Operador 'AND'
Finalmente, vamos filtrar o DataFrame usando o operador 'AND' para combinar múltiplas condições. Neste exemplo, filtraremos o DataFrame para incluir apenas as linhas onde a altura é superior a 155 e o peso é superior a 60.
#filtering the DataFrame by using 'AND' operator
filtered_df = df.query('Height > 155 and Weight > 60')
#printing the filtered DataFrame
print(filtered_df)
Output:
Name Age Height Weight
1 Yashas 26 150 65
2 Yuvraj 22 168 70
Resumo
Parabéns! Neste laboratório, você aprendeu a usar o método query() na biblioteca Pandas. Agora você sabe como filtrar um DataFrame com base em uma expressão booleana, filtrar por uma única coluna, comparar duas colunas e usar o operador 'AND' para combinar múltiplas condições. Este método é útil para filtrar dados de forma rápida e eficiente em DataFrames do Pandas. Continue praticando e explorando diferentes casos de uso para se tornar mais proficiente no uso do método query().