# How to Fix: All input arrays must have same number of dimensions

One error you may encounter when using NumPy is:

`ValueError: all the input arrays must have same number of dimensions`

This error occurs when you attempt to concatenate two NumPy arrays that have different dimensions.

The following example shows how to fix this error in practice.

### How to Reproduce the Error

Suppose we have the following two NumPy arrays:

```import numpy as np

#create first array
array1 = np.array([[1, 2], [3, 4], [5,6], [7,8]])

print(array1)

[[1 2]
[3 4]
[5 6]
[7 8]]

#create second array
array2 = np.array([9,10, 11, 12])

print(array2)

[ 9 10 11 12]```

Now suppose we attempt to use the concatenate() function to combine the two arrays into one array:

```#attempt to concatenate the two arrays
np.concatenate([array1, array2])

ValueError: all the input arrays must have same number of dimensions, but the array at
index 0 has 2 dimension(s) and the array at index 1 has 1 dimension(s)
```

We receive a ValueError because the two arrays have different dimensions.

### How to Fix the Error

There are two methods we can use to fix this error.

Method 1: Use np.column_stack

One way to concatenate the two arrays while avoiding errors is to use the column_stack() function as follows:

```np.column_stack((array1, array2))

array([[ 1,  2,  9],
[ 3,  4, 10],
[ 5,  6, 11],
[ 7,  8, 12]])
```

Notice that we’re able to successfully concatenate the two arrays without any errors.

Method 2: Use np.c_

We can also concatenate the two arrays while avoiding errors using the np.c_ function as follows:

```np.c_[array1, array2]

array([[ 1,  2,  9],
[ 3,  4, 10],
[ 5,  6, 11],
[ 7,  8, 12]])
```

Notice that this function returns the exact same result as the previous method.