Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Qual é o nome tecnico da operação df1[df1 > 0] = 'A'. Porque ela funciona?

Gostaria de me aprofundar melhor na expressão

df1[df1 > 0] = 'A'

Entendi que está acontecendo um for each termo a termo, mas ainda assim, gostaria de estudar melhor pra saber em quais contextos posso usar isso... Me parece ser uma estrutura especifica pra DataFrame, mas precisava ter certeza.

Valeu!

1 resposta
solução!

Opa Gabriel, tudo bem?

Quando fazemos um filtro como: df1 > 0 o que o pandas faz é criar um data frame com valores True e False. Quando pegamos esses valores e colocamos dentro dos colchetes (df1[df1 > 0]) estamos falando para o pandas pegar os valores que são verdadeiros no data frame. Por exemplo:

Vamos pensar em um data frame com valores df1 = [0, 1, 2, 3, 4, 5] E um filtro df1 > 3. Os valores desse filtro será: [False, False, False, False, True, True]

Quando pegamos esse filtro e colocamos como seletor no df1, o pandas vai pegar apenas os valores onde o índice é verdadeiro, no caso [4, 5].

Após isso, temos uma view, uma janela para visualizar os dados que estão no data frame. Podemos pegar esses dados e atribuir um novo valor para eles, como em: df1[df1 > 0] = 'A'