Что такое обратная операция np.log () и np.diff ()? - PullRequest
0 голосов
/ 01 октября 2018

Я использовал выражение dataTrain = np.log(mdataTrain).diff() в моей программе.Я хочу обратить вспять последствия заявления.Как это можно сделать в Python?

1 Ответ

0 голосов
/ 01 октября 2018

Обратное будет включать в себя накопленную сумму, а затем экспоненциальную.Поскольку pd.Series.diff теряет информацию, а именно первое значение в серии, вам необходимо будет сохранить и повторно использовать эти данные:

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]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...