My goal is to prove why normalized eigen values and eigen vectors have imaginary number.

According to [this website](https://byjus.com/jee/normalized-and-decomposition-of-eigenvectors/#:~:text=Normalized%20eigenvector%20is%20nothing%20but,the%20vector%20of%20length%20one.): normalized eigen vector is just `an eigen vector divided by the length of the vector`.

I can prove it by comparing the eigen vector that I got manually with `det(A - λ*I) = 0` with the normalized eigen vector from the numpy library.

However, I just don't get it how the numpy library can come up with an imaginary number for the returned eigen values and vectors.

Code
```
import numpy as np

A = np.array([[1,-1],
              [6, 4]])
eigvalues, eigvectors = np.linalg.eig(A)
display(eigvalues, eigvectors)
```

output
```
array([2.5+1.93649167j, 2.5-1.93649167j])
array([[-0.23145502+0.29880715j, -0.23145502-0.29880715j],
       [ 0.9258201 +0.j        ,  0.9258201 -0.j        ]])
```

Isn't the normalized eigen vector formula is `x / np.sqrt(x1^2 + xn^2)`

```
If x = [ -1 ], then normalized x = [ -1 / √3 ]
       [ 2. ]                      [  2 / √3 ]
```