我们可以通过使用 Pandas 库的一些参数来避免这个错误。
buffer_size
参数来设置缓冲区的大小。例如:import pandas as pd
data = {'col_1': [1, 2, 3], 'col_2': ['a', 'b', 'c']}
df = pd.DataFrame(data)
# 设置缓冲区大小为 10 MB
df.to_csv('data.csv', index=False, buffer_size=10_000_000)
例如,在 Linux 上,可以执行以下命令来更改默认的缓冲区大小:
sudo sysctl -w fs.file-max=2097152
sudo sysctl -w fs.nr_open=2097152
sudo sysctl -p
在 Windows 上,可以执行以下命令:
fsutil behavior set memoryusage 2
import dask.dataframe as dd
data = {'col_1': [1, 2, 3], 'col_2': ['a', 'b', 'c']}
df = pd.DataFrame(data)
# 使用 Dask 将 DataFrame 写入 Parquet 文件
dd.from_pandas(df, npartitions=1).to_parquet('data.parquet', engine='pyarrow')
下一篇:避免在括号关闭前换行。