One error you may encounter in R is:
Error in x[i, ] <- 0 : incorrect number of subscripts on matrix
This error occurs when you attempt to assign some value to a position in a vector, but accidently include a comma as if you were assigning some value to a row and column position in a matrix.
This tutorial shares exactly how to fix this error.
Example 1: Fix Error for a Single Value
Suppose we have the following vector in R with 5 values:
#define vector
x <- c(4, 6, 7, 7, 15)
Now suppose we attempt to assign the value ’22’ to the third element in the vector:
#attempt to assign the value '22' to element in third position
x[3, ] <- 22
Error in x[3, ] <- 22 : incorrect number of subscripts on matrix
We receive an error because we included a comma when attempting to assign the new value.
Instead, we simply need to remove the comma:
assign the value '22' to element in third position x[3] <- 22 #display updated vector x [1] 4 6 22 7 15
Example 2: Fix Error in a for Loop
This error can also occur when we attempt to replace several values in a vector using a ‘for’ loop.
For example, the following code attempts to replace every value in a vector with a zero:
#define vector
x <- c(4, 6, 7, 7, 15)
#attempt to replace every value in vector with zero
for(i in 1:length(x)) {
x[i, ]=0
}
Error in x[i, ] = 0 : incorrect number of subscripts on matrix
We receive an error because we included a comma when attempting to assign the zeros.
Instead, we simply need to remove the comma:
#define vector
x <- c(4, 6, 7, 7, 15)
#replace every value in vector with zero
for(i in 1:length(x)) {
x[i]=0
}
#view updated vector
x
[1] 0 0 0 0 0
Once we remove the comma, the code runs without errors.
Additional Resources
How to Fix in R: NAs Introduced by Coercion
How to Fix in R: Subscript out of bounds
How to Fix Error in R: incorrect number of dimensions