I may not be understanding the question well enough but for me df[ df[ , "first"] != "Alex", ]
seems to do the job: first week last Rainer On Sonntag, 12. Februar 2017 19:04:19 CET Rolf Turner wrote: > > On 12/02/17 18:36, Bert Gunter wrote: > > Basic stuff! > > > > Either subscripting or ?subset. > > > > There are many good R tutorials on the web. You should spend some > > (more?) time with some. > > Uh, Bert, perhaps I'm being obtuse (a common occurrence) but it doesn't > seem basic to me. The only way that I can see how to go at it is via > a for loop: > > rdln <- function(X) { > # Remove discordant last names. > ok <- logical(nrow(X)) > for(nm in unique(X$first)) { > xxx <- unique(X$last[X$first==nm]) > if(length(xxx)==1) ok[X$first==nm] <- TRUE > } > Y <- X[ok,] > Y <- Y[order(Y$first),] > rownames(Y) <- 1:nrow(Y) > Y > } > > Calling the toy data frame "melvin" rather than "df" (since "df" is the > name of the built in F density function, it is bad form to use it as the > name of another object) I get: > > > rdln(melvin) > first week last > 1 Bob 1 John > 2 Bob 2 John > 3 Bob 3 John > 4 Cory 1 Jack > 5 Cory 2 Jack > > which is the desired output. If there is a "basic stuff" way to do this > I'd like to see it. Perhaps I will then be toadally embarrassed, but > they say that this is good for one. > > cheers, > > Rolf > > > On Sat, Feb 11, 2017 at 9:02 PM, Val <valkr...@gmail.com> wrote: > >> Hi all, > >> I have a big data set and want to remove rows conditionally. > >> In my data file each person were recorded for several weeks. Somehow > >> during the recording periods, their last name was misreported. For > >> each person, the last name should be the same. Otherwise remove from > >> the data. Example, in the following data set, Alex was found to have > >> two last names . > >> > >> Alex West > >> Alex Joseph > >> > >> Alex should be removed from the data. if this happens then I want > >> remove all rows with Alex. Here is my data set > >> > >> df <- read.table(header=TRUE, text='first week last > >> Alex 1 West > >> Bob 1 John > >> Cory 1 Jack > >> Cory 2 Jack > >> Bob 2 John > >> Bob 3 John > >> Alex 2 Joseph > >> Alex 3 West > >> Alex 4 West ') > >> > >> Desired output > >> > >> first week last > >> 1 Bob 1 John > >> 2 Bob 2 John > >> 3 Bob 3 John > >> 4 Cory 1 Jack > >> 5 Cory 2 Jack > > ______________________________________________ > 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.