what does argument scale do actually because after running the code below the three columns (4:6) changed to decimals. : > hab <- read.csv('cov.csv') 
> names(hab[4:6])   
> hab1 <- as.data.frame(scale(hab[4:6])) 

For eg.
> x <- matrix(1:10, ncol = 2)
> x
 
    1    6
    2    7
    3    8
    4    9
    5   10

I applied scale argument to this matrix
> y <- scale(x)
> y

This gets changed to        
-1.2649111 -1.2649111
-0.6324555 -0.6324555
 0.0000000  0.0000000
 0.6324555  0.6324555
 1.2649111  1.2649111