2014-11-26 2 views
2

У меня есть временная таблица с 2-х числовыми столбцами, Y и X.метод Postgresql для нахождения наклона линии и продавливания происхождения

CREATE TEMP TABLE findslope(y numeric,x numeric); 

который я затем заселить с желаемым X и Y для линии Я стараюсь, чтобы соответствовать методу наименьших квадратов лучше подходят строки, которые я в настоящее время с помощью следующих действий:

SELECT REGR_SLOPE(y, x) slope FROM findslope into slope_variable; 

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

ответ

2

Ниже приведен рабочий код:

SELECT 
    sum(y*x)/sum(x*x) as slope 
FROM findslope INTO slope_variable 
0

Прошло некоторое время с тех пор, как я должен был получить эту математику правильно, поэтому подтвердите это самостоятельно. Я бы начал с Simple linear regression на wiki.

Я думаю, что будет делать это:

SELECT regr_sxy(y,x)/regr_sxy(x,x) AS slope FROM findslope INTO slope_variable; 

 Смежные вопросы

  • Нет связанных вопросов^_^