For concreteness, let $m=500$, $d=600$, $N=1000$. Let $W$ be and $d \times m$ matrix with unit-norm rows and let $u$ be a uni-norm vector of length $m$. Given a binary vector $b$ of length $m$, length $W_b$ be the $d \times m$ matrix obtained by zeroing out the columns of $W$ corresponding to zero entries of $b$. For iid (uniformly ?) random length-m binary vectors $b_1,\ldots,b_N$, let $A$ be the $N \times d$ random matrix with rows $W_{b_i}u$, and let $B$ be be the random $d \times d$ matrix defined by $B = A^\top A / N$. Finally, let $\mu$ be the average of the rows of $A$.
I've observed that the empirical spectral distribution of $B$ is always spiked. There are $d-1$ eigenvalues close to $0$ and exactly one eigenvalue which is clearly separated from zero, as illustrated in the figures below.
Question. Is there a simple but rigorous explanation for this phenomenon ?