In python, you must be familiar with the NumPy package. And when you are creating multi-dimensional NumPy array then you will mostly get the **Valueerror: Setting an Array Element with a Sequence error.**

In this tutorial, you will know all the causes that lead to this error and how to solve this error.

## What does setting an array element with a sequence mean in Python?

In python * Valueerror: Setting an Array Element with a Sequence *means you are creating a NumPy array of different types of elements in it. For example, mixing int with float or int or float with string. The other case when you will get this error is when you are creating a multiple-dimensional NumPy array. In addition, you are mixing with different dimensions. You will know how to solve this error in a simple way.

## Cause 1: Mixing with different Array dimensions

The first case when you will get* Valueerror: Setting an Array Element with a Sequence* is creating an array with different dimensions or shapes. For example, if you will create a NumPy array of multi-dimension. One is a 2D array and the other is a 3D array.

```
import numpy as np
numpy_array = np.array([[1,2],[1,2,3]],dtype=int)
print(numpy_array)
```

When you will run the code you will get the value error.

**Solution**

The solution for this error is very simple. Just use the array of the same dimensions in a sequence. Instead of [1,2,3] or [1,2] use [1,2] or [1,2,3] respectively.

```
import numpy as np
numpy_array = np.array([[1,2],[1,2]],dtype=int)
print(numpy_array)
```

**Output**

[[1 2] [1 2]]

## Cause 2: Elements of different type

The other cause for getting Valueerror is you are using different datatype elements for the NumPy array. For example, mixing string with int or float with int e.t.c.

```
import numpy as np
numpy_array = np.array([[1,2],["foo","foo"]],dtype=float)
print(numpy_array)
```

**Solution**

The solution for this case is also very simple. You should make sure that you should use elements of the same type.

```
import numpy as np
numpy_array = np.array([[1,2],[3,4]],dtype=int)
print(numpy_array)
```

**Output**

[[1 2] [3 4]]

The other solution for this error is that you should define the type of the NumPy array of the object type. Just write * dtype=object*.

```
import numpy as np
numpy_array = np.array([[1,2],["foo","foo"]],dtype=object)
print(numpy_array)
```

**Output**

[[1 2] ['foo' 'foo']]

## END NOTES

* Valueerror: Setting an Array Element with a Sequence error* generally comes when you are creating a NumPy array using a different multi-dimensional array and different types of elements of the array. The above is the solutions for both cases.

I hope you have liked this tutorial. If you have any queries then you can contact us for more help.

Source:

#### Join our list

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.