Row wise maximum – row max in R dataframe

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

  • Row wise maximum of R dataframe using rowMaxs()
  • Row maximum of the dataframe using apply() function.
  • Row wise maximum of the dataframe using dplyr package.

row wise max in R using rowMaxs() and max() 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 maximum – row maximum in R dataframe 1

 

 

Row wise maximum in R dataframe using rowMaxs()

Let’s calculate the row wise maximum using rowMaxs() function as shown below. rowMaxs() function takes up column 2 to 4 and finds row wise maximum value.

## row wise maximum using rowMaxs()

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


df1$row_maximum = rowMaxs(as.matrix(df1[,c(2,3,4)]))
df1

or

## row wise max using rowMaxs()

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

df1$row_maximum = rowMaxs(as.matrix(df1[,c(-1)]))
df1

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

 

 

Row wise maximum in R dataframe using apply() function

Let’s calculate the row wise maximum 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 maximum function which calculates maximum values.  so here it performs row wise maximum.


### Row wise maximum using apply() function

df1$row_maximum = apply(df1[,-1], 1, max)
df1

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

 

 

 

Row wise max of the dataframe using dplyr: Method 1

rowMaxs() 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 max is calculated using pipe (%>%) operator of the dplyr package.

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

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

So the resultant dataframe with row wise max calculated will be

Row wise maximum – row maximum in R dataframe 5

 

Row wise maximum of the dataframe using dplyr: Method 2

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

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

df1 %>%
  rowwise() %>%
  mutate(
    Maximum_price = max(c(Mathematics1_score,Mathematics2_score,Science_score))
  )

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

Row wise maximum – row maximum in R dataframe 4

For more Details kindly refer to matrixStats package in R

 


Other Related Topics

 

                                                                                                         

Author

  • Sridhar Venkatachalam

    With close to 10 years on Experience in data science and machine learning Have extensively worked on programming languages like R, Python (Pandas), SAS, Pyspark.