文档章节

txt根据某一列进行文件切分

xiechaoyong
 xiechaoyong
发布于 2016/07/05 16:27
字数 210
阅读 23
收藏 0
$in = $ARGV[0];
%dict = ();
$usage = '
Usage:
1. perl file_splitter.pl <file.txt>
2. perl file_splitter.pl <file.txt> <column_index(1_Start)>
';
if($#ARGV == -1 ){
	die($usage);
}
if($#ARGV == 0){
	$in = $ARGV[0];
	print STDOUT "请输入切分列(从1开始编号):";
	$col = <STDIN>;
}

if($#ARGV == 1){
	$in = $ARGV[0];
	$col = $ARGV[1];
}
print '文件切分即将开始:'.
"\n切分文件:$in\n".
"切分列:$col\n"
."请确认(Y/N):";

$yesOrNo = <STDIN>;
chomp $yesOrNo;
while($yesOrNo ne 'Y' and $yesOrNo ne 'N' and $yesOrNo ne 'y' and $yesOrNo ne 'n'){
	print "请确认(Y/N):";
	$yesOrNo = <STDIN>;
	chomp $yesOrNo;
}
if($yesOrNo eq 'N' or $yesOrNo eq 'n'){
	die("退出程序");
}
$col --;
open RH,$in or die "$!";
$header = <RH>;
while($ln = <RH>){
@t = split(/\t/,$ln);
if($dict{$t[$col]}){
	push @{$dict{$t[$col]}},$ln;
}else{
	$dict{$t[$col]} = [$ln];
}
}
close RH;

while(my($xq,$data) = each %dict){
	open WH,">".$xq . "_S.txt";
	print WH $header;
	for($i = 0; $i < @{$data}; $i ++){
		print WH $data->[$i];
	}
	close WH;
}

 

© 著作权归作者所有

xiechaoyong
粉丝 1
博文 27
码字总数 3531
作品 0
海淀
私信 提问
sklearn、XGBoost、LightGBM理解与调参

本文主要是针对sklearn,XGBoost,LightGBM的官方文档阅读的一些整理,主要针对sklearn的集成方法、以及gbdt族模型的具体实现差异以及各个模型的重要参数、特点做了一个整理 sklearn集成方法 ...

dby_freedom
2018/05/03
0
0
基于云上分布式NoSQL的海量气象数据存储和查询方案

摘要:气象数据是一类典型的大数据,具有数据量大、时效性高、数据种类丰富等特点,每天产生的数据量常在几十TB到上百TB的规模,且在爆发性增长。如何存储和高效的查询这些气象数据越来越成为...

阿里云云栖社区
2017/12/01
0
0
基于云上分布式NoSQL的海量气象数据存储和查询方案

摘要: 气象数据是一类典型的大数据,具有数据量大、时效性高、数据种类丰富等特点,每天产生的数据量常在几十TB到上百TB的规模,且在爆发性增长。如何存储和高效的查询这些气象数据越来越成...

阿里云云栖社区
2017/11/30
0
0
基于云上分布式NoSQL的海量气象数据存储和查询方案

前言 气象数据是一类典型的大数据,具有数据量大、时效性高、数据种类丰富等特点。气象数据中大量的数据是时空数据,记录了时间和空间范围内各个点的各个物理量的观测量或者模拟量,每天产生...

云栖社区
2017/11/22
0
0
Linux命令之大文件切分与合并

Linux命令之大文件切分与合并 2014-08-19 0 个评论 来源:iAm333的专栏 收藏 我要投稿 当面临将一个大文件进行切分时,linux的split命令是很好的选择。它包含多种参数,支持按行、大小进行切...

片刻
2015/12/28
103
0

没有更多内容

加载失败,请刷新页面

加载更多

RS-232、RS422和RS-485的区别和各自的实现方式

一、殊途同归 RS-232、RS422和RS-485 均属于UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),仅用两根信号线(Rx 和Tx)就可以完成通信过程; 而由于各自使用的电...

rainbowcode
44分钟前
0
0
spring 本类中方法调用另外一个方法事务不生效

1、在spring配置文件中添加 <aop:aspectj-autoproxy expose-proxy="true" proxy-target-class="true" />声明自动代理 <!-- 标识通过aop框架暴露该代理,aopContext能够访问. --> proxy-targe......

重城重楼
50分钟前
5
0
项目 banner 乱弹

------------------------------------------ 村上春树 ------------------------------------- 如果我爱你,而你也正巧爱我,你头发乱了的时候,我会笑笑地替你拨一拨,然后手还留恋地在你...

宿小帅
今天
3
0
PHP获取未来七天的日期和星期

php获取未来七天的日期和星期代码 第一步:获取需要天数的日期,然后调用函数 //获取未来七天的日期 for($i=1;$i<8;$i++){ $dateArray[$i]=date('Y-m-d',strtotime(d...

一只懒猫-
今天
2
0
总结:IO模型

分类 多路复用 参考文章: https://www.jianshu.com/p/6a6845464770 https://www.cnblogs.com/zingp/p/6863170.html https://blog.csdn.net/sehanlingfeng/article/details/78920423......

浮躁的码农
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部