首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python工具开发实践-csv文件分割

今天工作中需要处理一个700多W行的csv文件,要求将csv文件按照100W行进行分割,以便可以用excel打开,找了几个脚本,处理小文件都差不多,但是当我尝试处理这个大文件时,代码效率就凸显出来了,有的程序半个小时都处理不完...首先获取待处理文件名称 file_name = input('请输入文件名称(包含路径): ') 读取文件 with open(file_name, 'r') as f: csv_file = f.readlines...() 定义csv分割行数 linesPerFile = 1000000 初始化文件编号为1 filecount = 1 以0为起点,文件行数为终点,分片大小为间隔,循环遍历文件,每次遍历行数即为分片大小...+ '_' + str(filecount) + '.csv', 'w+') as f: 判断是否为第一个文件,不是的话需要先写入标题行 if filecount > 1: f.write(csv_file...[0]) 批量写入i至i+分片大小的多行数据 f.writelines(csv_file[i:i+linesPerFile]) 完成一个文件写入之后,文件编号增加1 filecount += 1 至此,

1.2K40
您找到你想要的搜索结果了吗?
是的
没有找到

Python小工具:CSV文件分割神器2.0

工作中需要处理一个700多W行的csv文件,要求将csv文件按照100W行进行分割,以便可以用excel打开,找了几个脚本,处理小文件都差不多,但是当我尝试处理这个大文件时,代码效率就凸显出来了,有的程序半个小时都处理不完..., 'r', encoding=file_code) as f: csv_file = f.readlines() 定义csv分割行数 linesPerFile = 1000000 初始化文件编号为...1 filecount = 1 以0为起点,文件行数为终点,分片大小为间隔,循环遍历文件,每次遍历行数即为分片大小,而不是每行遍历一次 for i in range(0, len(csv_file)...(csv_file[i:i+linesPerFile]) 完成一个文件写入之后,文件编号增加1 filecount += 1 至此,主程序基本完成了,可以采用time函数在程序处理前后进行打点计时,统计处理耗时...回复 csv2 获取CSV文件分割神器2.0版本

3.5K30

Linux文件分割合并

分割文件 文件分割可以使用split命令,该即支持文本文件分割,又支持二进制文件分割;而合并文件可以使用cat命令。 1.1 文本文件分割 分割文本文件时,可以按文件大小分割,也可以按文本行数分割。...按文件大小分割文件大小分割文件时,需要以-C参数指定分割后的文件大小: $ split -C 100M large_file.txt stxt 如上所示,我们将大文件large_file.txt按100M...大小进行分割,并指定了分割文件前缀stxt;当不指定前缀时,split会自动对分割文件进行命名,一般会以x开头。...按行分割 文本文件还可以以行为单位进行分割,以行数进行分割时会忽略文件大小,并以-l参数指定分割文件的行数: $ split -l 1000 large_file.txt stxt 1.2 二进制文件分割...二进制文件分割类似于按大小分割文本文件,不同的是以-b参数来指定分割后的文件大小: $ split -b 100M data.bak sdata 2.

4.5K20

如何在 Linux 中将 CSV 文件转换为 TSV 文件

Linux操作系统中,可以使用各种命令和工具来处理和转换文本文件。当需要将以逗号分隔的CSV文件转换为以制表符分隔的TSV文件时,可以使用一些简单的命令和技巧来实现。...本文将详细介绍如何在Linux中将CSV文件转换为TSV文件。图片步骤 1:理解 CSV 文件和 TSV 文件在开始转换之前,我们首先需要理解CSV文件和TSV文件的格式。...我们的目标是将CSV文件转换为TSV文件。步骤 2:使用 sed 命令进行转换在Linux中,可以使用sed(流编辑器)命令来进行文本替换和转换操作。...执行以下命令来将CSV文件转换为TSV文件,并将输出保存到新的文件中:sed 's/,/\t/g' input.csv > output.tsv在上面的命令中,input.csv是要转换的CSV文件的名称...结论通过本文的指导,您已经学会了在Linux中将CSV文件转换为TSV文件的方法。使用sed命令或awk命令,您可以快速而简便地进行转换操作,将逗号分隔的CSV文件转换为制表符分隔的TSV文件

69400

Linux 使用split命令分割文件

概述 split 命令可以将一个大文件分割成很多个小文件。在默认情况下将按照每1000行切割成一个小文件,默认前缀为 x。没有输入或输入为 - 时,从标准输入中读取。 2....实例 4.1 按行分割 xiaosi@ying:~/test/input$ split -6 a.txt 或者 xiaosi@ying:~/test/input$ split -l 6 a.txt 执行以上命令后...而在这些小文件中,每个文件都至多6行数据(最后一个文件有可能不满6行)。...xae xiaosi@ying:~/test/input$ cat a.txt | wc -l 28 xiaosi@ying:~/test/input$ cat xae | wc -l 4 4.2 按文件大小分割...xiaosi 52428800 4月 8 18:25 xac -rw-rw-r-- 1 xiaosi xiaosi 7713600 4月 8 18:25 xad 4.3 修改后缀 上述示例中,文件分割成多个带有字母的后缀文件

2.8K50

CSV文件存储

它比 Excel 文件更加简洁, XLS 文本是电子表格,它包含了文本、数值、公式和格式等内容,而 CSV 中不包含这些内容,就是特定字符分割的纯文本,结构简单清晰。...文件,然后指定打开的模式为 w (即写入),获得文件句柄,随后调用 csv 库的 writer() 方法初始化写入对象,传入该句柄,然后调用 writerow() 方法传入每行的数据即可完成写入。...另外,如果接触过 pandas 等库的话,可以调用 DataFrame 对象的 to_csv() 方法来将数据写入 CSV 文件中。 读取 我们同样可以使用 csv 库来读取 CSV 文件。...注意,如果 CSV 文件包含中文的话,还需要指定文件编码。...在做数据分析的时候,此种方法用的比较多,也是一种比较方便地读取 CSV 文件的方法。 我们了解了 CSV 文件的写入和读取方式。这也是一种常用的数据存储方式,需要熟练掌握。

5.1K20

Python使用csv模块读写csv文件

可以使用excel开启csv文件,打开后看到的数据以excel表格的方式进行展示。 现在我们就开始使用csv将数据写入csv文件,然后将数据从csv中读取出来使用。...一、将数据写入csv文件中 import csv csv_data = ( (1, 2, 3, 4, 5, 6), ('a', 'b', 'c', 'd', 'e', 'f'),...运行结果: 运行以上代码后,会在当前目录下创建一个csv_file.csv文件,并写入csv_data的数据,可以使用excel打开文件查看。如下图。...二、从csv文件中读取数据 input_file_name = 'csv_file.csv' def read_csv(input_file_name): """ 读取csv文件数据...2.csv通过csv.reader()来打开csv文件,返回的是一个列表格式的迭代器,可以通过next()方法获取其中的元素,也可以使用for循环依次取出所有元素。

3.4K30

CSV文件太大打不开进行分割、和打开乱码问题

CSV文件打开以及乱码问题 今天要使用一个csv文件,但是有8个G,excel打不开,用Python的pandas也读不了,可能是我电脑配置太落后,也可能是数据实在太大了。...解决办法:首先处理打不开的问题,我们可以把大的csv分割成若干小文件,使用文件分割器,按10000行一个文件分割分割器在F:\新建文件夹\csv文件分割器\split.exe(这是我的放的位置),...贴上CSV文件分割器的下载地址:https://www.jb51.net/softs/606744.html 稍等一段时间就行。...分割完之后,用excel打开发现是乱码,这是因为编码格式不同,可以在excel中转换编码格式,在数据栏—>自文件—>找到我们要打开的csv—>下一步之后有个编码格式选择,**我们要选择UTF-8的格式,...然后后面分隔符我们用逗号,并且把Tab的钩子去掉 这样就可以看到我们想看的csv文件了 如果csv文件用记事本打开可以正常显示,但用excel打开乱码,可以将csv文件的编码改成ANSI

4.8K30

详解使用 split 命令分割 Linux 文件

一些简单的 Linux 命令能让你根据需要分割以及重新组合文件,来适应存储或电子邮件附件大小的限制。 Linux 系统提供了一个非常易于使用的命令来分割文件。...在将文件上传到限制大小的存储网站或者作为邮件附件之前,你可能需要执行此操作。要将文件分割为多个文件块,只需使用 split 命令。...> original.file 上面所示的分割和组合命令适合于二进制和文本文件。...在此示例中,我们将 zip 二进制文件分割为 50KB 的块,之后使用 cat 重新组合了它们,然后比较了组合后的文件和原始文件。diff 命令验证文件是否相同。...总结 以上所述是小编给大家介绍的使用 split 命令分割 Linux 文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

1.9K40

python 数据分析基础 day5-读写csv文件基础python读写csv文件通过pandas模块读写csv文件通过csv模块读写csv文件

今天说一下使用python读写csv文件。 读写csv文件可以使用基础python实现,或者使用csv模块、pandas模块实现。...基础python读写csv文件 读写单个CSV 以下为通过基础python读取CSV文件的代码,请注意,若字段中的值包含有","且该值没有被引号括起来,则无法通过以下的简单代码获取准确的数据。...csv文件大致相同,但需要利用glob模块以及os模块获取需要读取的文件名。...读取多个csv文件并写入至一个csv文件 import os import glob import pandas as pd i nputPath="读取csv文件的路径" outputFile="写入数据的...(outputFile) 通过csv模块读写csv文件 读写单个CSV文件 代码如下: import csv inputFile="要读取的文件名" outputFile=“写入数据的csv文件名” with

3.4K60

CSV文件编辑器——Modern CSV for mac

文件处理 加载数十亿行的文件。 只读模式,可实现更高效的文件处理。 加载文件的速度比 Excel 快 11 倍。 查找和排列您的数据使用正则表达式查找/替换、突出显示匹配、整个单元格匹配等。...Modern CSV Mac功能特点 轻松编辑CSV文件 为什么移动列、复制行或拆分单元格会很困难?使用现代 CSV,这很容易。 使用大多数命令,您可以一次对多个行、列或单元格进行操作。...快速查看大型 CSV 文件 Modern CSV 不仅是一个强大的 CSV 编辑器,还是一个强大的 CSV 查看器。它带有只读模式,可以快速加载大文件,并且占用的内存很小,只是文件大小的一小部分。...您可以自定义的 CSV 编辑器 我们将 Modern CSV 设计为一个易于使用的应用程序。要更轻松地查看 CSV 文件,您可以设置主题(浅色或深色)、更改单元格大小或每隔一行或一列添加阴影。...您还可以告诉它如何处理不同扩展名的文件。您的 .csv 文件在带有 CRLF 换行符的 ANSI(Windows-1252,西欧)字符编码中是否有分号分隔符?您可以每次都打开它并相应地保存文件

4.5K30
领券