[R] Finding the position of a variable in a data.frame

roger koenker rkoenker at uiuc.edu
Wed Aug 2 23:12:59 CEST 2006


it is the well-known wicked which problem:  if you had (grammatically  
incorrectly)
thought "... which I want to change" then you might have been led
to type (in another window):

	?which

and you would have seen the light.  Maybe that() should be an alias
for which()?

url:    www.econ.uiuc.edu/~roger            Roger Koenker
email    rkoenker at uiuc.edu            Department of Economics
vox:     217-333-4558                University of Illinois
fax:       217-244-6678                Champaign, IL 61820


On Aug 2, 2006, at 4:01 PM, John Kane wrote:

> Simple problem but I don't see the answer. I'm trying
> to clean up some data
> I have 120 columns in a data.frame.  I have one value
> in a column named "blaw" that I want to change. How do
> I find the coordinates. I can find the row by doing a
> subset on the data.frame but how do I find out here
> "blaw " is in columns without manually counting them
> or converting names(Df) to a list and reading down the
> list.
>
> Simple example
>
> cat <- c( 3,5,6,8,0)
> dog <- c(3,5,3,6, 0)
> rat <- c (5, 5, 4, 9, 0)
> bat <- c( 12, 42, 45, 32, 54)
>
> Df <- data.frame(cbind(cat, dog, rat, bat))
> Df
> subset(Df, bat >= 50)
>
> ----results
>   cat dog rat bat
> 5   0   0   0  54
>
>
> Thus I know that my target is in row 5 but how do I
> figure out where 'bat' is?
>
> All I want to do is be able to say
> Df[5,4] <- 100
>
> Is there some way to have function(bat) return the
> column number: some kind of a colnum() function?  I
> had thought that I had found somthing  in
> library(gdata) matchcols but no luck.
>
> ______________________________________________
> 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
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list