python NLP数据集分割大文件

python NLP数据集分割大文件

NLP数据文件有时候特别大的文件,需要分割成N个小文件来处理
部分提取:可以提取N份,每份K行
全部分割:分割整个文件,每一份K行

import osdef split_file(filename, outdir,num_lines):""" 将文件按行数进行分割 \nfilename 文件名 \nnum_lines 每份包含的行数 \n"""file_name_without_path_and_extension = os.path.splitext(os.path.basename(filename))[0]with open(filename, 'r') as f:current_chunk = 1current_line = 0current_output = open(f"{outdir}{file_name_without_path_and_extension}{current_chunk}.txt", 'w')for line in f:current_output.write(line)current_line += 1if current_line >= num_lines:current_output.close()current_chunk += 1current_line = 0current_output = open(f"{outdir}{file_name_without_path_and_extension}{current_chunk}.txt", 'w')current_output.close()def split_file_max_chunks(filename,outdir, num_lines, max_chunks):""" 将文件按行数进行分割 \nfilename 文件名 \nnum_lines 每份包含的行数 \nmax_chunks 最大分出多少份 \n"""file_name_without_path_and_extension = os.path.splitext(os.path.basename(filename))[0]with open(filename, 'r') as f:current_chunk = 1current_line = 0current_output = open(f"{outdir}{file_name_without_path_and_extension}{current_chunk}.txt", 'w')for line in f:current_output.write(line)current_line += 1if current_line >= num_lines:current_output.close()if current_chunk >= max_chunks:breakcurrent_chunk += 1current_line = 0current_output = open(f"{outdir}{file_name_without_path_and_extension}{current_chunk}.txt", 'w')  # 这里更新了current_outputcurrent_output.close()def main():large_filename = "./data/large_file_1G.txt"outdir="./docs/"num_lines = 1000  # 每份包含 1000 行split_file(large_filename,outdir, num_lines)# max_chunks = 30   # 最大分出 30 份# split_file_max_chunks(large_filename,outdir, num_lines, max_chunks)if __name__ == "__main__":main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/814015.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[ LeetCode ] 题刷刷(Python)-第49题:字母异位词分组

