Oi, Juliano, tudo bem?
Ao utilizar o iterrows()
em um DataFrame do pandas, ele retorna um iterador que produz índice e linha. A linha é uma série que tem como índice o nome das colunas do DataFrame.
No seu caso, você quer comparar elementos consecutivos da mesma coluna. Para isso, você precisa de uma maneira de lembrar do elemento anterior enquanto itera. Uma maneira de fazer isso seria:
valor_anterior = None
for index, row in dataset.iterrows():
if valor_anterior is None:
valor_anterior = row['valor']
continue
if(valor_anterior - row['valor'] > 0):
print('Valor decrescente')
else:
print('Valor crescente')
valor_anterior = row['valor']
Nesse código, antes de entrar no loop, criamos uma variável valor_anterior
e a inicializamos com None
. Dentro do loop, se valor_anterior
for None
(o que só vai acontecer na primeira iteração), nós a atualizamos com o valor atual e passamos para a próxima iteração. Nas iterações seguintes, nós comparamos o valor anterior com o valor atual, atualizamos valor_anterior
e continuamos.
Todavia, vale ressaltar que outros testes terão de ser feitos 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.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!
Espero ter ajudado e bons estudos!