Ho un elenco di prezzi in cui sto cercando di calcolare la variazione in percentuale di ciascun numero. Ho calcolato le differenze conCalcolo della variazione percentuale tra due numeri (Python)
prices = [30.4, 32.5, 31.7, 31.2, 32.7, 34.1, 35.8, 37.8, 36.3, 36.3, 35.6]
def f():
for i in range(len(prices)):
print(prices[i]-prices[i-1])
che restituisce le differenze come
2.1
-0.8
-0.5
...
so la variazione percentuale sarebbe ((i- (i-1))/(i-1) * 100 , ma non so come incorporare che nella sceneggiatura Qualsiasi aiuto sarebbe molto apprezzato
Probabilmente si desidera 'range (1, len (prezzi))' - altrimenti la prima cosa che la stampa sarà la differenza tra l'ultimo e primi elementi della elenco. –
Hai l'equazione percentuale di modifica errata ... Potresti pensare a un'equazione di errore% che va come abs (xy)/x, dove x è il valore corretto in teoria, ma la differenza è abs (xy)/average x, y – jeremy
Hai ragione, David. Ho modificato l'intervallo come suggerito e modificato l'ultima riga per 'print ((prezzi [i] -prices [i-1])/prezzi [i-1] * 100)' –