Hi all, I hope you are doing well?
I'm currently using lm() to estimate a linear multi-factor (5 factors without intercept) model as follows ... factor.lm <- lm(y~x1+x2+x3+x4+x5-1, data = data.frame.rbind) Using nnls(A,b) I estimated the same model, extended by a non-negativity constraint on the 5 independent factors. It works quite well but unfortunately nnls() only returns the x estimates. Is there a way to extract the Std.Errors, t-values, p-valuess and R^2 as well? Thanks in advance and kind regards, Aljosa Aljosa Aleksandrovic, FRM, CAIA Senior Quantitative Analyst - Convertibles aljosa.aleksandro...@man.com Tel +41 55 417 76 03 Man Investments (CH) AG Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland -----Original Message----- From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of Aleksandrovic, Aljosa (Pfaeffikon) Sent: Donnerstag, 28. April 2016 15:06 To: Gabor Grothendieck Cc: r-help@r-project.org Subject: Re: [R] Linear Regressions with constraint coefficients Thx a lot Gabor! Aljosa Aleksandrovic, FRM, CAIA Quantitative Analyst - Convertibles aljosa.aleksandro...@man.com Tel +41 55 417 76 03 Man Investments (CH) AG Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland -----Original Message----- From: Gabor Grothendieck [mailto:ggrothendi...@gmail.com] Sent: Donnerstag, 28. April 2016 14:48 To: Aleksandrovic, Aljosa (Pfaeffikon) Cc: r-help@r-project.org Subject: Re: [R] Linear Regressions with constraint coefficients The nls2 package can be used to get starting values. On Thu, Apr 28, 2016 at 8:42 AM, Aleksandrovic, Aljosa (Pfaeffikon) <aljosa.aleksandro...@man.com> wrote: > Hi Gabor, > > Thanks a lot for your help! > > I tried to implement your nonlinear least squares solver on my data set. I > was just wondering about the argument start. If I would like to force all my > coefficients to be inside an interval, let’s say, between 0 and 1, what kind > of starting values are normally recommended for the start argument (e.g. > Using a 4 factor model with b1, b2, b3 and b4, I tried start = list(b1 = 0.5, > b2 = 0.5, b3 = 0.5, b4 = 0.5))? I also tried other starting values ... Hence, > the outputs are very sensitive to that start argument? > > Thanks a lot for your answer in advance! > > Kind regards, > Aljosa > > > > Aljosa Aleksandrovic, FRM, CAIA > Quantitative Analyst - Convertibles > aljosa.aleksandro...@man.com > Tel +41 55 417 76 03 > > Man Investments (CH) AG > Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland > > -----Original Message----- > From: Gabor Grothendieck [mailto:ggrothendi...@gmail.com] > Sent: Dienstag, 26. April 2016 17:59 > To: Aleksandrovic, Aljosa (Pfaeffikon) > Cc: r-help@r-project.org > Subject: Re: [R] Linear Regressions with constraint coefficients > > This is a quadratic programming problem that you can solve using > either a quadratic programming solver with constraints or a general > nonlinear solver with constraints. See > https://cran.r-project.org/web/views/Optimization.html > for more info on what is available. > > Here is an example using a nonlinear least squares solver and non-negative > bound constraints. The constraint that the coefficients sum to 1 is implied > by dividing them by their sum and then dividing the coefficients found by > their sum at the end: > > # test data > set.seed(123) > n <- 1000 > X1 <- rnorm(n) > X2 <- rnorm(n) > X3 <- rnorm(n) > Y <- .2 * X1 + .3 * X2 + .5 * X3 + rnorm(n) > > # fit > library(nlmrt) > fm <- nlxb(Y ~ (b1 * X1 + b2 * X2 + b3 * X3)/(b1 + b2 + b3), > data = list(Y = Y, X1 = X1, X2 = X2, X3 = X3), > lower = numeric(3), > start = list(b1 = 1, b2 = 2, b3 = 3)) > > giving the following non-negative coefficients which sum to 1 that are > reasonably close to the true values of 0.2, 0.3 and 0.5: > >> fm$coefficients / sum(fm$coefficients) > b1 b2 b3 > 0.18463 0.27887 0.53650 > > > On Tue, Apr 26, 2016 at 8:39 AM, Aleksandrovic, Aljosa (Pfaeffikon) > <aljosa.aleksandro...@man.com> wrote: >> Hi all, >> >> I hope you are doing well? >> >> I’m currently using the lm() function from the package stats to fit linear >> multifactor regressions. >> >> Unfortunately, I didn’t yet find a way to fit linear multifactor regressions >> with constraint coefficients? I would like the slope coefficients to be all >> inside an interval, let’s say, between 0 and 1. Further, if possible, the >> slope coefficients should add up to 1. >> >> Is there an elegant and not too complicated way to do such a constraint >> regression estimation in R? >> >> I would very much appreciate if you could help me with my issue? >> >> Thanks a lot in advance and kind regards, Aljosa Aleksandrovic >> >> >> >> Aljosa Aleksandrovic, FRM, CAIA >> Quantitative Analyst - Convertibles >> aljosa.aleksandro...@man.com >> Tel +41 55 417 7603 >> >> Man Investments (CH) AG >> Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland >> >> >> -----Original Message----- >> From: Kevin E. Thorpe [mailto:kevin.tho...@utoronto.ca] >> Sent: Dienstag, 26. April 2016 14:35 >> To: Aleksandrovic, Aljosa (Pfaeffikon) >> Subject: Re: Linear Regressions with constraint coefficients >> >> You need to send it to r-help@r-project.org however. >> >> Kevin >> >> On 04/26/2016 08:32 AM, Aleksandrovic, Aljosa (Pfaeffikon) wrote: >>> Ok, will do! Thx a lot! >>> >>> Please find below my request: >>> >>> Hi all, >>> >>> I hope you are doing well? >>> >>> I’m currently using the lm() function from the package stats to fit linear >>> multifactor regressions. >>> >>> Unfortunately, I didn’t yet find a way to fit linear multifactor >>> regressions with constraint coefficients? I would like the slope >>> coefficients to be all inside an interval, let’s say, between 0 and 1. >>> Further, if possible, the slope coefficients should add up to 1. >>> >>> Is there an elegant and not too complicated way to do such a constraint >>> regression estimation in R? >>> >>> I would very much appreciate if you could help me with my issue? >>> >>> Thanks a lot in advance and kind regards, Aljosa Aleksandrovic >>> >>> >>> >>> Aljosa Aleksandrovic, FRM, CAIA >>> Quantitative Analyst - Convertibles >>> aljosa.aleksandro...@man.com >>> Tel +41 55 417 7603 >>> >>> Man Investments (CH) AG >>> Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland >>> >>> >>> -----Original Message----- >>> From: Kevin E. Thorpe [mailto:kevin.tho...@utoronto.ca] >>> Sent: Dienstag, 26. April 2016 14:28 >>> To: Aleksandrovic, Aljosa (Pfaeffikon); r-help-ow...@r-project.org >>> Subject: Re: Linear Regressions with constraint coefficients >>> >>> I believe I approved a message with such a subject. Perhaps there was >>> another layer that subsequently rejected it after that. I didn't notice any >>> unusual content. Try again, making sure you send the message in plain text >>> only. >>> >>> Kevin >>> >>> On 04/26/2016 08:16 AM, Aleksandrovic, Aljosa (Pfaeffikon) wrote: >>>> Do you know where I get help for my issue? >>>> >>>> Thanks in advance and kind regards, Aljosa >>>> >>>> >>>> Aljosa Aleksandrovic, FRM, CAIA >>>> Quantitative Analyst - Convertibles aljosa.aleksandro...@man.com >>>> Tel +41 55 417 7603 >>>> >>>> Man Investments (CH) AG >>>> Huobstrasse 3 | 8808 Pfäffikon SZ | Switzerland >>>> >>>> -----Original Message----- >>>> From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of >>>> r-help-ow...@r-project.org >>>> Sent: Dienstag, 26. April 2016 14:10 >>>> To: Aleksandrovic, Aljosa (Pfaeffikon) >>>> Subject: Linear Regressions with constraint coefficients >>>> >>>> The message's content type was not explicitly allowed >>>> >> >> >> -- >> Kevin E. Thorpe >> Head of Biostatistics, Applied Health Research Centre (AHRC) Li Ka >> Shing Knowledge Institute of St. Michael's Hospital Assistant >> Professor, Dalla Lana School of Public Health University of Toronto >> email: kevin.tho...@utoronto.ca Tel: 416.864.5776 Fax: 416.864.3016 >> >> This email has been sent by a member of the Man group (“Man”). Man’s parent >> company, Man Group plc, is registered in England and Wales (company number >> 08172396) at Riverbank House, 2 Swan Lane, London, EC4R 3AD. >> The contents of this email are for the named addressee(s) only. It >> contains information which may be confidential and privileged. If you >> are not the intended recipient, please notify the sender immediately, >> destroy this email and any attachments and do not otherwise disclose >> or use them. Email transmission is not a secure method of >> communication and Man cannot accept responsibility for the >> completeness or accuracy of this email or any attachments. Whilst Man >> makes every effort to keep its network free from viruses, it does not >> accept responsibility for any computer virus which might be >> transferred by way of this email or any attachments. This email does >> not constitute a request, offer, recommendation or solicitation of >> any kind to buy, subscribe, sell or redeem any investment instruments >> or to perform other such transactions of any kind. Man reserves the >> right to monitor, record and retain all electronic and telephone >> communications through its network in accordance with applicable laws >> and regulations. --UwQe9f5k7pI3vplngP >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> 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. > > > > -- > Statistics & Software Consulting > GKX Group, GKX Associates Inc. > tel: 1-877-GKX-GROUP > email: ggrothendieck at gmail.com -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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. ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.