python 获取较大.csv文件的行数

所谓较大.csv文件,就是直接用pd.read_csv读取,会出现MemoryError.

这时需要把文件变成迭代器,分段读取.

user_info = pd.read_csv("E:\data_analysis\Graduation design\data\weibo_users.csv", iterator=True)

添加了iterator参数. 这样可以使用.get_chunk(10000)方法,每次读取一万行,同时用count累加.

当文件行数不够的时候,会报出StopIteration,这时跳出循环即可

count = 0
for i in range(300):
    try:
        user = user_info.get_chunk(10000)
        count += user.shape[0]
    except StopIteration:
        break
print(count)
【注】:对于get_chunk方法报错,存在一个技术细节,如果行数不够10000,它会读取对应的行数,然后下一次再调用时,才报错,而不是直接报错.
 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值