利用perl或者R实现不规则文本的行列转置
来源:互联网 发布:sql identity属性 编辑:程序博客网 时间:2024/06/03 14:03
如下是一个不规则的文本(行列中有空缺位),将其行列转置,求新的文本。
Array.lst:
1
2
3
4
5
Perl代码:
#! /usr/bin/perl -wuse strict;die "perl $0 \n" unless @ARGV==1;my $lst=shift;open IN,$lst;my (@a,@b);my $len;my $max=0;while(<IN>){ chomp; @b=split/\t/,$_; $len=@b; $max=$max > $len ? $max:$len; push @a,[@b];}close IN;for my $i(0..$max-1){ for(@a){ @$_[$i]||=""; print "@$_[$i]\t"; } print "\n";}__END__
命令行: perl transposition.array.pl
显然,单纯用perl实现起来比较繁琐,当然可以借助perl的相关模块实现快速转化,此处略去不讲。
接下来在R语言中,这个例子就很容易实现了,请看代码:
> a<-read.table(file="array.lst",fill=T,sep="\t")> write.table(t(a),file="./b",row.names=F,col.names=F,quote=F,sep="\t")
结果为:b.
1
aa
bb
cc
dd
0 0
- 利用perl或者R实现不规则文本的行列转置
- javascript 利用hash实现行列转置
- 利用函数实现的oracle行列转换
- C# winform 实现(不规则)窗体或者控件的拖动
- C# winform 实现(不规则)窗体或者控件的拖动
- sql行列转置的实现方法
- 关于行列转置的实现方法
- sql行列转置的实现方法
- sql行列转置的实现方法
- VB中删除、替换或者插入内容到文本中某一行及解析文本行列的处理实例(转)
- 利用R语言对数据行列转制
- 利用css3实现不规则图像
- VB中删除、替换或者插入内容到文本中某一行,及文本行列的处理实例
- 利用函数实现n阶方阵的行列置换
- 不规则窗体的实现
- 不规则窗体的实现
- 不规则截图的实现
- 利用层实现ToolTip,利用图形组合实现不规则的ToolTip
- 路径中 斜杠/和反斜杠\ 的区别
- ALSA-amixer的用法
- Java序列化的机制和原理
- hdu4927 Series 1(大数加减乘除)
- 安装redis及配置php扩展
- 利用perl或者R实现不规则文本的行列转置
- 使用share SDK实现QQ空间授权登录、分享(1.x版本)
- 无题
- 2014华为上机题C++编程
- ZK(7.0.1)+Spring(2.3.2)+MyBatis(2.3.2)整合的简单示例
- UIImageView擦掉效果
- POJ 2763 Housewife Wind 树链剖分
- hdu-2045-不容易系列之(3)—— LELE的RPG难题(递推法)
- java vs javaw vs javaws