使用python中的pandas对csv文件进行拆分

之前写过一篇对大型csv文件进行拆分的文章
使用python对csv文件进行拆分
本来用着还挺顺手,直到最近在工作里,需要拆分七八百万行的csv文件,用原来的那套逻辑,居然要跑一个多小时,未免有些太慢了,于是就改用pandas处理,只需要两分钟就可以搞定

  1. 首先是导入库和确定文件路径
import pandas as pd
import datetime

start_time = datetime.datetime.now()  # 获取程序开始时间
path = r'D:\需要处理的文件.csv'
result_path_dir = r'D:\拆分后的输出文件路径'  #输出文件的路径

这里设置start_time是为了获取程序开始执行的时间,在程序结束的时候,可以方便查看这套逻辑总共运行了多久
2. 读取csv文件

data = pd.read_csv(path,encoding='GBK',dtype = str)

read_csv可以有很多参数,但在这次需求里,只需要目标文件、目标文件格式和字段类型就可以,本来这里是没加dtype参数的,但后来导出数据时,发现数字会变成科学计数法,不利于业务方使用,于是就可以在读取数据的时候,直接限制每个字段都是str类型,就可以避免这个问题
多说一句,目标文件我是从dbeaver导出来的,按默认导出方式,也会出现科学计数法的情况,可以通过更改配置的方式避免,这里也一并记录一下,把分隔符由默认的,改为\t,

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

孟意昶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值