Hi, Is it possible (i am sure it is) to subset data from a data.frame on the basis of SQL >LIKE< operator. I.e., i would like to subset a data where only values which contains a string >GP< would be used? Example: Gp<-subset(DF, DF$USCS like >GP<) This like of course is not working, Thanks, m [[alternative HTML version deleted]]
You can use grepl:> dat<-data.frame(test=c("abc","cdf","dabc")) > d<-subset(dat,grepl(test,"abc")) > dtest 1 abc 3 dabc On Mon, May 2, 2011 at 7:03 PM, Matevž Pavlič <matevz.pavlic@gi-zrmk.si>wrote:> Hi, > > > > Is it possible (i am sure it is) to subset data from a data.frame on the > basis of SQL >LIKE< operator. I.e., i would like to subset a data where only > values which contains a string >GP< would be used? > > > > Example: > > > > Gp<-subset(DF, DF$USCS like >GP<) > > > > This like of course is not working, > > > > Thanks, m > > > [[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. >[[alternative HTML version deleted]]
I wonder if grep() will help you? Cheers Andrew On Mon, May 02, 2011 at 11:03:52AM +0200, Matev? Pavli? wrote:> Hi, > > > > Is it possible (i am sure it is) to subset data from a data.frame on the basis of SQL >LIKE< operator. I.e., i would like to subset a data where only values which contains a string >GP< would be used? > > > > Example: > > > > Gp<-subset(DF, DF$USCS like >GP<) > > > > This like of course is not working, > > > > Thanks, m > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at 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.-- Andrew Robinson Program Manager, ACERA Department of Mathematics and Statistics Tel: +61-3-8344-6410 University of Melbourne, VIC 3010 Australia (prefer email) http://www.ms.unimelb.edu.au/~andrewpr Fax: +61-3-8344-4599 http://www.acera.unimelb.edu.au/ Forest Analytics with R (Springer, 2011) http://www.ms.unimelb.edu.au/FAwR/ Introduction to Scientific Programming and Simulation using R (CRC, 2009): http://www.ms.unimelb.edu.au/spuRs/
Hi, When I use your code i get this :>dat<-data.frame(test=c("abc","cdf","dabc"))>d<-subset(dat,grepl(test,"abc"))>dWarning message: In grepl(test, "abc") : argument 'pattern' has length > 1 and only the first element will be used> dtest 1 abc 2 cdf 3 dabc I can't seem to make it work. Also how would i use the grepl() to select only those that are not like i.e. »GP«? Thanks, m From: Steven Kennedy [mailto:stevenkennedy2263@gmail.com] Sent: Monday, May 02, 2011 11:30 AM To: Matevž Pavlič Cc: r-help@r-project.org Subject: Re: [R] subseting data You can use grepl:> dat<-data.frame(test=c("abc","cdf","dabc")) > d<-subset(dat,grepl(test,"abc")) > dtest 1 abc 3 dabc On Mon, May 2, 2011 at 7:03 PM, Matevž Pavlič <matevz.pavlic@gi-zrmk.si> wrote: Hi, Is it possible (i am sure it is) to subset data from a data.frame on the basis of SQL >LIKE< operator. I.e., i would like to subset a data where only values which contains a string >GP< would be used? Example: Gp<-subset(DF, DF$USCS like >GP<) This like of course is not working, Thanks, m [[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. [[alternative HTML version deleted]]