Python拆分大型CSV文件代码实例


Posted in Python onOctober 07, 2019

这篇文章主要介绍了Python拆分大型CSV文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# @FileName :Test.py
# @Software PyCharm

import os
import pandas as pd

# filename为文件路径,file_num为拆分后的文件行数
# 根据是否有表头执行不同程序,默认有表头的
def Data_split(filename,file_num,header=True):
  if header:
    # 设置每个文件需要有的行数,初始化为1000W
    chunksize=10000
    data1=pd.read_table(filename,chunksize=chunksize,sep=',',encoding='gbk')
    # print(data1)
    # num表示总行数
    num=0
    for chunk in data1:
      num+=len(chunk)
    # print(num)
    # chunksize表示每个文件需要分配到的行数
    chunksize=round(num/file_num+1)
    # print(chunksize)
    # 分离文件名与扩展名os.path.split(filename)
    head,tail=os.path.split(filename)
    data2=pd.read_table(filename,chunksize=chunksize,sep=',',encoding='gbk')
    i=0
    for chunk in data2:
      chunk.to_csv('{0}_{1}{2}'.format(head,i,tail),header=None,index=False)
      print('保存第{0}个数据'.format(i))
      i+=1
  else:
    # 获得每个文件需要的行数
    chunksize=10000
    data1=pd.read_table(filename,chunksize=chunksize,header=None,sep=',')
    num=0
    for chunk in data1:
      num+=len(chunk)
      chunksize=round(num/file_num+1)

      head,tail=os.path.split(filename)
      data2=pd.read_table(filename,chunksize=chunksize,header=None,sep=',')
      i=0
      for chunk in data2:
        chunk.to_csv('{0}_{1}{2}'.foemat(head,i,tail),header=None,index=False)
        print('保存第{0}个数据'.format(i))
        i+=1

filename='文件路径'
#num为拆分为的文件个数
Data_split(filename,num,header=True)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中类的一些方法分析
Sep 25 Python
python实现中文输出的两种方法
May 09 Python
在Python中用split()方法分割字符串的使用介绍
May 20 Python
Python标准模块--ContextManager上下文管理器的具体用法
Nov 27 Python
分析python请求数据
Aug 19 Python
pycharm 将python文件打包为exe格式的方法
Jan 16 Python
python3 property装饰器实现原理与用法示例
May 15 Python
python3 写一个WAV音频文件播放器的代码
Sep 27 Python
Python通过两个dataframe用for循环求笛卡尔积
Apr 29 Python
Python爬虫设置ip代理过程解析
Jul 20 Python
Python实现Kerberos用户的增删改查操作
Dec 14 Python
Python 数据可视化神器Pyecharts绘制图像练习
Feb 28 Python
Python模块汇总(常用第三方库)
Oct 07 #Python
python numpy之np.random的随机数函数使用介绍
Oct 06 #Python
python系列 文件操作的代码
Oct 06 #Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 #Python
Anaconda之conda常用命令介绍(安装、更新、删除)
Oct 06 #Python
Python pip 安装与使用(安装、更新、删除)
Oct 06 #Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
Oct 06 #Python
You might like
PHP字符过滤函数去除字符串最后一个逗号(rtrim)
2013/03/26 PHP
php用xpath解析html的代码实例讲解
2019/02/14 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
document.all与WEB标准
2020/05/13 Javascript
javascript语言结构小记(一)
2011/09/10 Javascript
jquery.post用法之type设置问题
2014/02/24 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
Angular.JS去掉访问路径URL中的#号详解
2017/03/30 Javascript
Vue表单类的父子组件数据传递示例
2018/05/03 Javascript
Express之托管静态文件的方法
2018/06/01 Javascript
swiper.js插件实现pc端文本上下滑动功能示例
2018/12/03 Javascript
详解vue 动态加载并注册组件且通过 render动态创建该组件
2019/05/30 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
layui多图上传实现删除功能的例子
2019/09/23 Javascript
js中复选框的取值及赋值示例详解
2020/10/18 Javascript
Python生成随机密码
2015/03/10 Python
Python pickle模块用法实例分析
2015/05/27 Python
python实现给数组按片赋值的方法
2015/07/28 Python
python将字母转化为数字实例方法
2019/10/04 Python
python数值基础知识浅析
2019/11/19 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
西班牙汉普顿小姐:购买帆布鞋和太阳镜
2016/10/23 全球购物
美国户外服装和装备购物网站:Outland USA
2020/03/22 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
销售顾问的岗位职责
2013/11/13 职场文书
党校学习自我鉴定
2014/02/24 职场文书
大课间活动实施方案
2014/03/06 职场文书
租房合同协议书
2014/04/09 职场文书
诚信承诺书模板
2014/05/26 职场文书
孩子教育的心得体会
2014/09/01 职场文书
2015羊年春节慰问信
2015/02/14 职场文书
2015年教师见习期工作总结
2015/05/20 职场文书
《颐和园》教学反思
2016/02/19 职场文书
读《工匠精神》有感:热爱工作,精益求精
2019/12/28 职场文书