Hi,

Here are some examples using the mtcars dataset that you can modify to work
with your data.

## Here is my first try using within.
## Somehow the elements of region that
## should be zero are converted to NA

mtcars <- within(mtcars, {
    region <- 0
    region[gear==4&carb==4] <- 1
    region[gear==3&carb==1] <- 2
})

## Here is a second try with an ugly
## hack to fix the NA problem

mtcars <- within(mtcars, {
    region <- NA
    region[gear==4&carb==4] <- 1
    region[gear==3&carb==1] <- 2
    region[is.na(region)] <- 0
})


## Here is an alternative using with
## instead of within
mtcars$region <- 0
mtcars$region[with(mtcars, gear==4&carb==4)] <- 1
mtcars$region[with(mtcars, gear==3&carb==1)] <- 2


Best,
Ista


On Wed, Jun 12, 2013 at 4:36 PM, bcrombie <bcrombie@utk.edu> wrote:

> I'm adding a column (region) to a data frame (devUni8), and the (region)
> column will be populated by a numeric code that is a function of another
> column (state) in that data frame.  See part of the script below.
>
> How can I rewrite this so that I could apply the conditions to any data
> frame without having to keep typing its name (in this case, "devUni8$").
> I've heard the attach() function is to be avoided, and I'm not good at
> with,
> while, or if statements right now.  I've tried some other things but keep
> getting "object not found" errors.  Assistance appreciated. Thanks.
>
> #Create Region Variable
> #########
> devUni8$region=0
>
> #Assign Northeast States
> #########
> devUni8$region[devUni8$state >= 11 & devUni8$state <= 23 | devUni8$state >=
> 51 & devUni8$state <= 55] = 1
>
> #Assign Southeast States
> #########
> devUni8$region[devUni8$state >= 56 & devUni8$state <= 64 ] = 2
>
>
>
> --
> View this message in context:
> http://r.789695.n4.nabble.com/rewrite-script-to-eliminate-constant-object-reference-tp4669393.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]]

