Python/Jupyter MemoryError:无法分配具有形状的数组

for*_*man 5 python memory windows pandas jupyter-notebook

我在 Windows 上。我有一个包含约 8700 万行(10-12 列)的 CSV。我正在使用 Jupyter 笔记本,并且可以使用 Pandas 成功读取它。我还有另一个大约 100K 行的 csv,可以读取它。当我尝试(左外)加入这两个时会出现问题。我总是最终得到一个错误

MemoryError: Unable to allocate __ GiB for array with shape (__,__) and data type ___. 
Run Code Online (Sandbox Code Playgroud)

我尝试删除不必要的列并将 Pandas 数据帧转换为重新排列并以这种方式加入它们 - 没有奏效。我还尝试尽可能小地更改这些 recarray 中列的数据类型 - 也没有帮助。错误中的 __ GiB 也发生了变化——我见过 1.5、3、12……我有 18.4 GB 的“所有驱动器的总页面文件大小”并且无法更改此设置。我还有 77.3 GB 可用的本地存储空间,所以我认为这不是问题所在。

我看到了另一个答案,他们更改了过量使用内存,但它是针对 Linux 的。这是 Windows 上的可能解决方案吗?这似乎与 Jupyter 或我的机器有关吗?任何帮助将非常感激。