标签: python pandas
我试图在Pandas DataFrame中找到一系列的日志更改(即一点与下一点之间的算术变化)。虽然这段代码有效,但似乎过于复杂;当然,我做的事情很糟糕,有一种更简单的方法吗?
df['Change'] = (lambda x: x.sub(x.shift(1)))(df['stat'].map(lambda x: math.log(x)))
谢谢!
答案 0 :(得分:2)
您可以使用numpy(矢量化)对数与panda的diff:
>>> df['Change'] = np.log(df['stat']).diff()