*60*

One error you may encounter in R is:

Error in apply(df$var1, 2, mean) : dim(X) must have a positive length

This error occurs when you attempt to use the **apply()** function to calculate some metric for a column of a data frame or matrix, yet provide a vector as an argument instead of a data frame or matrix.

This tutorial shares exactly how to fix this error.

**How to Reproduce the Error**

Suppose we have the following data frame in R:

#create data frame df frame(points=c(99, 97, 104, 79, 84, 88, 91, 99), rebounds=c(34, 40, 41, 38, 29, 30, 22, 25), blocks=c(12, 8, 8, 7, 8, 11, 6, 7)) #view data frame df points rebounds blocks 1 99 34 12 2 97 40 8 3 104 41 8 4 79 38 7 5 84 29 8 6 88 30 11 7 91 22 6 8 99 25 7

Now suppose we attempt to use the **apply()** function to calculate the mean value in the â€˜pointsâ€™ column:

**#attempt to calculate mean of 'points' column
apply(df$points, 2, mean)
Error in apply(df$points, 2, mean) : dim(X) must have a positive length
**

An error occurs because the **apply()** function must be applied to a data frame or matrix, yet in this example we attempt to apply it to a specific column in the data frame.

**How to Fix the Error**

The way to fix this error is to simply provide the name of the data frame to the **apply()** function as follows:

**#calculate mean of every column in data frame
apply(df, 2, mean)
points rebounds blocks
92.625 32.375 8.375
**

From the output, we can see theÂ mean value of each column in the data frame. For example, the mean value of the â€˜pointsâ€™ column is **92.625**.

We can also use this function to only find the mean of specific values in the data frame:

**#calculate mean of 'points' and 'blocks' column in data frame
apply(df[c('points', 'blocks')], 2, mean)
points blocks
92.625 8.375**

Lastly, if weâ€™d like to find the mean of just one column then we can use the **mean()** function without using the **apply()** function at all:

**#calculate mean of 'points' column
mean(df$points)
[1] 92.625
**

**Additional Resources**

The following tutorials explain how to troubleshoot other common errors in R:

How to Fix in R: names do not match previous names

How to Fix in R: longer object length is not a multiple of shorter object length

How to Fix in R: contrasts can be applied only to factors with 2 or more levels