[R] Sum up the values of a function
Petr Pikal
petr.pikal at precheza.cz
Sat Jun 11 12:50:58 CEST 2005
Hi
On 10 Jun 2005 at 13:58, Stefan Wagner wrote:
> I am really sorry, that the code appears in a bad way but it is really
> not my fault (at least I think so). I think my mail-programm is
> responsible for it because I sent it in a "normal" way without havin g
> trouble with my space bar. Here are the missing values (but please
> remember, this is only a short example, normally there are more than
> 400 values) x1 <- c(34.67,19.91,47.48,22.48,17.34,24.42) m1 <-
> c(1,0,0,0,0,0) n1 <- c(1,1,1,1,1,1) dec1 <- c(0,0,0,0,1,0) x2 <-
> c(50.98,30.63,31.37,21.17,21.49,39.41,46.85,38.08) m2 <-
> c(1,0,0,0,1,0,2,1) n2 <- c(3,3,3,3,3,3,3,3) dec2 <- c(0,0,0,0,0,0,0,0)
>
> I hope this is all you need,
Well, actually I am not sure why you do all computations in so
many functions. It will hide all things and one should go through all
of them step by step without much knowledge why they are
constructed this way.
Maybe some other list member can give you any reasonable advice.
Sorry I could not give you some positive answer.
Petr
>
> Stefan
>
> Zitat von Petr Pikal <petr.pikal at precheza.cz>:
>
> > Hi
> >
> > Your example is not reproducible as we do not know x1.
> > Do you by chance seek for something like aggregate? If yes see
> >
> > ?aggregate
> > or
> > ?by
> >
> > BTW, do you have some trouble with your space bar?
> >
> > HTH
> >
> > Petr
> >
> > On 10 Jun 2005 at 13:08, Stefan Wagner wrote:
> >
> >> Dear R-Users,
> >>
> >> I have to do a maximum-likelihood estimation and have now a problem
> >> concerning how to sum up my function values in a smart way. I don't
> >> know how to explain it easyly, so I give you the code and show you
> >> where my problem is. I have shorten the code a little bit, so that
> >> you only get the necessary facts:
> >>
> >> ws12 <- function (z, i) (1/(1+exp(z[1]*(z[3]-x1[i]-
> >> z[4]*(m1[i]/n1[i]-0.5))))) ws37 <- function (z, i)
> >> (1/(1+exp(z[2]*(z[3]-x2[i]- z[5]*(m2[i]/n2[i]-0.5))))) wsAttack12
> >> <- function (z,i) (ws12(z,i)*dec1[i]+(1-ws12(z,i))*(1-dec1[i]))
> >> wsAttack37 <- function (z,i)
> >> (ws37(z,i)*dec2[i]+(1-ws37(z,i))*(1-dec2[i])) logwsAttack12 <-
> >> function (z,i) (log(wsAttack12(z,i))) logwsAttack37 <- function
> >> (z,i) (log(wsAttack37(z,i))) ws12sum <- function (z)
> >> (logwsAttack12(z,i=1)+logwsAttack12(z,i=2)+logwsAttack12(z,i=3)+log
> >> wsA ttack12(z,i=4)+logwsAttack12(z,i=5)+logwsAttack12(z,i=6))
> >> ws37sum <- function (z)
> >> (logwsAttack37(z,i=1)+logwsAttack37(z,i=2)+logwsAttack37(z,i=3)+log
> >> wsA
> >> ttack37(z,i=4)+logwsAttack37(z,i=5)+logwsAttack37(z,i=6)+logwsAttac
> >> k37 (z,i=7)+logwsAttack37(z,i=8)) wsLOG <- function (z) (ws12sum(z)
> >> + ws37sum(z)) LogSum <- function (z) (-sum(wsLOG(z))) SP <- c(0.16,
> >> 0.10, 44, 0.80, 46) out <- nlm (LogSum, p=SP) out
> >>
> >> For explanation: x1[i], x2[i], m1[i], m2[i], n1[i], n2[i] are given
> >> data and z[1:5] are my estimates. My problem is that I have more
> >> than one session with diffent number of datas so that I am
> >> searching for a general way of summing up my logwsAttack12 and
> >> logwsAttack37. The program should recognize how many data are in my
> >> table concerning ws12 and how many concerning ws37 and should, in
> >> dependency of z, sum them up. I hope you understand my problem and
> >> hopefully someone is able to solve it. Many thanks for the moment.
> >>
> >> Best regards,
> >>
> >> Stefan Wagner
> >>
> >> ______________________________________________
> >> R-help at stat.math.ethz.ch mailing list
> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> PLEASE do read the posting guide!
> >> http://www.R-project.org/posting-guide.html
> >
> > Petr Pikal
> > petr.pikal at precheza.cz
> >
> >
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide!
> http://www.R-project.org/posting-guide.html
Petr Pikal
petr.pikal at precheza.cz
More information about the R-help
mailing list