Biostar Beta. Not for public use.
Looping over plink files
0
Entering edit mode
21 months ago
paolo002 • 140

Hi, I have .bed .bim. fam files for various chromosomes of some individuals and I would like merge with other plink files of some other individuals again for each chromosomes I would like to write a loop that does the merging automatically for all the files in just one command line Something like this:

for file in /home/users/chrs/*.{bed,bid,fam};
do plink --bfile filename1.chr$ --bmerge filename2.chr$.bed filename2.chr$.bim filename2.chr$.fam --out filename1_filename2_merged;
done

Here $ means any number from 1 to 22 for each files of the chromosomes.

Any help will be highly appreciated,thanks

Bash shell Linux • 530 views
ADD COMMENTlink
0
Entering edit mode

you need another inner loop: for j in seq 1 22

ADD REPLYlink
0
Entering edit mode

I see, but about the $ sign, it is ok to write like this?will it take any number from 1 to 22 ?

ADD REPLYlink
0
Entering edit mode
for j in $(seq 1 22); do echo chr$j; done
ADD REPLYlink
0
Entering edit mode

Hi, sorry, I tried the two loops but it did not work, can you be more specific please?

ADD REPLYlink
0
Entering edit mode

Could you write what did you try?

ADD REPLYlink
0
Entering edit mode

I see,I have got it Thanks

ADD REPLYlink
0
Entering edit mode

Did you try --merge-list option from plink ? You can merge all the chormosomes for one file using this and do a for loop to merge with other files. http://zzz.bwh.harvard.edu/plink/dataman.shtml#mergelist

ADD REPLYlink
1
Entering edit mode

I see, yes, I know about that option but I have not tried it. I will do that then. Cheers

ADD REPLYlink

Login before adding your answer.

Similar Posts
Loading Similar Posts
Powered by the version 2.1