[R] Creating 3 vectors that sum to 1

Greg Snow Greg.Snow at imail.org
Tue Mar 29 19:00:59 CEST 2011


Do a search for Dirichlet, that may give you the tools you need.  Also for plotting 3 vectors that sum to 1, instead of a 3d scatter plot you should look into a triangle or trilinear plot, see ?triplot in the TeachingDemos package (the see also for that help page lists several other implementations in other packages as well).

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Christopher Desjardins
> Sent: Tuesday, March 29, 2011 10:20 AM
> To: r-help at r-project.org
> Subject: [R] Creating 3 vectors that sum to 1
> 
> I have 3 vectors: p1, p2, and p3. I would like each vector to be any
> possible value between 0 and 1 and p1 + p2 + p3 = 1. I want to graph
> these
> and I've thought about using scatterplot3d(). Here's what I have so
> far.
> 
> library(scatterplot3d)
> p1 <- c(1,0,0,.5,.5,0,.5,.25,.25,.34,.33,.33,.8,.1,.1,.9,.05,.05)
> p2 <- c(0,1,0,.5,0,.5,.25,.5,.25,.33,.34,.33,.1,.8,.1,.05,.9,.05)
> p3 <- c(0,0,1,0,.5,.5,.25,.25,.5,.33,.33,.34,.1,.1,.8,.05,.05,.9)
> scatterplot3d(p1,p2,p3)
> 
> 
> However, I wonder if there is an easy way to create vectors p1, p2, and
> p3.
> 
> 	[[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