题目描述 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词是由重新排列源单词的所有字母得到的一个新单词。 即将含有相同字符但排列顺序不同的字符串放入同一个组中。 示例 示例 1: 输入: strs ["eat", &qu…

21 标准错误

标准输出重定向关闭无数据 下面的代码&#xff1a; #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>int main() {close(1);i…

Xilinx Zynq UltraScale+ MPSoC无人机控制器

官方术语是无人驾驶飞行器&#xff08;UAV&#xff09;&#xff0c;这显然有点拗口&#xff0c;所以我们更喜欢说无人机。在过去的几十年里&#xff0c;无人机技术有了巨大的进步。我们为一个客户开发了一个无人机的飞行和视频控制器。 客户挑战 客户需要一种混合FPGA/CPU硬件&…

服务器停用,备份服务文件。

文章目录 引言I 文件备份1.1 数据库文件/证书1.2 redis1.3 nacosII JAVA流水线备份2.1 java构建2.2 镜像构建2.3 docker 部署2.4 子模块构建2.5 Dockerfile_prodIII VUE项目流水线备份3.1 Node.js 构建3.2 Dockerfile_prod

SqlServer 远程删除1000万数据需要多久?

删除速度和服务器的性能&#xff0c;删除的表是否有主外键等都有关系。 如果是全表数据删除&#xff1a;truncate table 表名 &#xff08;不管表多大&#xff0c;删除时间基本上是瞬间的&#xff0c;目前删除的最大的表数量级千万级&#xff09; 用delete语句删除&#xff…

是的,本科毕业八年,我考研了

今天&#xff0c;是一篇纯分享文。 是的&#xff0c;本科毕业八年&#xff0c;我考研了。 停更10个月&#xff0c;历时296天&#xff0c;我考研上岸了。 小伙伴们&#xff0c;好久不见。 一 发今年第一篇文章的时候刚处理完后续事宜&#xff0c;就简单说了句&#xff0c;后台…

MoCo v1(CVPR 2020)原理与代码解读

paper&#xff1a;Momentum Contrast for Unsupervised Visual Representation Learning official implementation&#xff1a;https://github.com/facebookresearch/moco 背景 最近的一些研究提出使用对比损失相关的方法进行无监督视觉表征学习并取得了不错的结果。尽管是受…

java算法:两个数字相加

首先看算法题描述&#xff1a; 1、给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 2、请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 3、你可以假设除了数字…

2024年认证杯SPSSPRO杯数学建模A题(第一阶段)保暖纤维的保暖能力全过程文档及程序

2024年认证杯SPSSPRO杯数学建模 A题 保暖纤维的保暖能力 原题再现&#xff1a; 冬装最重要的作用是保暖&#xff0c;也就是阻挡温暖的人体与寒冷环境之间的热量传递。人们在不同款式的棉衣中会填充保暖材料&#xff0c;从古已有之的棉花、羽绒到近年来各种各样的人造纤维。不…

【CSS基础】10.过度动画transition和动画animation

1. transition过度动画 1.1 介绍 CSS trnasition提供了一种在更改CSS属性时控制动画速度的方法。 可以让CSS的属性变化称为一个秩序一段时间的过程&#xff0c;而不是默认的立即生效 比如在基础9中我们学到的trnaslate可以让一个元素移动&#xff0c;但瞬间就完成了 我们可…

Java基础知识总结(52)

&#xff08;1&#xff09;String类部分方法 public class StringDemo2 { public static void main(String[] args) {String domainName "https://www.bytecollege";//trim() 去除字符串前后的空格System.out.println(" xyz ".trim());//xyzSystem.ou…

【DM8】临时表空间

临时表分类 事务级临时表会话级临时表 临时表&#xff0c;可以像普通表一样插入、更新和删除数据临时表的DML操作产生较少的redo日志临时表支持创建索引&#xff0c;以提高查询性能在一个会话或事务结束之后&#xff0c;数据将自动从临时表中删除不同的用户访问相同的临时表&a…

简述框架和函数库的区别

框架和函数库在软件开发中各自扮演着重要的角色&#xff0c;但它们之间也存在明显的区别。以下是它们之间的主要差异&#xff1a; 定义与目的&#xff1a; 函数库&#xff1a;函数库是一组预先编写好的函数的集合&#xff0c;这些函数可以被开发人员在其应用程序中调用&#xf…

正则表达式简介

1. 基础字符 . 任意单个字符除换行* 任意字符包含空字符? 任意单个字符[]括号中的出现一次()模式{n,m}出现n-m次^开头$结尾| 或者\w 匹配任意单词\d 匹配数字\s匹配空白字符 2. BRE vs ERE BRE: basic regex expresion ERE: extended regex expression 两者区别在于一些特…

KDTree和Octree的区别

在PCL&#xff08;PointCloud Library&#xff09;中&#xff0c;KD 树&#xff08;KDTree&#xff09;和 Octree&#xff08;Octree&#xff09;都是用于高效搜索点云数据的数据结构&#xff0c;它们之间的主要区别在于其构建方式和搜索性能&#xff1a; KD 树&#xff08;KD…

吴恩达深度学习 (week3,4)

文章目录 一、神经网络概述二、神经网络的表示三、神经网络的输出四、多个例子的向量化五、向量化实现的解释六、深度学习激活函数七、激活函数导数八、神经网络的梯度下降法九、深度学习随机初始化十、上述学习总结1、第一题2、第二题3、第三题4、第四题5、第五题6、第六题7、…

关于Transformer的面试题

文章目录 前言1、Transformer模型1. 1 基本要点1.2 提升 2、BN和LN的区别和联系2.1 基本要点2.2 扩展 3、PreNorm和PostNorm的区别[链接](https://www.zhihu.com/question/519668254)4、Multi-head self-attention中为什么要用三个不同的矩阵 前言 Transformer大模型的一些问题…

【GEE实践应用】哨兵1号和2号数据叠加

目录 1.数据叠加代码 2.代码逐句解释 1.数据叠加代码 var geometry table; //table是我们提前导入的矢量数据 // 加载Sentinel-2影像 var sentinel2 ee.ImageCollection("COPERNICUS/S2").filterBounds(geometry) // geometry是你感兴趣区域的几何对象.filte…

Redis:发布和订阅

文章目录 一、介绍二、发布订阅命令 一、介绍 Redis的发布和订阅功能是一种消息通信模式&#xff0c;发送者&#xff08;pub&#xff09;发送消息&#xff0c;订阅者&#xff08;sub&#xff09;接收消息。这种功能使得消息发送者和接收者不需要直接建立连接&#xff0c;而是通…

商标没有去注册有哪些不好的影响!

有些商家咨询普推知产老杨&#xff0c;商标没有去注册有哪些不好的影响&#xff0c;其实对企业来说还有许多实际不利的影响&#xff0c;有时代价比注册一个商标要大很多。 想的商标名称没去注册商标&#xff0c;如果别人抢注拿下商标注册证&#xff0c;那就会涉及侵权&#xf…