[R] Reading data/variables
Sarah Goslee
sarah.goslee at gmail.com
Wed Nov 16 03:26:12 CET 2011
Hi,
The obvious answer is don't use attach() and you'll never have
that problem. And see further comments inline.
On Tue, Nov 15, 2011 at 6:05 PM, Steven Yen <syen at utk.edu> wrote:
> Can someone help me with this variable/data reading issue?
> I read a csv file and transform/create an additional variable (called y).
>
> The first set of commands below produced different sample statistics
> for hw11$y and y
>
> In the second set of command I renameuse the variable name yy, and
> sample statistics for $hw11$yy and yy are identical.
>
> Using y <- yy fixed it, but I am not sure why I would need to do that.
>
> That "y" appeared to have come from a variable called "y" from
> another data frame (unrelated to the current run).
>
> Help!
>
> > setwd("z:/homework")
> > sink ("z:/homework/hw11.our", append=T, split=T)
> > hw11 <- read.csv("ij10b.csv",header=T)
> > hw11$y <- hw11$e3
> > attach(hw11)
> The following object(s) are masked _by_ '.GlobalEnv':
> y
Look there. R even *told* you that it was going to use the
y in the global environment rather than the one you were
trying to attach.
The other solution: don't save your workspace. Your other
email on this topic suggested to me that there is a .RData
file in your preferred working directory that contains an
object y, and that's what is interfering with what you think
should happen.
Deleting that file, or using a different directory, or removing
y before you attach the data frame would all work.
But truly, the best possible strategy is to avoid using attach()
so you don't have to worry about which object named y is
really being used because you specify it explicitly.
> > (n <- dim(hw11)[1])
> [1] 13765
> > summary(hw11$y)
> Min. 1st Qu. Median Mean 3rd Qu. Max.
> 0.0000 0.4500 1.0000 1.6726 2.0000 140.0000
> > length(hw11$y)
> [1] 13765
> > summary(y)
> Min. 1st Qu. Median Mean 3rd Qu. Max.
> 0.00000 0.00000 0.00000 0.24958 0.00000 1.00000
> > length(y)
> [1] 601
> >
>
> > setwd("z:/homework")
> > sink ("z:/homework/hw11.our", append=T, split=T)
> > hw11 <- read.csv("ij10b.csv",header=T)
> > hw11$yy <- hw11$e3
> > attach(hw11)
> > hw11$yy <- hw11$e3
> > summary(hw11$yy)
> Min. 1st Qu. Median Mean 3rd Qu. Max.
> 0.0000 0.4500 1.0000 1.6726 2.0000 140.0000
> > length(hw11$yy)
> [1] 13765
> > summary(yy)
> Min. 1st Qu. Median Mean 3rd Qu. Max.
> 0.0000 0.4500 1.0000 1.6726 2.0000 140.0000
> > length(yy)
> [1] 13765
> >
>
--
Sarah Goslee
http://www.functionaldiversity.org
More information about the R-help
mailing list