Нужна помощь с методом регрессионного анализа Crow-AMSAA в г - PullRequest
0 голосов
/ 08 июня 2019

Краткое описание проблемы: Я пытаюсь нанести данные на r и использовать краамсаа для определения точки пересечения и наклона линии регрессии через точки. Данные содержат дискретные значения совокупных отказов (ось Y) в зависимости от совокупного времени (ось X). Если график нанесен на график log-log, линия, соответствующая данным, должна содержать лямбду (y-пересечение) и бета (наклон). Использование функции lm () в r для подгонки строки к данным не приводит к ожидаемой лямбде или бета-версии. В этом случае эти значения известны, поскольку они были взяты из примера задачи, в которой для определения значений использовалось коммерческое программное обеспечение. Я был бы признателен за рекомендации о том, где я мог бы сбиться с пути ....

Справочная информация: Созданные векторы и фрейм данных, нанесенные значения на график log-log, произведенный подбор с использованием функции lm (), построенный график соответствия ... и его значения для точки пересечения и наклона не верны.

Код:

Попытка выполнить регрессию Кроу-AMSAA (т.е. не MLE).

cumtime <- c (17, 21, 164, 253,5, 7902, 12363,5, 17059, 19945,5, 25671) </p>

cumfail <- c (1, 2, 3, 4, 5, 6, 7, 8, 9) </p>

data <- data.frame (cumfail, cumtime) </p>

plot (cumtime, cumfail, log = "xy", xlab = "Общее кумулятивное время", ylab = "Общее кумулятивное вхождение", main = "Crow-AMSAA Plot")

mod <- lm (log (cumfail) ~ log (cumtime)) </p>

мода

Вызов: lm (формула = log (cumfail) ~ log (cumtime))

Коэффициенты: Журнал (перехвата) (cumtime)
-0,1815 0,2231

abline (мод)

Примечание: визуально наблюдаемая граница выше не подходит для набора данных.

Позже попытался уместить линию только через последние 5 точек из-за наблюдаемого изменения наклона и пересечения этих значений

latemod <- lm (log (data $ cumfail) ~ log (data $ cumtime), data = data, подмножество = 5: 9) </p>

Вызов «latemod» дает перехват -2,9535 и наклон 0,5061, что неверно.

Вызов: lm (формула = log (данные $ cumfail) ~ log (данные $ cumtime), данные = данные, подмножество = 5: 9) Коэффициенты: Журнал (перехвата) (данные $ cumtime)
-2,9535 0,5061

Аблайн (latemod, col = "red", lwd = 3)

Примечание: вышеописанная функция аблирования ничего не отображала, но не вызывала каких-либо ошибок. Намерение состояло в том, чтобы построить его через последние 5 точек данных, сохранив исходную аблайн, нанесенный на график для всех точек данных (для визуального сравнения). Отображается только первая абстракция.

Фактические результаты: пересечение -0,1815 и наклон 0,2231 (с использованием всего набора данных), но ожидаемые (правильные) значения - это пересечение 0,6264 и наклон 0,262.

Просмотр только последних 5 точек данных, фактический перехват -2,9535 и наклон 0,5061, но ожидаемый (правильный) перехват 0,05116 и наклон 0,509. Эти значения наклона близки, но значения перехвата очень разные.

Сообщения об ошибках не получены.

...