Re: [R] equating approximate values
Change which to which.min, but then you won't easily be able to get the corresponding x,y indices. Look at the arrayInd() function to translate the result to a particular x,y. Michael On Dec 4, 2011, at 7:04 PM, vamshi999 vamshi...@gmail.com wrote: this is exactly what i wanted. How to i select only the minimum value from this?. thank you My apologies: you need an abs() call as well: which(abs(outer(x, y, -)) threshold, arr.ind = TRUE) Michael -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4158691.html Sent from the R help mailing list archive at Nabble.com. __ 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.
Re: [R] equating approximate values
On Dec 5, 2011, at 8:02 AM, R. Michael Weylandt wrote: Change which to which.min, but then you won't easily be able to get the corresponding x,y indices. Look at the arrayInd() function to translate the result to a particular x,y. The arrayInd help page is shared by the which help and which has an arr.ind=TRUE option that let's you encapsulate both steps: which( abs(outer(x, y, -)) == min(abs(outer(x, y, -))), arr.ind=TRUE) Michael On Dec 4, 2011, at 7:04 PM, vamshi999 vamshi...@gmail.com wrote: this is exactly what i wanted. How to i select only the minimum value from this?. thank you My apologies: you need an abs() call as well: which(abs(outer(x, y, -)) threshold, arr.ind = TRUE) Michael -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4158691.html Sent from the R help mailing list archive at Nabble.com. __ 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. David Winsemius, MD West Hartford, CT __ 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] equating approximate values
Hello List, I am having trouble finding the command for my problem. I have two arrays x and y. now i would like to compare the values of x and y and then get the index of x which is exactly or approximately equal(+/- some value ) to the values in y. x - runif(100,min=0,max=5) y - runif(10,min=0,max=5) the threshold value(+/-) value can vary. for this example lets take it to be .5 I know the regular method of doing this by writing different if and for loops. But i have very big dataframe the computation time is very high for this method. can anyone please tell me if there any functions to do this. thank you for your help. -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4157551.html Sent from the R help mailing list archive at Nabble.com. __ 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.
Re: [R] equating approximate values
Hi. Maybe this can help you (you can try additionally to incorporate threshold): set.seed(1) x-rnorm(10,10,1) values - sample(1:10,10) #values that we are looking for mat - matrix(c(x,values),ncol=2) closest-function(x,values)#function is an example from The R book (Crawley) + { + x[which(abs(x-values)==min(abs(x-values)))] + } apply(mat[,2,drop=FALSE],1,function(y) closest(mat[,1],y)) [1] 10.183643 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 [9] 9.164371 9.164371 On Sun, Dec 4, 2011 at 7:00 PM, vamshi999 vamshi...@gmail.com wrote: Hello List, I am having trouble finding the command for my problem. I have two arrays x and y. now i would like to compare the values of x and y and then get the index of x which is exactly or approximately equal(+/- some value ) to the values in y. x - runif(100,min=0,max=5) y - runif(10,min=0,max=5) the threshold value(+/-) value can vary. for this example lets take it to be .5 I know the regular method of doing this by writing different if and for loops. But i have very big dataframe the computation time is very high for this method. can anyone please tell me if there any functions to do this. thank you for your help. -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4157551.html Sent from the R help mailing list archive at Nabble.com. __ 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]] __ 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.
Re: [R] equating approximate values
Not sure what to make of the fact that your x, y are of different lengths: if you mean to check all possible pairings, this is probably what you need: which(outer(x, y, -) threshold, arr.ind = TRUE) Michael On Sun, Dec 4, 2011 at 2:24 PM, andrija djurovic djandr...@gmail.com wrote: Hi. Maybe this can help you (you can try additionally to incorporate threshold): set.seed(1) x-rnorm(10,10,1) values - sample(1:10,10) #values that we are looking for mat - matrix(c(x,values),ncol=2) closest-function(x,values) #function is an example from The R book (Crawley) + { + x[which(abs(x-values)==min(abs(x-values)))] + } apply(mat[,2,drop=FALSE],1,function(y) closest(mat[,1],y)) [1] 10.183643 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 [9] 9.164371 9.164371 On Sun, Dec 4, 2011 at 7:00 PM, vamshi999 vamshi...@gmail.com wrote: Hello List, I am having trouble finding the command for my problem. I have two arrays x and y. now i would like to compare the values of x and y and then get the index of x which is exactly or approximately equal(+/- some value ) to the values in y. x - runif(100,min=0,max=5) y - runif(10,min=0,max=5) the threshold value(+/-) value can vary. for this example lets take it to be .5 I know the regular method of doing this by writing different if and for loops. But i have very big dataframe the computation time is very high for this method. can anyone please tell me if there any functions to do this. thank you for your help. -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4157551.html Sent from the R help mailing list archive at Nabble.com. __ 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]] __ 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.
Re: [R] equating approximate values
My apologies: you need an abs() call as well: which(abs(outer(x, y, -)) threshold, arr.ind = TRUE) Michael On Sun, Dec 4, 2011 at 6:25 PM, R. Michael Weylandt michael.weyla...@gmail.com wrote: Not sure what to make of the fact that your x, y are of different lengths: if you mean to check all possible pairings, this is probably what you need: which(outer(x, y, -) threshold, arr.ind = TRUE) Michael On Sun, Dec 4, 2011 at 2:24 PM, andrija djurovic djandr...@gmail.com wrote: Hi. Maybe this can help you (you can try additionally to incorporate threshold): set.seed(1) x-rnorm(10,10,1) values - sample(1:10,10) #values that we are looking for mat - matrix(c(x,values),ncol=2) closest-function(x,values) #function is an example from The R book (Crawley) + { + x[which(abs(x-values)==min(abs(x-values)))] + } apply(mat[,2,drop=FALSE],1,function(y) closest(mat[,1],y)) [1] 10.183643 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 9.164371 [9] 9.164371 9.164371 On Sun, Dec 4, 2011 at 7:00 PM, vamshi999 vamshi...@gmail.com wrote: Hello List, I am having trouble finding the command for my problem. I have two arrays x and y. now i would like to compare the values of x and y and then get the index of x which is exactly or approximately equal(+/- some value ) to the values in y. x - runif(100,min=0,max=5) y - runif(10,min=0,max=5) the threshold value(+/-) value can vary. for this example lets take it to be .5 I know the regular method of doing this by writing different if and for loops. But i have very big dataframe the computation time is very high for this method. can anyone please tell me if there any functions to do this. thank you for your help. -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4157551.html Sent from the R help mailing list archive at Nabble.com. __ 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]] __ 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.
Re: [R] equating approximate values
this is exactly what i wanted. How to i select only the minimum value from this?. thank you My apologies: you need an abs() call as well: which(abs(outer(x, y, -)) threshold, arr.ind = TRUE) Michael -- View this message in context: http://r.789695.n4.nabble.com/equating-approximate-values-tp4157551p4158691.html Sent from the R help mailing list archive at Nabble.com. __ 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.