The sum() method helps find the sum of a group, the sum of a specific column of a data frame. The sum() method returns the sum of all the elements present in its arguments. If it is a vector, then it will return the sum of all vector elements.

**Sum in R**

The sum() is a built-in R function that calculates the sum of a numeric input vector. It accepts a numeric vector as an argument and returns the sum of the vector elements. To calculate the sum of vectors in R, use the sum() function.

**Syntax**

`sum(x, na.rm = FALSE, …)`

**Parameters**

**x:**numeric vector.**rm:**whether NA should be removed; if not, NA will be returned.

**Example of sum function in R**

Let’s start with a vector. A** vector** in R is the data type to **save multiple elements** in R.

Let’s find the sum of vectors.

```
rv <- c(11, 19, 21, 18, 46)
#calculates the sum of the values
sum(rv)
```

Here, we defined a vector and used the sum() method to calculate the sum of all the vector elements.

See the output.

`[1] 115`

**Passing NA value to the sum() function**

If NA is present in the vector elements, then you can’t get the desired output.

```
rv <- c(11, 19, NA, 18, 46)
#calculates the sum of rv vector
sum(rv)
```

**Output**

```
[1] NA
```

Well, we did not expect **NA **output. However, sometimes your dataset may contain ‘**NA**” values, i.e., ‘**Not Available**’.

So if you add the values, including **NA**, the sum() method returns the **NA** instead of the numerical summation output.

But we can handle this issue by bypassing **na.rm = TRUE.**

```
rv <- c(11, 19, NA, 18, 46)
# Calculates the sum of the values
sum(rv, na.rm = TRUE)
```

**Output**

`[1] 94`

**Calculating the sum of a data frame in R**

To find a sum of the data frame values in R, use the sum() function. Define a data.frame and execute the sum() function on column.

```
student <- data.frame(name = c("Sunny", "Mia", "Kourtney", "Olivia", "Holy"),
enrollno = c(11, 18, 19, 29, 46),
age = c(32, 31, 32, 27, 30))
print(student)
```

**Output**

```
RScript Pro.R
name enrollno age
1 Sunny 11 32
2 Mia 18 31
3 Kourtney 19 32
4 Olivia 29 27
5 Holy 46 30
```

Let’s find the sum of the **enrollno** column(variable).

```
student <- data.frame(name = c("Sunny", "Mia", "Kourtney", "Olivia", "Holy"),
enrollno = c(11, 18, 19, 29, 46),
age = c(32, 31, 32, 27, 30))
sum(student$enrollno)
```

To access the column, use **$** and then the **column name**. Here we are finding the sum of **enrollno **column values. See the below output.

```
[1] 123
```

**Calculate the sum columnwise**

If you want to get the sum of specific columns, use the **mapply()** function. The **mapply()** function calculates the sum of required columns.

```
student <- data.frame(name = c("Sunny", "Mia", "Kourtney", "Olivia", "Holy"),
enrollno = c(11, 18, 19, 29, 46),
age = c(32, 31, 32, 27, 30))
mapply(sum, student[, c(2, 3)])
```

**Output**

```
enrollno age
123 152
```

The sum of the enrollno column is 123, and the age is 152. In our data frame, we have two columns with numeric values; that is why it did not give us an error. However, if every column is non-numeric, then it will throw an error.

**Sum of the column bygroup in R**

R has a built-in aggregate() function is used to find the sum of a column bygroup.

```
student <- data.frame(name = c("Sunny", "Mia", "Kourtney", "Olivia", "Holy"),
enrollno = c(11, 18, 19, 29, 46),
age = c(32, 31, 32, 27, 30))
aggregate(x = student$enrollno,
by = list(student$name),
FUN = sum)
```

**Output**

```
Group.1 x
1 Holy 46
2 Kourtney 19
3 Mia 18
4 Olivia 29
5 Sunny 11
```

In this example, the aggregate() function along with the sum() function computes the sum of a group. Here the sum of the **“enrollno”** column for **“name”** is calculated.

**Wrapping up**

R sum() method is used to find the sum of the elements in the vector. This guide showed you how to find the sum of the vectors, data frame, and its different variants.

That’s it for this tutorial.

Krunal Lathiya is an Information Technology Engineer by education and web developer by profession. He has worked with many back-end platforms, including Node.js, PHP, and Python. In addition, Krunal has excellent knowledge of Data Science and Machine Learning, and he is an expert in R Language. Krunal has written many programming blogs, which showcases his vast expertise in this field.