Re: [R] inverse of which()
That's exactly what I want! Thanks! -Ed On Wed, Feb 27, 2019 at 5:14 PM David L Carlson wrote: > > I'm not sure I completely understand your question. Would using grepl() > instead of grep() let you do what you want? > > > David L Carlson > Department of Anthropology > Texas A University > College Station, TX 77843-4352 > > -Original Message- > From: R-help On Behalf Of Ed Siefker > Sent: Wednesday, February 27, 2019 5:03 PM > To: r-help > Subject: [R] inverse of which() > > Given a vector of booleans, chich() will return indices that are TRUE. > > Given a vector of indices, how can I get a vector of booleans? > > My intent is to do logical operations on the output of grep(). Maybe > there's a better way to do this? > > Thanks > -Ed > > __ > R-help@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@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.
Re: [R] inverse of which()
The inverse of which() would have to know the length of the logical vector to create. The function could be invWhich <- function(whichTrue, length) { stopifnot(length <= max(whichTrue), !anyNA(whichTrue)) v <- logical(length) v[whichTrue] <- TRUE v } It isn't quite an inverse, as which() treats NA and FALSE the same. Much of the time dealing with the logical vector (e.g, grepl() instead of grep()) is less error prone than using which() to convert to indices of the TRUE values. Bill Dunlap TIBCO Software wdunlap tibco.com On Wed, Feb 27, 2019 at 3:04 PM Ed Siefker wrote: > Given a vector of booleans, chich() will return indices that are TRUE. > > Given a vector of indices, how can I get a vector of booleans? > > My intent is to do logical operations on the output of grep(). Maybe > there's a better way to do this? > > Thanks > -Ed > > __ > R-help@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]] __ R-help@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.
Re: [R] inverse of which()
use grepl? On February 27, 2019 3:03:27 PM PST, Ed Siefker wrote: >Given a vector of booleans, chich() will return indices that are TRUE. > >Given a vector of indices, how can I get a vector of booleans? > >My intent is to do logical operations on the output of grep(). Maybe >there's a better way to do this? > >Thanks >-Ed > >__ >R-help@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. -- Sent from my phone. Please excuse my brevity. __ R-help@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.
Re: [R] inverse of which()
I'm not sure I completely understand your question. Would using grepl() instead of grep() let you do what you want? David L Carlson Department of Anthropology Texas A University College Station, TX 77843-4352 -Original Message- From: R-help On Behalf Of Ed Siefker Sent: Wednesday, February 27, 2019 5:03 PM To: r-help Subject: [R] inverse of which() Given a vector of booleans, chich() will return indices that are TRUE. Given a vector of indices, how can I get a vector of booleans? My intent is to do logical operations on the output of grep(). Maybe there's a better way to do this? Thanks -Ed __ R-help@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@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] inverse of which()
Given a vector of booleans, chich() will return indices that are TRUE. Given a vector of indices, how can I get a vector of booleans? My intent is to do logical operations on the output of grep(). Maybe there's a better way to do this? Thanks -Ed __ R-help@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.