[R] Constraining Predicted Values to be Greater Than 0

Westley Ritz writz at trchome.com
Wed Sep 26 20:21:00 CEST 2007


Thank you Wensui and Professor Ripley for your responses.

Prof. Ripley, your assumptions regarding the context in which I'm using 'WLS' and 'regression' are correct.  The function solve.QP in the quadprog package sounds like a great way to go.  Thank you, and I will try this method.

Westley A. Ritz
Analyst
215-641-2243
writz at trchome.com

TRC
www.trchome.com


-----Original Message-----
From: Prof Brian Ripley [mailto:ripley at stats.ox.ac.uk]
Sent: Wednesday, September 26, 2007 1:13 PM
To: Wensui Liu
Cc: Westley Ritz; r-help at r-project.org
Subject: Re: [R] Constraining Predicted Values to be Greater Than 0


You seem to be assuming that 'regression' has to do with 'gaussian 
assumption'.  However, I presume WLS stands for 'weighted least squares', 
and 'regression' is historically associated with fitting linear models by 
least squares.

I don't see why even in the model-based framework you assert that 
Westley cannot impose any constraints he wants on the *means*: the 
positivity constraint is on the means and not on the observations.  E.g. 
in chemistry it is reasonable to assume that concentrations are 
non-negative, but indirectly measured values need not be.  Note though 
that it is more usual to require that all predictions (at new points as 
well as data points) would be non-negative, which typically does reduce to 
constraints on the coefficients.

As to how to do this, a WLS problem with inequality constraints on the 
fitted values is a linearly-constrained quadratic programme.  So one 
avenue is to use solve.QP in package quadprog.  If you have a large 
problem you can make use of the necessary redundancy of the constraints: 
e.g. if the predictions at the convex hull of the data points are 
non-negative, they all are.


On Wed, 26 Sep 2007, Wensui Liu wrote:

> if your regression under gaussian assumption, then you can't
> constraint your predicted to be positive.
> I don't know much about your dep in the model. but given more
> appropriate distribution assumption, the constraint is doable. One
> possibility that I can think of is poisson.
>
> On 9/25/07, Westley Ritz <writz at trchome.com> wrote:
>> I have a WLS regression with 1 dependent variable and 3 independent 
>> variables.  I wish to constrain the predicted values (the fitted 
>> values) so that they are greater than zero (i.e. they are positive). 
>> I do not know how to impose this constraint in R.  Please respond if 
>> you have any suggestions.
>>
>> There are some previous postings about constraining the coefficients, 
>> but this won't accomplish what I am trying to do.  The coefficients can 
>> be negative, just as long as the predicted values are positive.
>>
>> Thank you in advance for your time.
>>
>> Westley A. Ritz
>> Analyst
>> 215-641-2243
>> writz at trchome.com
>>
>> TRC
>> www.trchome.com
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>
>
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list