python - 将二进制值的文本转换为 numpy 文件

标签 python memory numpy text

如何将一个包含二进制值字符(01)的巨大文本文件(>16G)转换为一个 numpy 数组文件,而不会炸毁内存Python?假设我们在机器上有足够的存储空间但没有足够的 RAM 来进行转换。

示例数据:

0,0,0,0,0,1,0,0,0 
1,0,0,1,0,0,0,0,0
...

示例代码:

converted_data = [ map(int,line.split(',')) for line in f ]

最佳答案

您使用 pickle 创建了许多 bin 文件,并且您有一些代码可以加载和卸载数据的不同部分。

假设您有一个 16GB 的文件,您可以创建 16 个 1GB 的 pickle 文件。

如果你说你有足够的 RAM,在 pickle 文件完成后,你应该能够将它全部加载到内存中。

关于python - 将二进制值的文本转换为 numpy 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30903274/

相关文章:

python - 规范化 numpy 中的列

python - 如何打印列表中每 50 个值?

java - 如何在不完全加载图像的情况下读取图像的高度和宽度

python - python 中 scipy 四元集成的问题

c# - 我的程序使用多少 RAM?内存分析报告 Visual Studio

javascript - 使用 PhoneGap 处理 iOS 内存警告

python - 形状(150,) 和形状(150,1) 有什么区别?

python - numpy.ndarray,其形状(高度、宽度、n)来自每个图像像素的 n 个值

python - 为什么我的正则表达式分组没有正确分组?

python - 在 MySQL 数据库中插入 python 元组