[R] How to use Lines function to draw the error bars?

David L Carlson dcarlson at tamu.edu
Mon Oct 8 23:29:56 CEST 2012


If you had provided reproducible code, you would already have your answer.
You should spend a few hours with one or more of the freely available R
tutorials. In your original post you have the line:

prd<-predict.lm(fit,newdata,interval=c("confidence"),level=0.95)

?predict.lm tells you that the function returns a matrix (in your case prd)
so either of the following should work:

library(plotrix)

plotCI( x=1:15, y=prd$fit, ui=prd$upr, li=prd$lwr)

or

plotCI( x=1:15, y=prd[,1], ui=prd[,3], li=prd[,2])

This is very basic stuff.

----------------------------------------------
David L Carlson
Associate Professor of Anthropology
Texas A&M University
College Station, TX 77843-4352



> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of liang.che at us.pwc.com
> Sent: Monday, October 08, 2012 4:16 PM
> To: joeclark77 at hotmail.com
> Cc: r-help at r-project.org
> Subject: Re: [R] How to use Lines function to draw the error bars?
> 
> Thanks
> 
> since the 'lwr' and 'upr' are produced from the 'predict' function, do
> I
> need to convert the table into a data frame, then define the 'lwr' and
> 'upr' as the objects?
> 
> upr<-data.frame(prd[,3])
> fix(upr)
> lwr<-data.frame(prd[,2])
> fix(lwr)
> y<-data.frame(prd[,1])
> fix(y)
> plotCI(x=1:15,y=y,uiw=upr,liw=lwr,err=x)
> 
> 
> but I got the following error message:
> 
> Error in xy.coords(x, y, xlabel, ylabel, log) :
>   'x' and 'y' lengths differ
> In addition: Warning message:
> In if (err == "y") z <- y else z <- x :
>   the condition has length > 1 and only the first element will be used
> 
> 
> 
> 
> From:   Joseph Clark <joeclark77 at hotmail.com>
> To:     Liang Che/US/TLS/PwC at Americas-US
> Cc:     <r-help at r-project.org>
> Date:   10/08/2012 05:06 PM
> Subject:        RE: [R] How to use Lines function to draw the error
> bars?
> 
> 
> 
> In my example code, 'fit' and 'upr' and 'lwr' are just the names of the
> data vectors you gave as an example.  If those names aren't correct,
> change them to what you're actually using.  You can also assign your x
> values to x.
> 
> // joseph w. clark , visiting research associate
> \\ university of nebraska at omaha - school of IS&T
> 
> To: joeclark77 at hotmail.com
> CC: r-help at r-project.org
> Subject: RE: [R] How to use Lines function to draw the error bars?
> From: liang.che at us.pwc.com
> Date: Mon, 8 Oct 2012 17:00:56 -0400
> 
> thank you all
> 
> plotCI is probably the closest to what I wanted to do -- draw the
> Confidence Interval curves around the fitted values (fit)
> 
> but I got the following wrong message while I tried plotCI?
> 
> Error in plotCI(x = 1:15, y = fit, ui = upr, li = lwr) :
>   object 'upr' not found
> 
> 
> 
> 
> 
> 
> From:        Joseph Clark <joeclark77 at hotmail.com>
> To:        Liang Che/US/TLS/PwC at Americas-US, <r-help at r-project.org>
> Date:        10/08/2012 04:03 PM
> Subject:        RE: [R] How to use Lines function to draw the error
> bars?
> 
> 
> 
> I typically use the function "plotCI" from the "plotrix" package for
> confidence intervals or error bars.
> The code would be:
> 
> library(plotrix)
> plotCI( x=1:15, y=fit, ui=upr, li=lwr)
> 
> 
> // joseph w. clark , visiting research associate
> \\ university of nebraska at omaha - school of IS&T
> 
> > To: r-help at r-project.org
> > From: liang.che at us.pwc.com
> > Date: Mon, 8 Oct 2012 15:11:53 -0400
> > Subject: [R] How to use Lines function to draw the error bars?
> >
> > fit lwr upr
> > 1 218.4332 90.51019 346.3561
> > 2 218.3906 90.46133 346.3198
> > 3 218.3906 90.46133 346.3198
> > 4 161.3982 44.85702 277.9394
> > 5 192.4450 68.39903 316.4909
> > 6 179.8056 56.49540 303.1158
> > 7 219.5406 91.52707 347.5542
> > 8 162.6761 46.65760 278.6945
> > 9 193.8506 70.59838 317.1029
> > 10 181.3816 58.11305 304.6502
> > 11 221.2871 92.14366 350.4305
> > 12 164.2947 47.91081 280.6785
> > 13 195.3415 72.04109 318.6418
> > 14 182.7447 58.68660 306.8028
> > 15 222.5223 91.86550 353.1791
> >
> >
> > I have tried
> >
> > new<-data.frame(newdata$Unemployment)
> > prd<-predict.lm(fit,newdata,interval=c("confidence"),level=0.95)
> > lines (new,prd[,3],col="red",lty=2)
> >
> > but it didn't give me anything.
> >
> > thanks
> >
> >
> ______________________________________________________________________
> > The information transmitted, including any attachments, is intended
> only
> for the person or entity to which it is addressed and may contain
> confidential and/or privileged material. Any review, retransmission,
> dissemination or other use of, or taking of any action in reliance
> upon,
> this information by persons or entities other than the intended
> recipient
> is prohibited, and all liability arising therefrom is disclaimed. If
> you
> received this in error, please contact the sender and delete the
> material
> from any computer. PricewaterhouseCoopers LLP is a Delaware limited
> liability partnership. This communication may come from
> PricewaterhouseCoopers LLP or one of its subsidiaries.
> >
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > 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.
> 
> The information transmitted, including any attachments, is intended
> only
> for the person or entity to which it is addressed and may contain
> confidential and/or privileged material. Any review, retransmission,
> dissemination or other use of, or taking of any action in reliance
> upon,
> this information by persons or entities other than the intended
> recipient
> is prohibited, and all liability arising therefrom is disclaimed. If
> you
> received this in error, please contact the sender and delete the
> material
> from any computer. PricewaterhouseCoopers LLP is a Delaware limited
> liability partnership. This communication may come from
> PricewaterhouseCoopers LLP or one of its subsidiaries.
> 
> ______________________________________________________________________
> The information transmitted, including any attachments, is intended
> only for the person or entity to which it is addressed and may contain
> confidential and/or privileged material. Any review, retransmission,
> dissemination or other use of, or taking of any action in reliance
> upon, this information by persons or entities other than the intended
> recipient is prohibited, and all liability arising therefrom is
> disclaimed. If you received this in error, please contact the sender
> and delete the material from any computer. PricewaterhouseCoopers LLP
> is a Delaware limited liability partnership.  This communication may
> come from PricewaterhouseCoopers LLP or one of its subsidiaries.
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> 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.




More information about the R-help mailing list