I suppose the easiest way to make this is to use loops and construct a zero
matrix to be completed each time the sequence accompleixes, don´t you?

I will try this evening¡¡¡



2011/7/2 Trying To learn again <tryingtolearnag...@gmail.com>

> Hi all,
>
> I have a data matrix likein "input.txt"
>
> 8 9 2 5 4 5 8 5 6 6
> 8 9 2 8 9 2 8 9 2 1
> 8 9 2 5 4 5 8 5 6 4
>  8 9 2 5 4 5 8 5 6 6
> 8 9 2 8 9 2 8 9 2 1
> 8 9 2 5 4 5 8 9 2   2
>
>
> In this example will be an  6x10 matrix (or data frame)
>
> I want to detect how many times in a row appears this combination  8
> follewd by 9 followed by 2, and create a new matrix with only this number of
> occurs then if this number is less than "n" I keep the row. For example in
> the last row the number n will be 2 because "series" 8 9 2 appears 2 times
> in the same row.
>
> I tried this, but doesn´t works....also tried other thinks but also the
> same results:
>
> *dat<-read.table('input1.txt')*
> **
> **
> *dat1 <- dat[ dat[,1]=8 & dat[,2]=9  & dat[,3]=2 ,]=1*
> *dat2<-dat[(dat[,2]= 8  & dat[,3]=9  & dat[,4]=2),]=1*
> *dat3<-dat[(dat[,5]=8   & dat[,4]=9  & dat[,5]=2),]=1*
> *dat4<-dat[(dat[,4]=8 &   dat[,5]=9  & dat[,6]=2),]=1*
> *dat5<-dat[(dat[,5]=8 &   dat[,6]=9  & dat[,7]=2),]=1*
> *dat6<-dat[(dat[,6]=8 &   dat[,7]=9  & dat[,8]=2),6]=1*
> *dat7<-dat[(dat[,7]=8 &    dat[,8]=9 & dat[,9]=2),7]=1*
> *dat8<-dat[(dat[,8]=8 &    dat[,9]=9 & dat[,10]=2),8]=1*
> **
> datfinal<-dat1+da2+dat3+dat4+dat5+dat6+dat7+dat8
>
> final2 <- dat[ rowSums(datfinal) < 2 , ]
>
> So my last matrix "final2" will be "dat" without the rows that doesn´t pass
> the conditions.
>
>
>

        [[alternative HTML version deleted]]

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

Reply via email to