我有一个巨大的22 GB csv文件,其中包含10000 x 10000矩阵条目。但实际上我只需要一小部分文件用于我的目的,可以很好地适应我的4 GB内存。是否有延迟将CSV加载到我的系统,以便我只需要选择一些非传染性的文件部分说25个不同的特定行。我听说大熊猫iterator
逐个加载数据,但我仍然不确定它的内存要求。
答案 0 :(得分:3)
对于少量行尝试使用linecache并手动创建pandas DataFrame。
例如,以下代码将第12,24和36行(1索引)放入DataFrame中。
import linecache
from pandas import DataFrame
filename = "large.csv"
indices = [12,24,36]
li = []
for i in indices:
li.append(linecache.getline(filename, i).rstrip().split(','))
dataframe = DataFrame(li)