To **calculate** the **standard deviation in R**, use the **sd() **function. The **sd()** is a built-in **R** function that accepts the input object and computes the standard deviation of the values provided in the object. It takes numerical vectors and logical arguments and returns the standard deviation.

**The standard deviation** of a population is the square root of the population variance. It is the measure of the distribution of the values.

The symbol for the population standard deviation is **Σ (sigma)**. Its formula is the following.

The **square root** of its **variance** **calculates** the **standard deviation** of an **observation** **variable** in** R**.

**Syntax**

`sd(x, na.rm = FALSE)`

**Parameters**

**x:** It is a numeric vector or an R object but not a factor coercible to numeric by **as.double(x)**.

**na.rm:** It is logical. Should missing values be removed?

**Example 1: Simple program of sd() function**

Let’s find the sd of a vector. To **create** a **numeric** **vector** in** R**, use the **c()** function. Then, pass the vector to the sd() function as an argument to calculate the standard deviation of a vector.

```
# Create a numeric vector using c() function
v1 <- c(11, 21, 19, 46, 50)
# Calculate the standard deviation of the vector using sd() function
stddev <- sd(v1)
# Print the standard deviation using the print() function
print(stddev)
```

**Output**

`[1] 17.4442`

In the above example, we created a numeric vector v1 using the c() function containing values 11, 21, 19, 46, and 50.

We then use the **sd()** function to calculate the standard deviation of the v1 vector. The **sd()** function returns the standard deviation as a numeric value, which we store in the stddev variable.

Finally, we use the **print()** function to print the stddev variable, which displays the standard deviation of the v1 vector.

**Example 2: Calculating the standard deviation of data set in R**

We will find the standard deviation of the **Petal.length** of the **iris** dataset.

```
data(iris)
iris$Petal.Length
ln <- iris$Petal.Length
cat("The standard deviation of iris petal length is: ", "\n")
sd(ln)
```

**Output**

```
[1] 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 1.5 1.6 1.4 1.1 1.2 1.5 1.3 1.4
[19] 1.7 1.5 1.7 1.5 1.0 1.7 1.9 1.6 1.6 1.5 1.4 1.6 1.6 1.5 1.5 1.4 1.5 1.2
[37] 1.3 1.4 1.3 1.5 1.3 1.3 1.3 1.6 1.9 1.4 1.6 1.4 1.5 1.4 4.7 4.5 4.9 4.0
[55] 4.6 4.5 4.7 3.3 4.6 3.9 3.5 4.2 4.0 4.7 3.6 4.4 4.5 4.1 4.5 3.9 4.8 4.0
[73] 4.9 4.7 4.3 4.4 4.8 5.0 4.5 3.5 3.8 3.7 3.9 5.1 4.5 4.5 4.7 4.4 4.1 4.0
[91] 4.4 4.6 4.0 3.3 4.2 4.2 4.2 4.3 3.0 4.1 6.0 5.1 5.9 5.6 5.8 6.6 4.5 6.3
[109] 5.8 6.1 5.1 5.3 5.5 5.0 5.1 5.3 5.5 6.7 6.9 5.0 5.7 4.9 6.7 4.9 5.7 6.0
[127] 4.8 4.9 5.6 5.8 6.1 6.4 5.6 5.1 5.6 6.1 5.6 5.5 4.8 5.4 5.6 5.1 5.1 5.9
[145] 5.7 5.2 5.0 5.2 5.4 5.1
The standard deviation of iris petal length is:
[1] 1.765298
```

That is it. The standard deviation for the petal.length is **1.765298.**

You can calculate the standard deviation without the sd() function.

`sqrt(sum((ln - mean(ln)) ^ 2 / (length(ln) - 1)))`

The complete code is the following.

```
data(iris)
iris$Petal.Length
ln <- iris$Petal.Length
cat("The standard deviation of iris petal length is: ", "\n")
sqrt(sum((ln - mean(ln)) ^ 2 / (length(ln) - 1)))
```

**Output**

```
[1] 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 1.5 1.6 1.4 1.1 1.2 1.5 1.3 1.4
[19] 1.7 1.5 1.7 1.5 1.0 1.7 1.9 1.6 1.6 1.5 1.4 1.6 1.6 1.5 1.5 1.4 1.5 1.2
[37] 1.3 1.4 1.3 1.5 1.3 1.3 1.3 1.6 1.9 1.4 1.6 1.4 1.5 1.4 4.7 4.5 4.9 4.0
[55] 4.6 4.5 4.7 3.3 4.6 3.9 3.5 4.2 4.0 4.7 3.6 4.4 4.5 4.1 4.5 3.9 4.8 4.0
[73] 4.9 4.7 4.3 4.4 4.8 5.0 4.5 3.5 3.8 3.7 3.9 5.1 4.5 4.5 4.7 4.4 4.1 4.0
[91] 4.4 4.6 4.0 3.3 4.2 4.2 4.2 4.3 3.0 4.1 6.0 5.1 5.9 5.6 5.8 6.6 4.5 6.3
[109] 5.8 6.1 5.1 5.3 5.5 5.0 5.1 5.3 5.5 6.7 6.9 5.0 5.7 4.9 6.7 4.9 5.7 6.0
[127] 4.8 4.9 5.6 5.8 6.1 6.4 5.6 5.1 5.6 6.1 5.6 5.5 4.8 5.4 5.6 5.1 5.1 5.9
[145] 5.7 5.2 5.0 5.2 5.4 5.1
The standard deviation of iris petal length is:
[1] 1.765298
```

**Example 3: Calculating the Standard deviation of the Vector in R**

To calculate the standard deviation of the vector, use the sd() function. To define a vector, use the c() function and pass the elements as arguments. You can also create a vector using the :(colon) operator.

```
vec <- 1:5
cat("The standard deviation of vector is", "\n")
sd(vec)
```

**Output**

```
The standard deviation of vector is
[1] 1.581139
```

And we get the standard deviation of the numeric vector, which in our example is **1.581139**.

**Example 4: Calculating the standard deviation of the Array in R**

To calculate the standard deviation of an array in R, use the sd() function.

To create an array in R, use the **array() **function. The **array() **function takes a vector as an argument and uses the **dim** parameter to create an array.

```
rv <- c(19, 21)
rv2 <- c(46, 4)
arr <- array(c(rv, rv2), dim = c(2, 2, 2))
cat("The standard deviation of array is", "\n")
sd(arr)
```

**Output**

```
The standard deviation of array is
[1] 16.11565
```

**Example 5: Calculating the Standard deviation of a data frame in R**

To calculate the standard deviation of a data frame in R, use the sd() function. To create a data frame in R, use data.frame() function. We will find the standard deviation of a numerical column of the data frame.

```
df <- data.frame(service_id = c(1:5),
service_name = c("Netflix", "Disney+", "HBOMAX", "Hulu", "Peacock"),
service_price = c(18, 10, 15, 7, 12),
stringsAsFactors = FALSE)
cat("The standard deviation of service_price is", "\n")
sd(df$service_price)
```

**Output**

`[1] 4.27785`

And we get the SD of the data frame column.

That’s it.

Krunal Lathiya is a Software Engineer with over eight years of experience. He has developed a strong foundation in computer science principles and a passion for problem-solving. In addition, Krunal has excellent knowledge of Data Science and Machine Learning, and he is an expert in R Language.