Оценка лямбда для преобразования Йео и Джонсона

У меня есть временной ряд значений осадков в файле csv. Я построил гистограмму данных. Гистограмма наклонена влево. Я хотел преобразовать значения так, чтобы они имели нормальное распределение. Я использовал преобразование Йео-Джонсона, доступное в R. Преобразованные значения находятся здесь. .

Мой вопрос:

В приведенном выше преобразовании я использовал тестовое значение 0,5 для лямбда, которое отлично работает. Можно ли определить оптимальное значение лямбда на основе временного ряда? Я буду признателен за любые предложения.

Пока вот код:

library(car)
dat <- scan("Zamboanga.csv")
hist(dat)
trans <- yjPower(dat,0.5,jacobian.adjusted=TRUE)
hist(trans)

Вот CSV-файл.


person Lyndz    schedule 07.11.2016    source источник
comment
Пожалуйста, предоставьте воспроизводимый пример, в идеале с смоделированными, а не связанными данными. Ссылки здесь не работают и не нужны, учитывая, что это один вектор.   -  person Max Ghenis    schedule 07.08.2018


Ответы (1)


Сначала найдите оптимальную лямбду, используя функцию boxCox из пакета car, чтобы оценить λ по максимальному правдоподобию.

Вы можете построить это следующим образом:

boxCox(your_model, family="yjPower", plotit = TRUE)

пример из резюме

Как сказал Бен Болкер в комментарии, модель здесь может быть примерно такой

your_model <- lm(dat~1)

Затем используйте оптимизированную лямбду в существующем коде.

person Hack-R    schedule 07.11.2016
comment
Я не понимаю, какая модель (объект в команде Box-Cox) применима для моих данных. На данный момент я не подгоняю какую-либо модель к данным. - person Lyndz; 07.11.2016
comment
Наиболее очевидным было бы подогнать тривиальную линейную модель: your_model <- lm(dat~1). - person Ben Bolker; 07.11.2016
comment
@Lyndz Да, я бы послушался совета Бена Болкера по этому поводу. - person Hack-R; 07.11.2016
comment
Я понял это сейчас, прочитав несколько статей о функции lm. Большое большое спасибо за помощь! - person Lyndz; 07.11.2016