Filtro pandas por valor da coluna

Filtro pandas por valor da coluna
Uma das técnicas mais populares para limpar os dados é filtrar os dados de um DataFrame. De acordo com o rótulo e a posição das colunas e linhas, os pandas oferecem uma variedade de técnicas ou métodos para seleção de dados. Além disso, os pandas permitem filtrar as linhas usando a indexação booleana e extrair um subconjunto de dados, dependendo dos tipos de coluna. Os métodos mais populares para extrair os subconjuntos de dados de um quadro de dados de pandas são abordados neste artigo - selecionando uma coluna por etiqueta, selecionando várias colunas por etiqueta, etc.

Como alterar a coluna Pandas para string

Existem vários métodos e técnicas que podemos usar para filtrar os dados do quadro de dados do pandas com base nos valores nas colunas. Demonstraremos alguns métodos para filtrar os dados de um quadro de dados nos exemplos a seguir:

Primeiro, veremos como filtrar as linhas do quadro de dados do Pandas, dependendo dos valores das colunas usando operadores condicionais e relacionais específicos.

Exemplo 1: Filtre as linhas do quadro de dados usando []

Para demonstrar este exemplo, precisamos de um dados de dados primeiro. O DataFrame é criado usando os pandas.Função DataFrame (), por isso importamos a Biblioteca Pandas primeiro para criar nosso quadro de dados.


Criamos nosso quadro de dados usando um dicionário Python e depois passamos dentro do PD.Função DataFrame (). Especificamos os nomes das colunas de nossos dados como "aluno", "idade", "sujeito" e "taxa". Podemos usar a função print () para ilustrar nosso quadro de dados "df".


No quadro de dados anterior, existem 4 colunas. "Student" armazena os nomes ("Anna", "Dany", "John", "Rick", "Jim", "Kenny"). "Idade" armazena as idades de indivíduos (25, 23, 22, 18, 19, 20). "Assunto" é consiste em nomes de sujeitos ("Contabilidade", "Negócios", "Ciência", "Matemática", "Arquitetura", "AI")). E "Taxa" consiste na taxa de cada sujeito (900, 690, 799, 960, 970, 1080). Suponhamos que tenhamos que filtrar as linhas onde o valor é maior que 900 na coluna "Fee".


Para acessar os valores da coluna "Fee", colocamos o nome da coluna, eu.e. "Taxa", dentro dos parênteses. Depois de acessar os valores, aplicamos um df ['taxa']> 900 Condição. Para armazenar os valores que atendem à condição, criamos a variável "saída".


Temos três linhas que satisfazem a condição anterior. Podemos usar as diferentes colunas dentro dos parênteses [].

Exemplo 2: Filtre as linhas de quadro de dados usando o método loc []

Neste exemplo, o método LOC [] é usado para acessar os valores das colunas DataFrame. Em seguida, usamos os operadores relacionais ou condicionais para filtrar as linhas do quadro de dados. A função loc () simplifica obter rapidamente os valores de um quadro de dados. Ao passar um nome de coluna, nome da linha ou valor de índice para a função loc (), podemos recuperar os valores de dados que são armazenados dentro da linha ou coluna específica.


Para recuperar os valores das colunas da idade, passamos pelo DF ['idade'] dentro do DF.LOC [] função. Também usamos uma condição dentro da função para recuperar apenas as linhas onde o valor da idade é maior que 19. Para verificar se ele recuperou as linhas corretas ou não, vamos ilustrar nosso quadro de dados usando a função print ().


Nos exemplos dados anteriormente, vimos como usar os operadores relacionais ou condicionais para filtrar as linhas específicas com base nos valores da coluna. Agora, veremos como filtrar os dados usando a função isin ().

Exemplo 3: Filtre as linhas de quadro de dados com valores dentro da lista usando o método isin ()

Os elementos do DataFrame são verificados para ver se estão contidos nos valores usando a função isin (). Somente se todos os rótulos correspondem em um determinado local, o resultado será verdadeiro. Vamos criar nosso quadro de dados depois de importar o módulo pandas. Novamente, o PD.DataFrame () é usado para criar nosso novo DataFrame.


