Dear R developers:
I am trying to add a column to a data.frame. The following does the
trick by expanding the name of the first data frame with the prefix foo:
> data.frame(foo = as.list(data.frame(items = 1:3, bar=1:3)), items =
1:3) foo.items foo.bar items
1 1 1 1
2 2 2 2
3 3 3 3
However, the following special case produces an unexpected (at least to
me) result:
> data.frame(foo = as.list(data.frame(items = 1:3)), items = 1:3)
items items.1
1 1 1
2 2 2
3 3 3
I also tried cbind in various ways. This works:
> cbind(foo = data.frame(items = 1:3, bar=1:3), items = 1:3)
foo.items foo.bar items
1 1 1 1
2 2 2 2
3 3 3 3
The special case gives again different result with two columns having
seemingly the same name.
> cbind(foo = data.frame(items = 1:3), items = 1:3)
items items
1 1 1
2 2 2
3 3 3
> cbind(foo = data.frame(items = 1:3), data.frame(items = 1:3))
items items
1 1 1
2 2 2
3 3 3
Any help would be appreciated.
Thanks,
Michael
sessionInfo:
> sessionInfo()
R Under development (unstable) (2015-08-23 r69165)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 15.04
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
--
Michael Hahsler, Assistant Professor
Department of Engineering Management, Information, and Systems
Department of Computer Science and Engineering (by courtesy)
Bobby B. Lyle School of Engineering
Southern Methodist University, Dallas, Texas
office: Caruth Hall, suite 337, room 311
email: mhahsler at lyle.smu.edu
web: http://lyle.smu.edu/~mhahsler