python pandas处理大数据文件常见问题汇总

本文介绍了解决Linux系统上由于4GB内存限制,无法一次性读取8GB大文件的问题。通过设置chunksize,将文件分段处理并逐次写入结果,避免内存溢出。关键代码展示了如何使用pandas的read_csv进行分块读取和合并输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1、电脑内存不够,读取文件导致报错


1、电脑内存不够,读取文件导致报错

试验环境:

     操作系统:Linux

    内存大小:4G

    文件大小:8G

    文件类型:txt

常规读取文本代码:使用read_csv

df = pd.read_csv(os.path.join(temp_path,"{}.txt".format(filename)),sep='\t',names=names)

解决方法:将数据集切割、分段读取,处理完一段数据就写入结果文件。

代码:

chunksize_value:分割后每段数据集的数量,取决于机器内存大小以及运算力

df = pd.read_csv(os.path.join(temp_path, "{}.txt".format("temp")), sep='\t', names=["id", "names"], chunksize=chunksize_value)

count = 0

for data_d in df:

    count+=1

    此处贴入你要处理的代码

    if count==1:

       result_df .to_csv(os.path.join(temp_path, "upload_data.csv"), header=False, index=None, mode='w')

    else:

        result_df .to_csv(os.path.join(temp_path, "upload_data.csv"), header=False, index=None, mode='a')


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码是一生的追求(找工作版)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值