Criamos um DataFrame com três colunas - "Nome", "Designação" e "Salário" que armazenam os dados ("Richard", "Will", "Steve", "Larry", "Lana", "Tony"), ("Contador", "Contador", "Gerente", "Clerk", "Clerk", "Gerente") e (1200, 1250, 2100, 1000, 990, 2200) respectivamente. Agora, criamos um objeto de lista que é passado dentro da função isin () como uma entrada para corresponder aos valores da lista dos valores especificados da coluna de nosso quadro de dados.


Criamos pela primeira vez uma lista em que colocamos os valores "Contador" e "Gerente" e atribuímos esta lista a uma variável "Desig". O valor da coluna "designação" é acessado usando o nome da coluna, i.e. "Designação", dentro []. Usamos a função isin () nos valores avaliados da coluna para corresponder aos valores na lista com os valores dentro da coluna "designação" em nosso quadro de dados.


Usamos os valores de "contador" e "gerente" dentro da lista. Portanto, a função retornou as linhas onde a coluna de designação tem o gerente e os valores do contador.

Exemplo 4: Filtre os dados com base nos valores nas colunas DataFrame usando o método LOC [] e ISIN ()

Agora, usamos o método loc [] para recuperar ou acessar as colunas específicas de nosso quadro de dados. Depois de acessar os dados, usamos a função isin () para filtrar os dados em nosso quadro de dados.


No script anterior, temos uma lista "sal" com valores [1200, 2100, 2200]. Em seguida, a lista "sal" é passada dentro da função ISIN () como um argumento para corresponder aos valores da lista com a coluna "salário". Depois de corresponder aos valores, as linhas obtidas da função são armazenadas em uma nova variável "df_filter". Agora, vemos o resultado usando a função print ().


Pode -se observar que as linhas necessárias com os valores 1200, 2100 e 2200 são extraídas do quadro de dados "df".

Agora, no próximo exemplo, filtraremos os dados usando várias condições.

Exemplo 5: Filtre as linhas do quadro de dados usando várias condições em colunas de dados de dados

Vamos criar um quadro de dados primeiro, onde aplicamos as múltiplas condições para filtrar as linhas do quadro de dados.


Há um total de 4 colunas no quadro de dados anteriores - "aluno", "idade", "cursos" e "taxa". A coluna "Student" armazena o nome dos estudantes ("Mike", "Rob", "Arya", "Tom", "Jack", "Luca", "Mark", "Max" e "Alex"). A coluna “idade” contém as idades de cada aluno (21, 21, 23, 22, 19, 20, 25, 23, 22). Enquanto as colunas "cursos" e "taxas" armazenam o nome dos cursos ("Contabilidade", "Negócios", "Ciência", "Matemática", "Arquitetura", "AI", "Contabilidade", "Negócios", "AI ”E taxa de cada curso para um aluno (1000, 1190, 1250, 1320, 1245, 1580, 1420, 1600, 1600). Vamos aplicar as condições para extrair as linhas necessárias.


Criamos uma lista "Sub" com "Contasings" e "AI" Elements. A lista é aprovada na função ISIN () para corresponder aos elementos da lista com os valores dos “cursos” da coluna. Usamos outra condição de que o valor na coluna "taxa" deve ser maior que 1250. O script anterior recupera as linhas que satisfazem as duas condições.


Essas linhas atendem às duas condições.

Conclusão

Neste tutorial, discutimos os múltiplos métodos e técnicas que podem ser usados ​​para filtrar os dados do quadro de dados de pandas com base em valores em colunas. Tentamos torná -lo capaz de filtrar os dados com base nos valores da coluna por você mesmo. Implementamos os diferentes exemplos deste artigo para ensinar como usar as funções LOC [] e ISIN (), bem como operadores relacionais ou condicionais para extrair os dados do quadro de dados fornecido, dependendo dos valores da coluna.