Olá Guilherme, tudo bem com você?
Peço desculpas pela demora em obter um retorno.
Para o projeto descrito, onde queremos adicionar uma constante aos valores de uma coluna apenas para as linhas que atendem a determinadas condições, podemos utilizar a função apply
junto com uma função lambda
que verifica as condições e aplica a soma apenas quando elas são atendidas. Deixo abaixo, um exemplo de código:
import pandas as pd
# Exemplo de DataFrame
data = {'Frequencia': [10, 20, 30, 40, 50],
'Medicao': [15, 25, 35, 45, 55],
'Valor': [100, 200, 300, 400, 500]}
df = pd.DataFrame(data)
# Defina os níveis de frequência e medição
nivel_frequencia = 30
nivel_medicao = 40
constante = 50
# Use a função apply com uma função lambda para atualizar os valores
df['Valor'] = df.apply(lambda row: row['Valor'] + constante if row['Frequencia'] > nivel_frequencia and row['Medicao'] > nivel_medicao else row['Valor'], axis=1)
df
Resultado
No código acima, definimos os níveis de frequência (nivel_frequencia
), medição (nivel_medicao
) e a constante que desejamos adicionar aos valores. A função apply
é usada para aplicar a lógica em cada linha do DataFrame, verificando as condições e somando a constante aos valores quando as condições são atendidas.
Todavia, vale ressaltar que como é um assunto externo ao curso e que não tenho acesso ao cenário completo do projeto, outros testes podem ser necessários a fim de obter o resultado esperado, mas espero que esta resposta seja um bom ponto de partida para a resolução do seu problema.
Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!