# -F"\t" 指定分隔符为\t,否则 默认是[\t\s]
# -e 执行command 就是单行
# -a:使用空白作为缺省分隔符
# -n:在脚本中加入while循环 while(<>){ }
# -p:在脚本中加入while循环和print $_;命令 while(<>){print; }; 由于这里自己控制输出,所以没带-p参数
perl -F"\t" -ane
' if(/^#/){
print ;next;
}else{
my $count=0;
foreach $value (@F){
if($value==0){
$count++ ;
}
};
my $nf=@F; # 强制转换
my $x=($nf-1)/2; # (length(@F)-1)/2
print $nf."\t".$x."\t".$count."\n";
if ($count < (length(@F)-1)/2){print $_;}
}' inputfile |les
# 查看结果
perl -F"\t" -ane ' if(/^#/){print ;next}else{ my $count=0; foreach $value (@F){if($value==0){ $count++ ;}};my $nf=@F;if ($count < ($nf-1)/2){print $_;} }' inputfile |less
# 查看数字
perl -F"\t" -ane ' if(/^#/){print ;next}else{ my $count=0; foreach $value (@F){if($value==0){ $count++ ;}};my $nf=@F;my $x=($nf-1)/2;print $nf."\t".$x."\t".$count."\n";if ($count < ($nf-1)/2){print $_;} }' inputfile |less
[perl]过滤每行中0数值超过一半列数的行
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- sum函数 是求和 但使用sum(条件),就是计算复合条件的数据个数,也就与length一样了 he<-list(...
- 下面选了最近十年里,十位名人所做的毕业演讲。那么多的故事与经历,其实只想告诉你一件事: 面对迷茫和不确定的未来,我...
- 需求:表格会请求一部分数据回来,然后根据每行的id继续请求返回另一半的数据(如图片等) 解决方法:为二次请求回来的...
- df=pd.read_csv('data.csv', encoding='gbk',low_memory=Fals...
- 题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,...