Shell或者perl进行随机分组的问题我想对1个文件进行随机分组,也就是文件的第2列分成2个数,第3列也分成2个数,但是分配到的数是在原来准备分配的那个数的2/5~3/5范围内比如我的文件像下面这

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 13:53:57

Shell或者perl进行随机分组的问题我想对1个文件进行随机分组,也就是文件的第2列分成2个数,第3列也分成2个数,但是分配到的数是在原来准备分配的那个数的2/5~3/5范围内比如我的文件像下面这
Shell或者perl进行随机分组的问题
我想对1个文件进行随机分组,也就是文件的第2列分成2个数,第3列也分成2个数,但是分配到的数是在原来准备分配的那个数的2/5~3/5范围内
比如我的文件像下面这样:
1 10 16
2 12 20
3 15 22
这时候我随机产生的2个文件可能为:
a1.txt:
1 5 7
2 5 11
3 9 10
b1.txt
1 5 9
2 7 9
3 6 12
也就是对应每行的第1列在分配到的两个文件都一样的编号,只是第2列的数产生了一个在自己2/5~3/5范围内的一个数,那分配到另外一个文件的数就是直接把原来的数减去产生的那个数,第3列也是这样做
谁可以帮忙解决下,本人在随机分组过程中已经尝试过 很多情况,每次结果都不理想,所以只能一次次重做,
这是用Shell写的,awk '{srand();while(1){a=int((rand()*0.2+0.4)*$2);b=$2-a;c=int((rand()*0.2+0.4)*$3);d=$3-c;if((a "a.txt";print $1,b,d >> "b.txt";break;}}}' file
但是只是进行一次,我想随机这样的过程1000次,也就是产生1000组,每组文件的名字有规律,为a1,b1,a2,b2.a1000,b1000,a,b表示每次产生的2个文件,后面的数字表示第几次随机过程.
各路大侠帮忙,在下感激不尽~

Shell或者perl进行随机分组的问题我想对1个文件进行随机分组,也就是文件的第2列分成2个数,第3列也分成2个数,但是分配到的数是在原来准备分配的那个数的2/5~3/5范围内比如我的文件像下面这
#!/usr/bin/perl
#rand2.pl
#Shell或者perl进行随机分组
@file=`cat $ARGV[0]`;
for (@file){
chomp;
($r[$i][0],$r[$i][1],$r[$i][2])=(split)[0,1,2];
$i++;
}
until (@all==1000){
$check='';
for(0..$#file){
($a[$_][0],$a[$_][1],$a[$_][2])=
($r[$_][0],
int rand(($r[$_][1])*(3/5-2/5)+1)+ int($r[$_][1]*2/5),
int rand(($r[$_][2])*(3/5-2/5)+1)+ int($r[$_][2]*2/5));
($b[$_][0],$b[$_][1],$b[$_][2])=
($r[$_][0],$r[$_][1]-$a[$_][1],$r[$_][2]-$a[$_][2]);
$check.=$a[$_][1].$a[$_][2];
}
next if $check~~@all;
push @all,$check;
$n=@all;
print "\n=$n=\n";
print ":a".$n."\n";
print "$a[$_][0] $a[$_][1] $a[$_][2]\n" for 0..$#file;
print ":b".$n."\n";
print "$b[$_][0] $b[$_][1] $b[$_][2]\n" for 0..$#file;
}
------------------------------------------
perl rand2.pl yourfile
结果
..
.
=999=
:a999
1 6 8
2 5 12
3 6 12
:b999
1 4 8
2 7 8
3 9 10
=1000=
:a1000
1 6 9
2 5 11
3 6 10
:b1000
1 4 7
2 7 9
3 9 12

Shell或者perl进行随机分组的问题我想对1个文件进行随机分组,也就是文件的第2列分成2个数,第3列也分成2个数,但是分配到的数是在原来准备分配的那个数的2/5~3/5范围内比如我的文件像下面这 CheckDep := $(shell $(PERL) ./make/perl_script/filecheck.pl $(DEPPATH))是什么意思 写一个随机DNA序列 100bp用的是PERL perl 、shell、python三种脚本语言那种好学、易用这三种脚本语言那一种更好学,它们分别用在什么领域能发挥自己的长处 spss中如何对一组数据进行随机分组,既把一组数据随机分成五组 perl $@ 我写perl的,表示或者关系写法有一个问题 a==1||a==2||a==3||a==4可以写成类似a==(1||2||3||4)吗?怎么写 请教一个perl基础问题,for $ranking (reverse sort keys %node),这句的含义是什么 建模中灾情巡视路线问题,我想用图论解决,地图中有很多点但是首先要进行分组,如何分组?具体的问题百度一下“灾情巡视路线”就有 大家谁知道怎样用perl解决生物问题 ansys接触分析的问题solid-solid直接接触分析我用170、173接触对可以算,可是分析solid-shell的时候,总是会出现某些节点位移过大的问题.或者给一个shell单元的接触分析的例子. 让电脑自动1~9随机或者进行9位电脑随机, shell 排列及组合问题平均分组的时候,什么时候会乘以或者除以组数的阶乘啊?最好有例题, 数学建模F题:会议分组问题F题:会议分组问题目前,国内外许多重要会议都是以分组形式进行研讨,以便充分交流、沟通.一般的、一个由N名代表参加会议,要分为M个场次,每场会议分为L个小组 急:请问在用SPSS进行样本T检验,不知道怎么设置分组变量我的问卷有27个问题,进行样本T检验的目的是为了检验问题的区分度但我的原始问卷里没有分组变量,听说是要先分成高低两组再进行 平均分组的公式是什么?高中的排列组合问题. perl语言中遇到的情况