this might screw up the column classes of some of your columns, but it
could be enough for what you're doing :)


# start with a data frame with duplicate columns
v <- data.frame(id = c(1:6), x = c(15, 21, 14, 21, 14, 38), y = c(36, 38,
55, 11, 5, 18), x.1 = c(15, 21, 14, 21, 14, 38), z = c("D", "B", "A", "F",
"H", "P"))

# remove column names
names( v ) <- NULL

# transpose
w <- t( v )
# remove duplicate rows
x <- unique( w )
# transpose again
y <- t( x )
# convert back to data frame
z <- data.frame( y )






On Thu, Mar 28, 2013 at 4:39 AM, Katherine Gobin
<katherine_go...@yahoo.com>wrote:

> Dear R forum
>
> Suppose I have a data.frame
>
> df = data.frame(id = c(1:6), x = c(15, 21, 14, 21, 14, 38), y = c(36, 38,
> 55, 11, 5, 18), x.1 = c(15, 21, 14, 21, 14, 38), z = c("D", "B", "A", "F",
> "H", "P"))
>
>
> > df
>   id  x  y    x.1 z
> 1  1 15 36  15 D
> 2  2 21 38  21 B
> 3  3 14 55  14 A
> 4  4 21 11  21 F
> 5  5 14  5  14 H
> 6  6 38 18  38 P
>
>
> Clearly columns x and x.1 are identical. In reality, I have a large
> data.frame and can't make out which columns are identical, but I am sure
> that column with name say x is repeated as x.1, x.2 etc.
>
> How to automatically identify and retain only one column (in this example
> column x) among the identical columns besides other non-identical columns
> (viz. id, y and z).
>
>
> Regards
>
> Katherine
>
>         [[alternative HTML version deleted]]
>
>
> ______________________________________________
> 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]]

______________________________________________
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.

Reply via email to