Hi,
Try this: dat1<-read.table(text=" 1 0000000000D0000000000000000000000000000000000000 0.007368; 2 0000000000d0000000000000000000000000000000000000 0.002456; 3 000000000T00000000000000000000000000000000000000 0.007368; 4 000000000TD0000000000000000000000000000000000000 0.007368; 5 000000000T00000000000000000000000000000000000000 0.002456; 6 000000000Td0000000000000000000000000000000000000 0.002456; 7 00000000T000000000000000000000000000000000000000 0.007368; 8 00000000T0D0000000000000000000000000000000000000 0.007368; 9 00000000T000000000000000000000000000000000000000 0.002456; 10 00000000T0d0000000000000000000000000000000000000 0.002456; ",sep="",header=FALSE) colnames(dat1)<-c("num","Ch", "count") #I guess this is what you wanted. dat1[grepl("TD|Td|T",dat1$Ch),] num Ch count 3 3 000000000T00000000000000000000000000000000000000 0.007368; 4 4 000000000TD0000000000000000000000000000000000000 0.007368; 5 5 000000000T00000000000000000000000000000000000000 0.002456; 6 6 000000000Td0000000000000000000000000000000000000 0.002456; 7 7 00000000T000000000000000000000000000000000000000 0.007368; 8 8 00000000T0D0000000000000000000000000000000000000 0.007368; 9 9 00000000T000000000000000000000000000000000000000 0.002456; 10 10 00000000T0d0000000000000000000000000000000000000 0.002456; #If you want to remove D or d rows dat1[!grepl("D|d",dat1$Ch),] num Ch count 3 3 000000000T00000000000000000000000000000000000000 0.007368; 5 5 000000000T00000000000000000000000000000000000000 0.002456; 7 7 00000000T000000000000000000000000000000000000000 0.007368; 9 9 00000000T000000000000000000000000000000000000000 0.002456; A.K. ----- Original Message ----- From: Claudia Penaloza <claudiapenal...@gmail.com> To: r-help@r-project.org Cc: Sent: Monday, July 2, 2012 6:48 PM Subject: [R] Removing rows if certain elements are found in character string I would like to remove rows from the following data frame (df) if there are only two specific elements found in the df$ch character string (I want to remove rows with only "0" & "D" or "0" & "d"). Alternatively, I would like to remove rows if the first non-zero element is "D" or "d". ch count 1 0000000000D0000000000000000000000000000000000000 0.007368; 2 0000000000d0000000000000000000000000000000000000 0.002456; 3 000000000T00000000000000000000000000000000000000 0.007368; 4 000000000TD0000000000000000000000000000000000000 0.007368; 5 000000000T00000000000000000000000000000000000000 0.002456; 6 000000000Td0000000000000000000000000000000000000 0.002456; 7 00000000T000000000000000000000000000000000000000 0.007368; 8 00000000T0D0000000000000000000000000000000000000 0.007368; 9 00000000T000000000000000000000000000000000000000 0.002456; 10 00000000T0d0000000000000000000000000000000000000 0.002456; I tried the following but it doesn't work if there is more than one character per string: >df <- df[!df$ch %in% c("0","D"),] >df <- df[!df$ch %in% c("0","d"),] Any help greatly appreciated, Claudia [[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. ______________________________________________ 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.