Beyond Unconstrained Features: Neural Collapse for Shallow Neural Networks with General Data