Row wise Variance – row Variance in R dataframe

Row wise variance of the dataframe in R or variance of each row is calculated using rowVars() function. Other method to get the row variance in R is by using apply() function. row wise variance of the dataframe is also calculated using dplyr package. rowwise() function of dplyr package along with the var function is used to calculate row wise variance. we will be looking at the following examples

  • Row wise variance of r dataframe using rowVars()
  • Row Variance of the dataframe using apply() function.
  • Row wise variance of the dataframe using dplyr package.

row wise VAR in R using rowVars() and VAR()21

First let’s create the dataframe

### Create Data Frame

df1 = data.frame( Name = c('George','Andrea', 'Micheal','Maggie','Ravi','Xien','Jalpa'),
Mathematics1_score=c(62,47,55,74,32,77,86),
Mathematics2_score=c(45,78,44,89,66,49,72),
Science_score=c(56,52,45,88,33,90,47))

df1

df1 will be
Row wise variance – row variance in R dataframe 1

 

 

Row wise variance in R dataframe using rowVars()

Let’s calculate the row wise variance in R using rowVars() function as shown below. rowVars() function takes up column 2 to 4 and finds row wise variance.

## row wise variance using rowVars()


install.packages("matrixStats")
library(matrixStats)


df1$row_var = rowVars(as.matrix(df1[,c(2,3,4)]))
df1

or

## row wise variance using rowVars()

install.packages("matrixStats")
library(matrixStats)

df1$row_var = rowVars(as.matrix(df1[,c(-1)]))
df1

So the resultant dataframe will be
Row wise variance – row variance in R dataframe 2

 

 

Row wise variance using apply() function

Let’s calculate the row wise variance using apply() function as shown below. apply() function takes three arguments first argument is dataframe without first column and second argument is used to perform row wise operation (argument 1- row wise ; 2 – column wise ). third argument var function which calculates variance.  so here it performs row wise variance.

### Row wise variance using apply() function

df1$row_var = apply(df1[,-1], 1, var)
df1

So the resultant dataframe will be
Row wise variance – row variance in R dataframe 3

 

 

Row wise variance of the dataframe using dplyr: Method 1

rowVars() function of matrixStats package. takes up the columns 2 to 4 and performs the row wise operation with NA values replaced to zero.  row wise variance is calculated using pipe (%>%) operator of the dplyr package.

##### Dplyr row wise variance
library(dplyr)
library(matrixStats)

df1 %>% replace(is.na(.), 0) %>% mutate(row_wise_var = rowVars(as.matrix(df1[,c(2,3,4)])))

So the resultant dataframe with row wise variance calculated will be

Row wise variance – row variance in R dataframe 4

 

 

Row wise variance of the dataframe using dplyr: Method 2

Row wise variance is calculated with the help rowwise() function of dplyr package  and var() function as shown below

## row wise variance using dplyr
 
library(dplyr)
library(matrixStats)

df1 %>%
  rowwise() %>%
  mutate(
    Min_price = var(c(Mathematics1_score,Mathematics2_score,Science_score))
  )

row wise variance of “Mathematics1_score” , “Mathematics2_score” and “Science_score” is calculated and populated for each row as shown below

Row wise variance – row variance in R dataframe R

For more Details kindly refer to matrixStats package in R

 


Other Related Topics