Home > OS >  How to use an exsisting column as sample ID
How to use an exsisting column as sample ID

Time:05-22

I imported an excel file with animal data that looks something like this:

AnimalID Sex Body Weight District
AB1 1 3.45 4
AB2 1 2.98 4
AB3 2 3.22 5
AB4 2 3.01 5

I want to use to use my first column(AnimaID) as rownames.

I've searched for an answer but most questions address the creation of a new column that then becomes the rownames column. I actually feel stupid coming on here and asking this. My aim is to create a pca plot using ggplot2, and that requires me to have the dataframe in the format that ggplots2 recognizes.

CodePudding user response:

A possible solution, in base R:

rownames(df) <- df$AnimalID
df <- df[,-1]
df

#>     Sex Body.Weight District
#> AB1   1        3.45        4
#> AB2   1        2.98        4
#> AB3   2        3.22        5
#> AB4   2        3.01        5

Or using tidyverse:

library(tidyverse)

df %>% column_to_rownames("AnimalID")

#>     Sex Body.Weight District
#> AB1   1        3.45        4
#> AB2   1        2.98        4
#> AB3   2        3.22        5
#> AB4   2        3.01        5

CodePudding user response:

Another base option:

row.names(df) <- df$AnimalID
df[1] <- NULL

Output:

    Sex Body_Weight District
AB1   1        3.45        4
AB2   1        2.98        4
AB3   2        3.22        5
AB4   2        3.01        6
  • Related