To calculate descriptive statistics in R, you can use summary() function or describeBy() function from psych package.

The following methods show how you can do it with syntax.

Method 1: Use summary() Function

summary(df) 

Method 2: Use describeBy() Function

library(psych)

describeBy(df, group)

The following examples shows how to calculate descriptive statistics in R.

Use summary() Function to Calculate Descriptive Statistics

Let see how we can use summary() function to calculate statistical values of data frame:

# Create data frame
df <- data.frame(A=c(45.12,52.12,62.23,45.23,52.10),
                 B=c(78.10,78.36,78.96,89.52,98.36),
                 C=c(100.12,101.23,102.25,103.85,104.25))

# Get statistical values                
stat<-summary(df) 

# Display statistical values
print(stat)

Output:

 A               B               C        
 Min.   :45.12   Min.   :78.10   Min.   :100.1  
 1st Qu.:45.23   1st Qu.:78.36   1st Qu.:101.2  
 Median :52.10   Median :78.96   Median :102.2  
 Mean   :51.36   Mean   :84.66   Mean   :102.3  
 3rd Qu.:52.12   3rd Qu.:89.52   3rd Qu.:103.8  
 Max.   :62.23   Max.   :98.36   Max.   :104.2  

As the output shows statistical values for entire data frame which calculated using summary() function.

Use describeBy() Function to Calculate Descriptive Statistics

Let’s see how to use describeBy() function to calculate descriptive statistics of data frame:

# Import library 
library(psych)

# Create data frame
df <- data.frame(Machine_name=c("A","B","C","D","A","B","C","D"),
                 Pressure=c(78.2, 78.2, 71.7, 80.21, 80.21, 82.56, 72.12, 73.85),
                 Temperature=c(35, 36, 36, 38, 32, 32, 31, 34))

# Calculate descriptive statistics
d <- describeBy(df, df$Machine_name)

# Show descriptive statistics
print(d)

Output:

 Descriptive statistics by group 
group: A
              vars n mean   sd median trimmed  mad  min   max range skew kurtosis  se
Machine_name*    1 2  1.0 0.00    1.0     1.0 0.00  1.0  1.00  0.00  NaN      NaN 0.0
Pressure         2 2 79.2 1.42   79.2    79.2 1.49 78.2 80.21  2.01    0    -2.75 1.0
Temperature      3 2 33.5 2.12   33.5    33.5 2.22 32.0 35.00  3.00    0    -2.75 1.5
----------------------------------------------------------------------- 
group: B
              vars n  mean   sd median trimmed  mad  min   max range skew kurtosis   se
Machine_name*    1 2  2.00 0.00   2.00    2.00 0.00  2.0  2.00  0.00  NaN      NaN 0.00
Pressure         2 2 80.38 3.08  80.38   80.38 3.23 78.2 82.56  4.36    0    -2.75 2.18
Temperature      3 2 34.00 2.83  34.00   34.00 2.97 32.0 36.00  4.00    0    -2.75 2.00
----------------------------------------------------------------------- 
group: C
              vars n  mean   sd median trimmed  mad  min   max range skew kurtosis   se
Machine_name*    1 2  3.00 0.00   3.00    3.00 0.00  3.0  3.00  0.00  NaN      NaN 0.00
Pressure         2 2 71.91 0.30  71.91   71.91 0.31 71.7 72.12  0.42    0    -2.75 0.21
Temperature      3 2 33.50 3.54  33.50   33.50 3.71 31.0 36.00  5.00    0    -2.75 2.50
----------------------------------------------------------------------- 
group: D
              vars n  mean   sd median trimmed  mad   min   max range skew kurtosis   se
Machine_name*    1 2  4.00 0.00   4.00    4.00 0.00  4.00  4.00  0.00  NaN      NaN 0.00
Pressure         2 2 77.03 4.50  77.03   77.03 4.71 73.85 80.21  6.36    0    -2.75 3.18
Temperature      3 2 36.00 2.83  36.00   36.00 2.97 34.00 38.00  4.00    0    -2.75 2.00

As the output shows descriptive statistics for dataframe which is group by Machine_name column of dataframe.