Хорошо, у меня есть список удвоений, которые я сначала хочу использовать в качестве данных для регрессии, а затем сравнить наблюдение с соответствующим значением оценки (стандартная ошибка).Линейная регрессия, ошибка стандартной ошибки
Но, когда я использую SimpleRegression, он просто записывает 2 параметра (я предполагаю первый и последний), поэтому, когда я пытаюсь проверить стандартную ошибку, я получаю исключение OutOfRangeException.
Что я делаю неправильно? Должен ли я использовать что-то другое, чем SimpleRegression? Кажется странным, что он не хранит каждую (x, y) пару оценок в переменной RegressionResults.
Вот мой код
//Linear Least Squares method
SimpleRegression regression = new SimpleRegression();
for (int i = 0; i < list.size(); i++) {
regression.addData(i, list.get(i));
}
//I want to see how much a certain max differs from its estimate value.
int indexOfTop = list.indexOf(secondTop);
RegressionResults results = regression.regress();
//How much this calculated top differ from the regression line
double errorOfEstimate = 0;
try {
System.out
.println("Parameters: " + results.getNumberOfParameters());
errorOfEstimate = results.getStdErrorOfEstimate(indexOfTop);
} catch (OutOfRangeException e) {
System.out.println(e);
}
Вы знаете, что я могу использовать, чтобы иметь более двух параметров, как оценки тогда? Мне нужна оценка для каждой точки наблюдения, которую я добавил в основном. Редактировать: Поцарапать это, я дурак. Очевидно, я могу использовать линейную функцию, просто добавляя x-значение ... Slope * x + intercept! Спасибо за помощь! – user2188724