On Aug 14, 2014, at 9:06 AM, David Winsemius wrote:

> 
> On Aug 14, 2014, at 7:17 AM, Jan Stanstrup wrote:
> 
>> Thank you very much for this snippet!
>> 
>> I used it on my data and indeed it does give intervals which appear quite 
>> realistic (script and data here 
>> https://github.com/stanstrup/retpred_shiny/blob/master/retdb_admin/make_predictions_CI_tests.R).
>> I also tried getting the intervals with predict.cobs but the methods 
>> available there gave very narrow bands.
>> The only problem I can see is that the fit tend to be a bit on the smooth 
>> side. See for example the upper interval limits at x = 2 to 3 and x =1.2. If 
>> then I set lambda to something low like 0.05 the band narrows to nearly 
>> nothing when there are few points. For example at x = 2.5. Is there some 
>> other parameter I would be adjusting?
>> 
> 
> Try specifying the number and location of the knots (using my example data):
> 
>> Rbs.9 <- cobs(age,analyte,constraint="increase",tau=0.9, nknots=6, 
>> knots=seq(60,85,by=5))
>> plot(age,analyte, ylim=c(0,2000))
>> lines(predict(Rbs.9), col = 2, lwd = 1.5)

My png file seems to have gotten stripped (try again):




(Not responding directly to Jan Stanstrup because his email address seems to 
force holdup in the moderation queue.)

-- 
David.
> 
> 
> 
> -- 
> David.
> 
>> 
>> 
>> ---------------------- 
>> Jan Stanstrup 
>> Postdoc 
>> 
>> Metabolomics 
>> Food Quality and Nutrition 
>> Fondazione Edmund Mach 
>> 
>> 
>> 
>> On 08/14/2014 02:02 AM, David Winsemius wrote:
>>> 
>>> On Aug 12, 2014, at 8:40 AM, Bert Gunter wrote:
>>> 
>>>> PI's of what? -- future individual values or mean values?
>>>> 
>>>> I assume quantreg provides quantiles for the latter, not the former.
>>>> (See ?predict.lm for a terse explanation of the difference).
>>> 
>>> I probably should have questioned the poster about what was meant by a 
>>> "prediction interval for a monotonic loess curve". I was suggesting 
>>> quantile regression for estimation of a chosen quantile, say the 90th 
>>> percentile. I was thinking it could produce the analogue of a 90th 
>>> percentile value (with no         reference to a mean value or use of 
>>> presumed distribution within adjacent windows of say 100-150 points. I had 
>>> experience using the cobs function (in the package of the same name) as 
>>> Koenker illustrates:
>>> 
>>> age <- runif(1000,min=60,max=85)
>>> 
>>> analyte <- rlnorm(1000,4*(age/60),age/60)
>>> plot(age,analyte)
>>> 
>>> library(cobs)
>>> library(quantreg)
>>> Rbs.9 <- cobs(age,analyte, constraint="increase",tau=0.9) 
>>> Rbs.median <- cobs(age,analyte,constraint="increase",tau=0.5)
>>> 
>>> png("cobs.png"); plot(age,analyte, ylim=c(0,2000))
>>> lines(predict(Rbs.9), col = "red", lwd = 1.5)
>>> lines(predict(Rbs.median), col = "blue", lwd = 1.5)
>>> dev.off()
>>> <Mail Attachment.png>
>>> 
>>> -- David
>>> 
>>> 
>>>> obtainable from bootstrapping but the details depend on what you are
>>>> prepared to assume. Consult references or your local statistician for
>>>> help if needed.
>>>> 
>>>> -- Bert
>>>> 
>>>> Bert Gunter
>>>> Genentech Nonclinical Biostatistics
>>>> (650) 467-7374
>>>> 
>>>> "Data is not information. Information is not knowledge. And knowledge
>>>> is certainly not wisdom."
>>>> Clifford Stoll
>>>> 
>>>> 
>>>> 
>>>> 
>>>> On Tue, Aug 12, 2014 at 8:20 AM, David Winsemius <dwinsem...@comcast.net> 
>>>> wrote:
>>>>> 
>>>>> On Aug 12, 2014, at 12:23 AM, Jan Stanstrup wrote:
>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> I am trying to find a way to estimate prediction intervals (PI) for a 
>>>>>> monotonic loess curve using bootstrapping.
>>>>>> 
>>>>>> At the moment my approach is to use the boot function from the boot 
>>>>>> package to bootstrap my loess model, which consist of loess + monoproc 
>>>>>> from the monoproc package (to force the fit to be monotonic which gives 
>>>>>> me much improved results with my particular data). The output from the 
>>>>>> monoproc package is simply the fitted y values at each x-value.
>>>>>> I then use boot.ci (again from the boot package) to get confidence 
>>>>>> intervals. The problem is that this gives me confidence intervals (CI) 
>>>>>> for the "fit" (is there a proper way to specify this?) and not a 
>>>>>> prediction interval. The interval is thus way too optimistic to give me 
>>>>>> an idea of the confidence interval of a predicted value.
>>>>>> 
>>>>>> For linear models predict.lm can give PI instead of CI by setting 
>>>>>> interval = "prediction". Further discussion of that here:
>>>>>> http://stats.stackexchange.com/questions/82603/understanding-the-confidence-band-from-a-polynomial-regression
>>>>>> http://stats.stackexchange.com/questions/44860/how-to-prediction-intervals-for-linear-regression-via-bootstrapping.
>>>>>> 
>>>>>> However I don't see a way to do that for boot.ci. Does there exist a way 
>>>>>> to get PIs after bootstrapping? If some sample code is required I am 
>>>>>> more than happy to supply it but I thought the question was general 
>>>>>> enough to be understandable without it.
>>>>>> 
>>>>> 
>>>>> Why not use the quantreg package to estimate the quantiles of interest to 
>>>>> you? That way you would not be depending on Normal theory assumptions 
>>>>> which you apparently don't trust. I've used it with the `cobs` function 
>>>>> from the package of the same name to implement the monotonic constraint. 
>>>>> I think there is a worked example in the quantreg package, but since I 
>>>>> bought Koenker's book, I may be remembering from there.
>>>>> --
>>>>> 
>>>>> David Winsemius
>>>>> Alameda, CA, USA
>>>>> 
>>>>> ______________________________________________
>>>>> R-help@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.
>>> 
>>> David Winsemius
>>> Alameda, CA, USA
>>> 
>> 
>> <boot2ci_PI.png><cobs.png>
> 
> David Winsemius
> Alameda, CA, USA
> 
> ______________________________________________
> R-help@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.

David Winsemius
Alameda, CA, USA

______________________________________________
R-help@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.

Reply via email to