Как инвертировать преобразование log2 - PullRequest
0 голосов
/ 10 июня 2018

У меня есть данные в этой форме:

        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' представляют доход, денежные единицы.Я сделал исследовательский график для этих данных в его первоначальном виде и нашел, что график не слишком полезен, визуальный вид данных не подходит, поэтому для улучшения визуализации я применил преобразование 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, чтобы отменить преобразование log2(), которое я применил, чтобы я мог вернуть исходные числа?

1 Ответ

0 голосов
/ 11 июня 2018

Это просто.

Сначала вызовите log2:

data$y = log2(data$y)

После этого, если вы хотите вернуть оригинал y, просто сделайте:

data$y = 2^data$y

логарифм является обратной функцией возведения в степень.

Общее правило:

<code>   log<sub>b</sub>(x) = y as b<sup>y</sup> = x   

Например:

<code>   log<sub>2</sub>(4) = 2 as 2<sup>2</sup> = 4
   log<sub>2</sub>(8) = 3 as 2<sup>3</sup> = 8 
...