如何反转log2转换

时间:2018-06-10 20:31:15

标签: r math dplyr logarithm

我有这种形式的数据:

        ds           y
1   2015-12-31 51737806366
2   2016-01-01   451800500
3   2016-01-04    48503189
4   2016-01-06      221000
5   2016-01-07   542483038
6   2016-01-08   628189789
7   2016-01-09   556762005
8   2016-01-10   195672447
9   2016-01-11   279202668
10  2016-01-12   540234196
11  2016-01-13  3403591404
12  2016-01-14   610409176

'y'列上的值代表收入,货币单位。我以原始形式对这些数据进行了探索性绘图,发现该图不太有用,数据的视觉效果不合适,所以为了改善我的可视化,我对{{1}应用了log2()转换。列...它工作正常:

'y'

现在的问题是,为了完成我的分析,我需要将 ds y 1 2015-12-31 35.59050 2 2016-01-01 28.75111 3 2016-01-04 25.53158 4 2016-01-06 17.75369 5 2016-01-07 29.01500 6 2016-01-08 29.22663 7 2016-01-09 29.05249 8 2016-01-10 27.54387 9 2016-01-11 28.05674 10 2016-01-12 29.00901 11 2016-01-13 31.66441 值恢复为原始形式。无论如何还是隐式'y'函数来反转我应用的R转换,这样我才能得到原始数字?

1 个答案:

答案 0 :(得分:8)

很简单。

首先,调用log2:

data$y = log2(data$y)

之后,如果你想让原来的y回来,那就去做:

data$y = 2^data$y

logarithm是取幂的反函数。

一般规则是:

   logb(x) = y as by = x   

例如:

   log2(4) = 2 as 22 = 4
   log2(8) = 3 as 23 = 8