From: Uwe Ligges <ligges_at_statistik.uni-dortmund.de>

Date: Tue 11 Oct 2005 - 00:20:50 EST

*>
*

*>
*

> Sorry indeed for my not at all rigourous answer.

*> Adding P in the data set will indeed not force the regression line
*

*> to pass through P (P will only be one more points of the cloud,
*

*> adding P will "attract" the regression line, not more.)
*

*>
*

*> I did make this answer because I'm yet working with very small data
*

*> sets, and adding P (in more than one exemplar when needed in order to
*

*> give it more weight), is a fast, (a bit ugly I agree), way to do.
*

*> But on the kind of data I use, it works good enough.
*

*> I should have add this precision. Apologies.
*

*>
*

*>
*

*>
*

> If you have a good reference or link in mind,

*> I would thank you.
*

*>
*

*>
*

> Sorry for my lack of knowledge, but will the above trick really force

*> the regression line to pass through P ?
*

*> adding (0,0) in this new system of coordinates isn't it equivalent to
*

*> add P to the dataset in the original system ?
*

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Oct 11 00:28:45 2005

Date: Tue 11 Oct 2005 - 00:20:50 EST

vincent@7d4.com wrote:

>> vincent@7d4.com wrote: >> >>> Domenico Cozzetto a écrit : >>> >>>> Dear all, >>>> I'd like to get a linear regression of some data, and impose that >>>> the line >>>> goes through a given point P. I've tried to use the lm() method in the >>>> package "stats", but I wasn't able to specify the coordinates of the >>>> point P. Maybe I should use another method? >>> >>> >>> add directly P in your data is also a way >> >> >> No!

> Sorry indeed for my not at all rigourous answer.

>> Please, both of you, consult a basic textbook on linear regression.

> If you have a good reference or link in mind,

E.g., among several other, the great comprehensive books by John Fox are really well written and easy to understand ...

>> You can transform the data (linear) so that P becomes (0,0), after >> that you can estimate the slope without intercept by specifying >> lm(y ~ x - 1) >> The slope estimate is still valid while your intercept can be >> calculated afterwards.

> Sorry for my lack of knowledge, but will the above trick really force

Well, you do not add that point, but transform the others: Say you have (let's make a very simple 1-D example) points P_i = (x_i, y_i), and P = (x_0, y_0). Then calculate for all i:

P'_i = (x_i - x_0, y_i - y_0)

Now you can calculate a regression without any Intercept by

lm(y ~ x - 1)

You got the slope now and the Intercept is 0 so far for P'.

After that, you can re-transform to get the real data's intercept:

Intercept = -(slope * x_0) + y_0

Uwe Ligges

> If my question is too basic and/or too stupid, just give it a rest.

*>
**> Vincent
*

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Oct 11 00:28:45 2005

*
This archive was generated by hypermail 2.1.8
: Fri 03 Mar 2006 - 03:40:41 EST
*