We are interested in obtaining an efficient function that for a given
vector of length t will output a vector of length t+1 that contains the
associated values of the elementary symmetric polynomials in t
variables. Below is what we have at the moment, but it is a little slow
for our needs. Any suggestions?
Thanks ahead of time for any help you can offer,
Austin H. Jones
Department of Mathematics
Wake Forest University
f<-function(v)
{
prodsub<-function(v,q){prod(v[q])}
t<-length(v)
C<-vector("list",t)
for (i in 1:t)
{C[[i]]<-combn(1:t,i)}
e<-rep(0,t)
for (i in 1:(t))
{
e[i]<-sum(apply(C[[i]],2,prodsub,v=v))
}
e<-c(1,e)
e
}
Examples:
> f(c(1,2,3))
[1] 1 6 11 6
> f(c(4,6,3,1,9))
[1] 1 23 193 729 1206 648
______________________________________________
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.