[FIXED] Was ist die umgekehrte Operation von np.log() und np.diff()?

Ausgabe

Ich habe die Anweisung dataTrain = np.log(mdataTrain).diff()in meinem Programm verwendet. Ich möchte die Auswirkungen der Aussage umkehren. Wie kann es in Python gemacht werden?

Lösung

Umgekehrt wird die kumulative Summe und dann das Exponential genommen. Da pd.Series.diff Informationen verloren gehen, nämlich der erste Wert in einer Reihe, müssen Sie diese Daten speichern und wiederverwenden:

np.random.seed(0)

s = pd.Series(np.random.random(10))

print(s.values)

# [ 0.5488135   0.71518937  0.60276338  0.54488318  0.4236548   0.64589411
#   0.43758721  0.891773    0.96366276  0.38344152]

t = np.log(s).diff()
t.iat[0] = np.log(s.iat[0])
res = np.exp(t.cumsum())

print(res.values)

# [ 0.5488135   0.71518937  0.60276338  0.54488318  0.4236548   0.64589411
#   0.43758721  0.891773    0.96366276  0.38344152]


Beantwortet von –
jpp


Antwort geprüft von –
Marie Seifert (FixError Admin)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like