Min and Median of Multiple Columns of a DF by Row in R

Viewed 14174

Given a dataframe that looks like:

V1  V2  V3
5   8   12
4   9   5
7   3   9
...

How to add columns to the dataframe for min and median of these 3 columns, calculated for each row?

The resulting DF should look like:

V1  V2  V3  Min  Median
5   8   12  5    8
4   9   5   4    5
7   3   9   3    7
...

I tried using dplyr::mutate:

mutate(df, Min = min(V1,V2,V3)) 

but that takes the min of the entire dataframe and puts that value in every row. How can I get the min and median of just each row?

For Mean, I can use rowMeans in mutate, but there are no similar functions for min and median.

Also tried,

lapply(df[1:3], median)

but it just produces the median of each column

dd <- read.table(header = TRUE, text = 'V1  V2  V3
5   8   12
4   9   5
7   3   9')
5 Answers
Related