Actually not sure my previous answer does what you wanted. Using your approach: t2pd=subset(df,grepl("t2",df$Command) & grepl("pd",df$Command)) Should work. I think the regex pattern you are looking for is: Subset(df,grepl("(.* t2.*pd.* )|(.* pd.* t2.*)",df$Command) On Sat, Apr 30, 2016, 7:07 PM Tom Wright <tom at maladmin.com> wrote:> subset(df,grepl("t2|pd",x$Command)) > > > On Sat, Apr 30, 2016 at 2:38 PM, ch.elahe via R-help <r-help at r-project.org > > wrote: > >> Hi all, >> >> I have one factor variable in my df and I want to extract the names from >> it which contain both "t2" and "pd": >> >> 'data.frame': 36919 obs. of 162 variables >> $TE :int 38,41,11,52,48,75,..... >> $TR :int 100,210,548,546,..... >> $Command :factor W/2229 levels >> "_localize_PD","_localize_tre_t2","_abdomen_t1_seq","knee_pd_t1_localize","pd_local_abdomen_t2"... >> >> I have tried this but I did not get result: >> >> t2pd=subset(df,grepl("t2",Command) & grepl("pd",Command)) >> >> >> does anyone know how to apply AND in grepl? >> >> Thanks >> Elahe >> >> ______________________________________________ >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >> 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]]
Thanks for your reply tom. After using Subset(df,grepl("(.*t2.*pd.*)|(.*pd.*t2.*)"),df$Command) I get this error: Argument "x" is missing, with no default. Actually I don't know how to fix this. Do you have any idea? Thanks, Elahe On Saturday, April 30, 2016 7:35 PM, Tom Wright <tom at maladmin.com> wrote: Actually not sure my previous answer does what you wanted. Using your approach: t2pd=subset(df,grepl("t2",df$Command) & grepl("pd",df$Command)) Should work. I think the regex pattern you are looking for is: Subset(df,grepl("(.* t2.*pd.* )|(.* pd.* t2.*)",df$Command) On Sat, Apr 30, 2016, 7:07 PM Tom Wright <tom at maladmin.com> wrote: subset(df,grepl("t2|pd",x$Command))> > > > >On Sat, Apr 30, 2016 at 2:38 PM, ch.elahe via R-help <r-help at r-project.org> wrote: > >Hi all, >> >>I have one factor variable in my df and I want to extract the names from it which contain both "t2" and "pd": >> >> 'data.frame': 36919 obs. of 162 variables >> $TE :int 38,41,11,52,48,75,..... >> $TR :int 100,210,548,546,..... >> $Command :factor W/2229 levels "_localize_PD","_localize_tre_t2","_abdomen_t1_seq","knee_pd_t1_localize","pd_local_abdomen_t2"... >> >>I have tried this but I did not get result: >> >> t2pd=subset(df,grepl("t2",Command) & grepl("pd",Command)) >> >> >>does anyone know how to apply AND in grepl? >> >>Thanks >>Elahe >> >>______________________________________________ >>R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>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. >>.
On 02 May 2016, at 12:43 , ch.elahe via R-help <r-help at r-project.org> wrote:> Thanks for your reply tom. After using Subset(df,grepl("(.*t2.*pd.*)|(.*pd.*t2.*)"),df$Command) I get this error: Argument "x" is missing, with no default. Actually I don't know how to fix this. Do you have any idea?Tom's code was missing a ")" but not where you put one. He probably also didn't intend to capitalize "subset". -pd> Thanks, > Elahe > > > On Saturday, April 30, 2016 7:35 PM, Tom Wright <tom at maladmin.com> wrote: > > > > Actually not sure my previous answer does what you wanted. Using your approach: > t2pd=subset(df,grepl("t2",df$Command) & grepl("pd",df$Command)) > Should work. > I think the regex pattern you are looking for is: > Subset(df,grepl("(.* t2.*pd.* )|(.* pd.* t2.*)",df$Command) > > On Sat, Apr 30, 2016, 7:07 PM Tom Wright <tom at maladmin.com> wrote: > > subset(df,grepl("t2|pd",x$Command)) >> >> >> >> >> On Sat, Apr 30, 2016 at 2:38 PM, ch.elahe via R-help <r-help at r-project.org> wrote: >> >> Hi all, >>> >>> I have one factor variable in my df and I want to extract the names from it which contain both "t2" and "pd": >>> >>> 'data.frame': 36919 obs. of 162 variables >>> $TE :int 38,41,11,52,48,75,..... >>> $TR :int 100,210,548,546,..... >>> $Command :factor W/2229 levels "_localize_PD","_localize_tre_t2","_abdomen_t1_seq","knee_pd_t1_localize","pd_local_abdomen_t2"... >>> >>> I have tried this but I did not get result: >>> >>> t2pd=subset(df,grepl("t2",Command) & grepl("pd",Command)) >>> >>> >>> does anyone know how to apply AND in grepl? >>> >>> Thanks >>> Elahe >>> >>> ______________________________________________ >>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>> 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 at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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.-- Peter Dalgaard, Professor, Center for Statistics, Copenhagen Business School Solbjerg Plads 3, 2000 Frederiksberg, Denmark Phone: (+45)38153501 Office: A 4.23 Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com