這么大數據量,小的內存,還一定要用python/pandas的話可以考慮使用迭代器,在讀取csv時指定參數data_iter = pd.read_csv(file_path, iterator=True),然后指定df = data_iter.get_chunk(n)將指定的n行數據加載到內存進行處理或者可以指定chunks = pd.read_csv(file_path, chunksize=m)將數據切分,然后通過for chunk in chunks迭代處理數據。當然這么做的前提是要明確最終需要的計算結果怎么通過分塊的結果聚合起來,比如求均值可以求每個分塊的和然后記錄行數,求value_counts()可以使用Series.add方法進行迭代等。這么做可以保證內存穩定在一定的范圍,但是速度上肯定會受限。如果要進行數據建模,用到scikit-learn之類的16G內存真的太吃緊了。