我在我的程序中使用了语句 dataTrain = np.log(mdataTrain).diff()
。我想扭转该语句的效果。如何在 Python 中完成?
最佳答案
反过来将涉及采用累积总和,然后是指数。由于 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]
关于python - np.log() 和 np.diff() 的逆运算是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52590745/