"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como eliminar linhas de um dataframe do Pandas com base em índice ou condições?

Como eliminar linhas de um dataframe do Pandas com base em índice ou condições?

Publicado em 2024-11-03
Navegar:714

How to Drop Rows from a Pandas Dataframe Based on Index or Conditions?

Descartando linhas de um dataframe do Pandas

No Pandas, frequentemente encontramos a necessidade de remover certas linhas de um dataframe, seja para limpeza de dados propósitos ou para se concentrar em subconjuntos específicos. Uma maneira eficiente de conseguir isso é utilizar a função drop, que nos permite remover linhas seletivamente com base em vários critérios.

Para demonstrar o processo, vamos considerar um dataframe df:

import pandas as pd

df = pd.DataFrame({'sales': [2.709, 6.590, 10.103, 15.915, 3.196, 7.907],
                   'discount': [None, None, None, None, None, None],
                   'net_sales': [2.709, 6.590, 10.103, 15.915, 3.196, 7.907],
                   'cogs': [2.245, 5.291, 7.981, 12.686, 2.710, 6.459]})

print(df)

Agora, suponha que queiramos eliminar linhas com determinados números de sequência, representados por uma lista, como [1, 2, 4]. Para fazer isso, podemos usar a função drop da seguinte maneira:

  1. Crie uma série de rótulos de índice que você deseja remover:
indices_to_drop = [1, 2, 4]
  1. Como alternativa, você também pode eliminar linhas com base nas condições da coluna:
conditions_to_drop = df['sales'] > 10
df = df[~conditions_to_drop]

Ao especificar o parâmetro de índice em drop, podemos efetivamente remover as linhas correspondentes aos índices fornecidos, deixando-nos com o subconjunto desejado:

df = df.drop(index=indices_to_drop)
print(df)

Nesse caso, isso resultaria no seguinte dataframe:

                  sales  discount  net_sales    cogs
STK_ID RPT_Date                                     
600141 20060331   2.709       NaN      2.709   2.245
       20061231  15.915       NaN     15.915  12.686
       20070630   7.907       NaN      7.907   6.459
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3