Hi Vikas, The following works (I'm not very good with sapply, but the for loop is ok if your data set is not huge).
> df <- read.table("test.txt",stringsAsFactors=FALSE) > df V1 V2 V3 V4 V5 V6 V7 V8 V9 1 10 135349467 g G 4 0 0 5 ,,,., 2 10 135349468 t T 2 0 0 5 ,,c., 3 10 135349469 g G 7 0 0 5 ,,a., 4 10 135349470 c C 8 0 0 5 ,,,., 5 10 135349471 a A 10 0 0 5 ,,,., 6 10 135349472 g G 7 0 0 6 aa,.,, 7 10 135349473 g G 7 0 0 6 ,,c.,, 8 10 135349474 g G 4 0 0 6 ,,,.,, 9 10 135349475 a A 8 0 0 6 ,,,.,, 10 10 135349476 t T 1 0 0 6 g,,.,, 11 10 135349477 a A 7 0 0 6 ,,,.,, 12 10 135349478 a A 11 0 0 6 ,,,.,, > > df.rows <- c() > counter <- 0 > > for (i in 1:dim(df)[1]){ + if(grepl('[[:alpha:]]',df[i,9])){ + counter <- counter + 1 + df.rows[counter] <- i + } + } > sf <- df[-df.rows,] > sf V1 V2 V3 V4 V5 V6 V7 V8 V9 1 10 135349467 g G 4 0 0 5 ,,,., 4 10 135349470 c C 8 0 0 5 ,,,., 5 10 135349471 a A 10 0 0 5 ,,,., 8 10 135349474 g G 4 0 0 6 ,,,.,, 9 10 135349475 a A 8 0 0 6 ,,,.,, 11 10 135349477 a A 7 0 0 6 ,,,.,, 12 10 135349478 a A 11 0 0 6 ,,,.,, > df <- df[df.rows,] > df V1 V2 V3 V4 V5 V6 V7 V8 V9 2 10 135349468 t T 2 0 0 5 ,,c., 3 10 135349469 g G 7 0 0 5 ,,a., 6 10 135349472 g G 7 0 0 6 aa,.,, 7 10 135349473 g G 7 0 0 6 ,,c.,, 10 10 135349476 t T 1 0 0 6 g,,.,, Steve On Mon, Jul 25, 2011 at 7:32 AM, Bansal, Vikas <vikas.ban...@kcl.ac.uk> wrote: > Dear all, > > I am using grep but I did not understand the problem as I am doing something > wrong.Please help me. > I am using this code- > > sf=data.frame(sapply(df[],function(x) grep('\\.&\\,', df[,9]))) > > the thing is i have a data frame(df) like this- > > > 10 135349467 g G 4 0 0 5 ,,,., > 10 135349468 t T 2 0 0 5 ,,c., > 10 135349469 g G 7 0 0 5 ,,a., > 10 135349470 c C 8 0 0 5 ,,,., > 10 135349471 a A 10 0 0 5 ,,,., > 10 135349472 g G 7 0 0 6 aa,.,, > 10 135349473 g G 7 0 0 6 ,,c.,, > 10 135349474 g G 4 0 0 6 ,,,.,, > 10 135349475 a A 8 0 0 6 ,,,.,, > 10 135349476 t T 1 0 0 6 g,,.,, > 10 135349477 a A 7 0 0 6 ,,,.,, > 10 135349478 a A 11 0 0 6 ,,,.,, > > I want to delete those rows which contains only . and , in column 9. > and i want to store those rows in new data frame sf. > > so my output should be- > > df > > > 10 135349468 t T 2 0 0 5 ,,c., > 10 135349469 g G 7 0 0 5 ,,a., > 10 135349472 g G 7 0 0 6 aa,.,, > 10 135349473 g G 7 0 0 6 ,,c.,, > 10 135349476 t T 1 0 0 6 g,,.,, > > > sf > > 10 135349467 g G 4 0 0 5 ,,,., > 10 135349470 c C 8 0 0 5 ,,,., > 10 135349471 a A 10 0 0 5 ,,,., > 10 135349474 g G 4 0 0 6 ,,,.,, > 10 135349475 a A 8 0 0 6 ,,,.,, > 10 135349477 a A 7 0 0 6 ,,,.,, > 10 135349478 a A 11 0 0 6 ,,,.,, > > > > Thanking you, > Warm Regards > Vikas Bansal > Msc Bioinformatics > Kings College London > ______________________________________________ > 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. > ______________________________________________ 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.