从python中的对数差返回到自然数

2024-05-16 23:31:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在处理时间序列数据,并使用numpy将数字转换为对数差。在

df['dlog']= np.log(df['columnx']).diff()

然后我用这个转变做了预测。在

我怎样才能回到正常的数字?在


Tags: 数据numpylogdfnp时间对数diff
1条回答
网友
1楼 · 发布于 2024-05-16 23:31:49
  • 不必反转转换,因为columnx仍然存在于df
  • .diff()计算一个序列元素与另一个元素的差异 系列中的元素。
    • dlog的第一行是NaN。如果没有“基”数(例如np.log(764677)),就没有一种方法可以使转换倒退
df = pd.DataFrame({'columnx': [np.random.randint(1_000_000) for _ in range(100)]})
df['dlog'] = np.log(df.columnx).diff()

输出:

^{pr2}$

np.exp撤消np.log

  • 使用np.exp将对数刻度转换为线性刻度。在
df = pd.DataFrame({'columnx': [np.random.randint(1_000_000) for _ in range(100)]})
df['log'] = np.log(df.columnx)
df['linear'] = np.exp(df.log)

输出:

 columnx        log    linear
  412863  12.930871  412863.0
  437565  12.988981  437565.0
  690926  13.445788  690926.0
  198166  12.196860  198166.0
  427894  12.966631  427894.0

进一步说明:

相关问题 更多 >