Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

445
Visualizações
How to update pandas DataFrame.drop() for Future Warning - all arguments of DataFrame.drop except for the argument 'labels' will be keyword-only

The following code:

df = df.drop('market', 1)

generates the warning:

FutureWarning: In a future version of pandas all arguments of DataFrame.drop except for the argument 'labels' will be keyword-only

market is the column we want to drop, and we pass the 1 as a second parameter for axis (0 for index, 1 for columns, so we pass 1).

How can we change this line of code now so that it is not a problem in the future version of pandas / to resolve the warning message now?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

From the documentation, pandas.DataFrame.drop has the following parameters:

Parameters

  • labels: single label or list-like Index or column labels to drop.

  • axis: {0 or ‘index’, 1 or ‘columns’}, default 0 Whether to drop labels from the index (0 or ‘index’) or columns (1 or ‘columns’).

  • index: single label or list-like Alternative to specifying axis (labels, axis=0 is equivalent to index=labels).

  • columns: single label or list-like Alternative to specifying axis (labels, axis=1 is equivalent to columns=labels).

  • level: int or level name, optional For MultiIndex, level from which the labels will be removed.

  • inplace: bool, default False If False, return a copy. Otherwise, do operation inplace and return None.

  • errors: {‘ignore’, ‘raise’}, default ‘raise’ If ‘ignore’, suppress error and only existing labels are dropped.

Moving forward, only labels (the first parameter) can be positional.


So, for this example, the drop code should be as follows:

df = df.drop('market', axis=1)

or (more legibly) with columns:

df = df.drop(columns='market')
over 4 years ago · Santiago Trujillo Relatório

0

The reason for this warning is so that probably in future versions pandas will change the *args to **kwargs.

So that means specifying axis would be required, so try:

df.drop('market', axis=1)

As mentioned in the documentation:

**kwargs allows you to pass keyworded variable length of arguments to a function. You should use **kwargs if you want to handle named arguments in a function.

Also recently with the new versions (as of 0.21.0), you could just specify columns or index like this:

df.drop(columns='market')

See more here.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda