I am generating $n$ random points in two dimensions $(x_i, y_i)$. Then I form this skew-symmetric matrix
$$ M_{ij} = \begin{cases} x_i y_j - x_j y_i & \text{if } i < j \\ 0 & \text{if } i=j \\ -M_{ji} & \text{if } i > j \end{cases} $$
No matter how big $n$ is, there are only two purely complex eigenvalues for this matrix. I am wondering why this is the case.
Let $x = (x_1,x_2,\dots,x_n)^T$ and $y = (y_1,y_2,\dots,y_n)^T$. Then $M = xy^T - yx^T$. Each of these terms has rank $1$, so their difference can be at most rank $2$, resulting in at most two nonzero eigenvalues. Since $M$ is skew-symnmetric and real-valued, the eigenvalues will either be a complex conjugate pair of the form $\lambda_\pm = \pm \omega i$ or a degenerate case where $\lambda = 0$ with multiplicity 2 which occurs when $x\in\mathrm{span}{\{y\}}$.