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 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