Re: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ? Thanks
Thank you all for all your answers. I see than there are many ways to solve my question ! Thank you very much. __ R-help@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
Re: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ?
or maybe something like this x- sample(c(1, -1), 100, TRUE); t - p - 0 for (i in 1: (lenght(x)-2)) { if (x[i]+x[i+1]+x[i+2] == 3) t- t+1; if (x[i]+x[i+1]+x[i+2] == -3) p-p+1} P1-t/length(x); P2-p/length(x) Tom Dimitris Rizopoulos [EMAIL PROTECTED] wrote: maybe something like this: x - sample(c(1, -1), 100, TRUE) y - rle(x) ## ind1 - y$length[y$value == 1] sum(ind1[ind1 2] - 2) ind2 - y$length[y$value == -1] ## sum(ind1[ind1 2] - 2) could be helpful. Best, Dimitris Dimitris Rizopoulos Ph.D. Student Biostatistical Centre School of Public Health Catholic University of Leuven Address: Kapucijnenvoer 35, Leuven, Belgium Tel: +32/16/336899 Fax: +32/16/337015 Web: http://www.med.kuleuven.ac.be/biostat/ http://www.student.kuleuven.ac.be/~m0390867/dimitris.htm - Original Message - From: vincent To: Sent: Monday, April 25, 2005 6:03 PM Subject: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ? Dear all, First I apologize if my question is quite simple, but i'm very newbie with R. I have vectors of the form v = c(1,1,-1,-1,-1,1,1,1,1,-1,1) (longer than this one of course). The elements are only +1 or -1. I would like to calculate : - the frequencies of -1 occurences after 2 consecutives -1 - the frequencies of +1 occurences after 2 consecutives +1 It looks probably something like : Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) could someone please give me a little hint about how i should/could begin to proceed ? Thanks (Thanks also to the R creators/contributors, this soft seems really great !) __ R-help@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 __ R-help@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 __ [[alternative HTML version deleted]] __ R-help@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
Re: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ?
table() can return all the n-gram statistics, e.g.: v - sample(c(-1,1), 1000, rep=TRUE) table(v_{t-2}=v[-seq(to=length(v), len=2)], v_{t-1}=v[-c(1,length(v))], v_t=v[-(1:2)]) , , v_t = -1 v_{t-1} v_{t-2} -1 1 -1 136 134 1 131 112 , , v_t = 1 v_{t-1} v_{t-2} -1 1 -1 131 113 1 115 126 This says that there were 136 cases in which a -1 followed two -1's (and 126 cases in which a 1 followed to 1's). If you're really only interested in particular contexts, you can do something like: table(v[-seq(to=length(v), len=2)]==1 v[-c(1,length(v))]==1 v[-(1:2)]==1) FALSE TRUE 872 126 table(v[-seq(to=length(v), len=2)]==-1 v[-c(1,length(v))]==-1 v[-(1:2)]==-1) FALSE TRUE 862 136 or sum(v[-seq(to=length(v), len=2)]==-1 v[-c(1,length(v))]==-1 v[-(1:2)]==-1) [1] 136 vincent wrote: Dear all, First I apologize if my question is quite simple, but i'm very newbie with R. I have vectors of the form v = c(1,1,-1,-1,-1,1,1,1,1,-1,1) (longer than this one of course). The elements are only +1 or -1. I would like to calculate : - the frequencies of -1 occurences after 2 consecutives -1 - the frequencies of +1 occurences after 2 consecutives +1 It looks probably something like : Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) could someone please give me a little hint about how i should/could begin to proceed ? Thanks (Thanks also to the R creators/contributors, this soft seems really great !) __ R-help@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 __ R-help@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
RE: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ?
These two expressions might be what you are looking for -- sum (3 == x[c(-length(x),-(length(x)-1))]+x[c(-1,-length(x))]+x[c(-1,-2)]) sum (-3 == x[c(-length(x),-(length(x)-1))]+x[c(-1,-length(x))]+x[c(-1,-2)]) Ben Fairbank -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of vincent Sent: Monday, April 25, 2005 11:03 AM To: r-help@stat.math.ethz.ch Subject: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ? Dear all, First I apologize if my question is quite simple, but i'm very newbie with R. I have vectors of the form v = c(1,1,-1,-1,-1,1,1,1,1,-1,1) (longer than this one of course). The elements are only +1 or -1. I would like to calculate : - the frequencies of -1 occurences after 2 consecutives -1 - the frequencies of +1 occurences after 2 consecutives +1 It looks probably something like : Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) could someone please give me a little hint about how i should/could begin to proceed ? Thanks (Thanks also to the R creators/contributors, this soft seems really great !) __ R-help@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 __ R-help@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
Re: [R] Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) ?
On 4/25/05, vincent [EMAIL PROTECTED] wrote: Dear all, First I apologize if my question is quite simple, but i'm very newbie with R. I have vectors of the form v = c(1,1,-1,-1,-1,1,1,1,1,-1,1) (longer than this one of course). The elements are only +1 or -1. I would like to calculate : - the frequencies of -1 occurences after 2 consecutives -1 - the frequencies of +1 occurences after 2 consecutives +1 It looks probably something like : Proba( Ut+2=1 / ((Ut+1==1) (Ut==1))) could someone please give me a little hint about how i should/could begin to proceed ? Let v be a time series. Then lag(v, -1) is the same series moved forward by one and lag(v, -2) is the same series moved forward by two. Now we just want to know if all three are equal to -1 (or +1 in the other case): v - ts(c(1,1,-1,-1,-1,1,1,1,1,-1,1)) sum( lag(v, -2) == -1 lag(v,-1) == -1 v == -1 ) sum( lag(v, -2) == 1 lag(v,-1) == 1 v == 1 ) Using ts objects in this way has the nice property that it takes care of alignment and end effects for you automatically. [[alternative HTML version deleted]] __ R-help@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