我正在尝试使用以下方法将较大的csv文件(25 GB)读取到Google云实例上:
from google.cloud import storage
from io import StringIO
client = storage.Client()
bucket = client.get_bucket('bucket')
blob = bucket.get_blob(f"full_dataset.csv")
bt = blob.download_as_string()
s = str(bt,"utf-8")
s = StringIO(s)
df = pd.read_csv(s)
这给我以下错误:
---------------------------------------------------------------------------
MemoryError Traceback (most recent call last)
<ipython-input-18-e919b9b86de2> in <module>
2
3 s = str(bt,"utf-8")
----> 4 s = StringIO(s)
MemoryError:
您是否可以使用另一种方法来有效地读取此csv文件而不会出现内存错误?
对象太大,无法放入内存中的字符串。您可以改为逐块读取它,例如,使用google.resumable_media。