I have seen multiple questions on this subject but haven't seen a single answer to how to actually fix it other than attempting a different form of script.
Here is a simplified example. I am running this in an iPython console in Spyder with Python 2.7:
import numpy as np
X = np.zeros([1000, 1000, 50]) #works just fine
X = np.zeros([1000, 1000, 100]) #creates a MemoryError
I went to Windows Task Manager and see that Python is only using ~260 MB out of the total 2 GB that my PC has. I know that I need to save a lot of RAM for system processes, but come on, I can spare more memory than this for Python. Knowing that I need to not set it too high in order to avoid catastrophic system damage, where in Spyder or Python itself can I go to increase the maximum memory allowed?