[R] Equivalents of Matlab's 'find' and 'end'

Liaw, Andy andy_liaw at merck.com
Thu Oct 7 16:46:37 CEST 2004


There's also the `cheat sheet'
http://cran.r-project.org/doc/contrib/R-and-octave-2.txt that might be
useful for Matlab speakers.

Andy

> From: Dimitris Rizopoulos
> 
> Hi Bryan,
> 
> 1. which(x==1)
> 2. X[2:nrow(X),] or X[,2:ncol(X)]
> 
> The "An Introduction to R" document is very usdeful for this kind of 
> things.
> 
> I hope it helps.
> 
> Best,
> Dimitris
> 
> ----
> Dimitris Rizopoulos
> Ph.D. Student
> Biostatistical Centre
> School of Public Health
> Catholic University of Leuven
> 
> Address: Kapucijnenvoer 35, Leuven, Belgium
> Tel: +32/16/396887
> Fax: +32/16/337015
> Web: http://www.med.kuleuven.ac.be/biostat/
>      http://www.student.kuleuven.ac.be/~m0390867/dimitris.htm
> 
> 
> ----- Original Message ----- 
> From: "Bryan L. Brown" <stonefly at mail.utexas.edu>
> To: <R-help at stat.math.ethz.ch>
> Sent: Thursday, October 07, 2004 4:10 PM
> Subject: [R] Equivalents of Matlab's 'find' and 'end'
> 
> 
> > Sorry if these questions have been asked recently--I'm new to this 
> > list.
> >
> > I'm primarily a Matlab user who is attempting to learn R and I'm 
> > searching for possible equivalents of commands that I found very 
> > handy in Matlab.  So that I don't seem ungrateful to those who may 
> > answer, I HAVE determined ways to carry out these processes in 
> > 'brute force' sorts of ways in R code, but they lack the elegance 
> > and simplicity of the Matlab commands.  Also, if you know that no 
> > such commands exist, that bit of knowledge would be helpful to know 
> > so that I don't continue fruitless searches.
> >
> > The first is Matlab's 'find' command.
> > This is one of the most useful commands in Matab.  Basically, if X 
> > is the vector
> >
> > X=[3, 2, 1, 1, 2, 3]
> >
> > the command
> >
> > 'find(X==1)'
> >
> > would return the vector [3, 4] which would indicate that the vector 
> > X had the value of 1 at the 3 and 4 positions.  This was an 
> > extremely useful command for subsetting in Matlab.  The closest 
> > thing I've found in R has been 'match' but match only returns the 
> > first value as opposed to the position of all matching values.
> >
> > The second Matlab command that I'd like to find an R equivalent for 
> > is 'end'.  'end' is just a simple little command that indicates the 
> > end of a row/column.  It is incredibly handy when used to subset 
> > matrices like
> >
> > Y = X(2:end)
> >
> > and produces Y=[2, 1, 1, 2, 3] if the X is the same as in the 
> > previous example.  This cutsie little command was extremely useful 
> > for composing programs that were flexible and could use input 
> > matrices of any size without modifying the code.  I realize 
> that you 
> > can accomplish the same by Y <- X[2:length(X)] in R, but 
> this method 
> > is ungainly, particularly when subsetting matrices rather than 
> > vectors.
> >
> > If anyone has advice, I'd be grateful,
> >
> > Bryan L. Brown
> > Integrative Biology
> > University of Texas at Austin
> > Austin, TX 78712
> > 512-965-0678
> > stonefly at mail.utexas.edu
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help at stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide! 
> > http://www.R-project.org/posting-guide.html
> >
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html
> 
>




More information about the R-help mailing list