Как отменить преобразование журнала, чтобы удалить отрицательные значения - PullRequest
0 голосов
/ 11 ноября 2019

Мне дали набор данных, уже преобразованный предыдущим пользователем. Когда я пытаюсь создать / построить NMF, используя этот код:

multiRankNMF <- nmf(dataset, seq(seq1,seq2), 
                method=usedmethod, nrun=noofrun, 
                seed=initseed, .options = "t")

Я не могу получить эти ошибки:

 Error in (function (...)  : All the runs produced an error:
    -#1 [r=2] -> NMF::nmf - 20/20 fit(s) threw an error.
 Error(s) thrown:
  - run #1: NMF::nmf - Input matrix x contains some negative entries.
    -#2 [r=3] -> NMF::nmf - 20/20 fit(s) threw an error.
 Error(s) thrown:
  - run #1: NMF::nmf - Input matrix x contains some negative entries.
    -#3 [r=4] -> NMF::nmf - 20/20 fit(s) threw an error.
 Error(s) thrown:
  - run #1: NMF::nmf - Input matrix x contains some negative entries.
    -#4 [r=5] -> NMF::nmf - 20/20 fit(s) threw an error.
 Error(s) thrown:
  - run #1: NMF::nmf - Input matrix x contains some negative entries.
    -#5 [r=6] -> NMF::nmf - 20/20 fit(s) threw an error.
 Error(s) thrown:
  - run #1: NMF::nmf - Input matrix x contains some negative entries.
    -#6 [r=7] -> NMF::nmf - 20/20 fit(s) threw an error.

Я думаю, что отрицательные значения должны быть полученыпреобразование, используемое ранее в качестве данных генной экспрессии, неотрицательно.

Как мне отменить преобразование, чтобы я мог создать NMF?

1 Ответ

0 голосов
/ 11 ноября 2019

Предполагая, что это действительно было просто лог-преобразованием, ответ зависит от того, какая база (обычно e или 10) была использована. Если это был натуральный логарифм (основание e), то exp() выполнит трюк:

data <- log(1:10)
exp(data)

Если это было основание 10, решение вычисляет 10 в степени ваших данных:

data <- log10(1:10)
10^data
...