Central Tendency in R Programming - GeeksforGeeks

10 May, 2020
Central Tendency is one of the feature of descriptive statistics. Central tendency tells about how the group of data is clustered around the centre value of the distribution. Central tendency performs the following measures:
Arithmetic Mean
Geometric Mean
Harmonic Mean
Median
Mode
The arithmetic mean is simply called the average of the numbers which represents the central value of the data distribution. It is calculated by adding all the values and then dividing by the total number of observations.
Formula:
where,
X indicates the arithmetic mean indicates  value in data vectorn indicates total number of observations
In R language, arithmetic mean can be calculated by mean() function.
Syntax: mean(x, trim, na.rm = FALSE)
Parameters:x: Represents objecttrim: Specifies number of values to be removed from each side of object before calculating the mean. The value is between 0 to 0.5na.rm: If TRUE then removes the NA value from x
Example:
# Defining vectorx <- c(3, 7, 5, 13, 20, 23, 39, 23, 40, 23, 14, 12, 56, 23)  # Print meanprint(mean(x))
Output:
[1] 21.5

The geometric mean is a type of mean that is computed by multiplying all the data values and thus, shows the central tendency for given data distribution.
Formula:
where,
X indicates geometric mean indicates  value in data vectorn indicates total number of observations
prod() and length() function helps in finding the geometric mean for given set of numbers as there is no direct function for geometric mean.
Syntax:
prod(x)^(1/length(x))

where,prod() function returns the product of all values present in vector xlength() function returns the length of vector x
Example:
# Defining vectorx <- c(1, 5, 9, 19, 25)  # Print Geometric Meanprint(prod(x)^(1 / length(x)))
Output:
[1] 7.344821

Harmonic mean is another type of mean used as another measure of central tendency. It is computed as reciprocal of the arithmetic mean of reciprocals of the given set of values.
Formula:
where,
X indicates harmonic mean indicates  value in data vectorn indicates total number of observations
Example:Modifying the code to find the harmonic mean of given set of values.
# Defining vectorx <- c(1, 5, 8, 10)  # Print Harmonic Meanprint(1 / mean(1 / x))
Output:
[1] 2.807018

Median in statistics is another measure of central tendency which represents the middlemost value of a given set of values.
In R language, median can be calculated by median() function.
Syntax: median(x, na.rm = FALSE)
Parameters:x: It is the data vectorna.rm: If TRUE then removes the NA value from x
Example:
# Defining vectorx <- c(3, 7, 5, 13, 20, 23, 39,        23, 40, 23, 14, 12, 56, 23)  # Print Medianmedian(x)
Output:
[1] 21.5

The mode of a given set of values is the value that is repeated most in the set. There can exist multiple mode values in case if there are two or more values with matching maximum frequency.
Example 1: Single-mode valueIn R language, there is no function to calculate mode. So, modifying the code to find out the mode for a given set of values.
# Defining vectorx <- c(3, 7, 5, 13, 20, 23, 39,         23, 40, 23, 14, 12, 56,       23, 29, 56, 37, 45, 1, 25, 8)  # Generate frequency tabley <- table(x)  # Print frequency tableprint(y)  # Mode of xm <- names(y)[which(y == max(y))]  # Print modeprint(m)
Output:
x
 1  3  5  7  8 12 13 14 20 23 25 29 37 39 40 45 56 
 1  1  1  1  1  1  1  1  1  4  1  1  1  1  1  1  2
[1] "23"

Example 2: Multiple Mode values
# Defining vectorx <- c(3, 7, 5, 13, 20, 23, 39, 23, 40,        23, 14, 12, 56, 23, 29, 56, 37,       45, 1, 25, 8, 56, 56)  # Generate frequency tabley <- table(x)  # Print frequency tableprint(y)  # Mode of xm <- names(y)[which(y == max(y))]  # Print modeprint(m)
Output:
x
 1  3  5  7  8 12 13 14 20 23 25 29 37 39 40 45 56 
 1  1  1  1  1  1  1  1  1  4  1  1  1  1  1  1  4 
[1] "23" "56"

R-Statistics
R Language
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Filter data by multiple conditions in R using Dplyr
Loops in R (for, while, repeat)
Change Color of Bars in Barchart using ggplot2 in R
How to change Row Names of DataFrame in R ?
Group by function in R using Dplyr
How to Change Axis Scales in R Plots?
How to Split Column Into Multiple Columns in R DataFrame?
R Programming Language - Introduction
K-Means Clustering in R Programming
Replace Specific Characters in String in R