[GenABEL-dev] [Genabel-commits] r630 - pkg/ProbABEL/src

L.C. Karssen l.karssen at erasmusmc.nl
Fri Jan 7 17:41:59 CET 2011


On Fri, 2011-01-07 at 16:30 +0100, Yurii Aulchenko wrote:
> Great work, happy that things go on improving!
Thanks!

> 
> Did you update the "changes.log", or will we eventually generate that
> based on commit-comments? (Some way to automate that???)
I think we should try to automate that. Let's think of that and maybe
look around how others do it. 


> 
> Btw my feeling is that few people use this pl except us -- do we
> describe how to configure it in the manual? That may be the reason...
It is mentioned in the manual. Maybe others have less cohorts?

Lennart.


> 
> Yurii
> 
> On 1/7/11, noreply at r-forge.r-project.org <noreply at r-forge.r-project.org> wrote:
> > Author: lckarssen
> > Date: 2011-01-07 14:01:11 +0100 (Fri, 07 Jan 2011)
> > New Revision: 630
> >
> > Modified:
> >    pkg/ProbABEL/src/probabel.pl
> > Log:
> > Updates to the probabel.pl script. Tested for some time on our own
> > servers.
> > Details:
> > - Added possibility to use the script for the X chromosome as well
> > - Clarified part of the help text and error messages
> > - slightly simpler configuration because now the base path to each of
> > the pa-utilities can be set in one variable.
> > - Removed some superfluous spaces and empty lines
> > - Fixed a few minor spelling errors in the comments and help text.
> >
> >
> > Modified: pkg/ProbABEL/src/probabel.pl
> > ===================================================================
> > --- pkg/ProbABEL/src/probabel.pl	2011-01-05 17:31:39 UTC (rev 629)
> > +++ pkg/ProbABEL/src/probabel.pl	2011-01-07 13:01:11 UTC (rev 630)
> > @@ -1,27 +1,33 @@
> > -#! /usr/bin/perl
> > +#! /usr/bin/perl
> >
> > -#=====================================================================================
> > +#============================================================================
> >  #
> >  #           Filename:  probabel.pl
> >  #
> > -#        Description: Handy perl wraper for ProbABEL functions
> > +#        Description: Handy perl wrapper for ProbABEL functions
> >  #
> > -#            Version:  1.1
> > +#            Version:  1.4
> >  #            Created:  28-Oct-2008
> >  #           Revision:  none
> > -#  last modification:  12-Jan-2009
> > +#  last modification:  07-Jan-2011
> >  #
> > -#             Author:  Maksim V. Struchalin, Yurii S. Aulchenko
> > -#            Company:  ErasmusMC, Epidemiology & Biostatistics Department,
> > The Netherlands.
> > -#              Email:  m.struchalin at erasmusmc.nl,
> > i.aoultchenko at erasmusmc.nl
> > +#             Author:  Lennart C. Karssen,
> > +#                      Maksim V. Struchalin,
> > +#                      Yurii S. Aulchenko
> > +#            Company:  Erasmus MC,
> > +#                      Epidemiology & Biostatistics Department,
> > +#                      The Netherlands.
> > +#              Email:  l.karssen at erasmusmc.nl,
> > +#                      m.struchalin at erasmusmc.nl,
> > +#                      i.aoultchenko at erasmusmc.nl
> >  #
> > -#=====================================================================================
> > +#============================================================================
> >
> >
> >
> >
> > -$version="1.1";
> > -$release_data="11-Jan-2009";
> > +$version="1.4";
> > +$release_data="07-Jan-2011";
> >
> >  $_2df_file_postfix = "_2df.out.txt";
> >  $_add_file_postfix = "_add.out.txt";
> > @@ -35,11 +41,11 @@
> >  $separator_cfg = ",";
> >  $separator_filename = "_._chr_._";
> >
> > +$base_path = "./";
> > +$config = $base_path . "probabel_config.cfg";
> >
> > -$config = "probabel_config.cfg";
> > -
> >  @method = ("linear","logistic","coxph");
> > - at anprog = ("./palinear","./palogist","./pacoxph");
> > + at anprog = ($base_path . "palinear", $base_path . "palogist", $base_path .
> > "pacoxph");
> >
> >  %cohorts;
> >  @mlinfo;
> > @@ -72,52 +78,50 @@
> >  close(CFG);
> >
> >
> > -
> > -
> > -if(@ARGV<6 || $ARGV[0] == "--help")
> > +if(@ARGV<6 || $ARGV[0] eq "--help")
> >  	{
> >  	print "\nUsage:
> >  	probabel.pl chrom-start chrom-end method cohort <--allmodels OR
> > --additive> trait <other available keys of ProbABEL functions>\n";
> >  	print "\n	* chrom-start - the first chromosome number, chrom-end - the
> > last one";
> >  	print "\n	* method can be ";
> >  	foreach $me(@method) {print "\"".$me."\", "};
> > -	print "\n	* use --allmodels if you need dominant, recessive and
> > heterozygous models
> > +	print "\n	* use --allmodels if you need dominant, recessive and
> > heterozygous models
> >  	  and --additive if additive only\n";
> >  	print "	* Available cohorts is ";
> > - 	foreach $coh(keys %cohorts) {print "\"".$coh."\", "};	
> > + 	foreach $coh(keys %cohorts) {print "\"".$coh."\", "};
> >  	print "\n	* example:
> > -	  probabel.pl 1 22 linear \"ERF\" --additive filename1 filename2
> > +	  probabel.pl 1 22 linear \"ERF\" --additive filename1 filename2
> >  	  (filename has to be saved as filename.PHE)\n\n";
> > -	
> > -	
> > +
> > +
> >  	print "\n Details:\n";
> > -	print "   Script probabel.pl is used for analysis of imputed data.
> > -   Firstly you have to create file with phenotypes which you are going to
> > use.
> > -   The first column is ids in special order, the second - trait which you
> > are going analyze, rest - covariates.
> > +	print "   The probabel.pl script is used for analysis of imputed data.
> > +   First you have to create file with the phenotypes that you are going to
> > use.
> > +   The first column contains ids in special order, the second: the trait
> > which you are going analyze, the others containd covariates.
> >     Like this =>
> > -
> > -   id         phen1 covariate1  covariate2
> > +
> > +   id         phen1 covariate1  covariate2
> >     1_2094  0     334         0
> >     1_5060  1     56          1
> >     1_4077  1     346         6
> >     .
> > -   .
> >     .
> > -
> > -   That means model:
> > +   .
> > +
> > +   This implies the model:
> >     phen1 ~ covariate1 + covariate2 + SNP
> > -
> > -
> > -   Then save it to folder where you are doing analysis. Name of file must
> > be name_of_file.PHE.
> > -   Where name_of_file is any name.
> > -
> > -   Then perform in bash (Linux) comand line
> > +
> > +
> > +   Then save it to folder where you are doing the analysis. The name of the
> > file must be name_of_file.PHE, where name_of_file is any name.
> > +
> > +   Then run the following on the Linux command line:
> >     probabel.pl 1 22 \"method\" \"cohort\" --model name_of_file
> > -   Change \"method\" \"cohort\" --model on appropriate values\n";
> > -	print "\n	Version: $version";	
> > -	print "\n	Release data: $release_data";	
> > -	print "\n\n	Autors:	Maksim Struchalin - m.struchalin\@erasmusmc.nl,
> > -		Yurii Aulchenko - i.aoultchenko\@erasmusmc.nl.\n\n";
> > +   Change \"method\" \"cohort\" --model to appropriate values\n";
> > +	print "\n	Version: $version";
> > +	print "\n	Release data: $release_data";
> > +	print "\n\n	Authors: Lennart Karssen   - l.karssen\@erasmusmc.nl,
> > + 		 Maksim Struchalin - m.struchalin\@erasmusmc.nl,
> > +		 Yurii Aulchenko   - i.aoultchenko\@erasmusmc.nl.\n\n";
> >  	exit;
> >  	}
> >
> > @@ -130,22 +134,18 @@
> >
> >
> >
> > -die "error: chrom-start is > 22" if($startchr > 22);
> > -die "error: chrom-end is > 22" if($endchr > 22);
> > +die "error: chrom-start is > 22" if($startchr > 22 && $startchr != "X") ;
> > +die "error: chrom-end is > 22" if($endchr > 22 && $endchr != "X");
> >  die "error: chrom-start > chrom-end" if($startchr > $endchr);
> >
> >
> > -
> > -
> > -
> > -
> >  $cohort_position = $cohorts{$chohort};
> >
> >
> >  if(!defined($cohort_position))
> >  {
> > -print "\nerror: Wrong cohort name
> > -Available cohorts is ";
> > +print "\nerror: Wrong cohort name, \"$chohort\" is not an available cohort.
> > +Available cohorts are ";
> >  foreach $coh(keys %cohorts) {print "\"".$coh."\", "};
> >  print "\n\n";
> >  exit;
> > @@ -176,7 +176,7 @@
> >  $keys="";
> >
> >
> > -for ($i=6;$i<@ARGV;$i++)
> > +for ($i=6;$i<@ARGV;$i++)
> >  	{
> >  	$keys = $keys.$ARGV[$i]." ";
> >  	}
> > @@ -207,12 +207,20 @@
> >
> >  print "Start...\n";
> >
> > -	$chr = $startchr;
> > -	print `$prog -p $phename.PHE --ngpreds $model_option_num -i
> > $mlinfo_split[0]${chr}$mlinfo_split[1] -d
> > $mldose_probe_split1${chr}$mldose_probe_split2 -m
> > $legend_split[0]${chr}$legend_split[1] --chrom $chr -o $phename $keys`;
> > +$chr = $startchr;
> > +
> > +# Separate command for the X chromosome.
> > +if ($chr eq "X") {
> > +    print `$prog -p $phename.PHE --ngpreds $model_option_num -i
> > $mlinfo_split[0]$mlinfo_split[1] -d $mldose_probe_split1$mldose_probe_split2
> > -m $legend_split[0]$legend_split[1] --chrom $chr -o $phename $keys`;
> > +    exit;
> > +}
> > +
> > +# Commands for the autosomes
> > +print `$prog -p $phename.PHE --ngpreds $model_option_num -i
> > $mlinfo_split[0]${chr}$mlinfo_split[1] -d
> > $mldose_probe_split1${chr}$mldose_probe_split2 -m
> > $legend_split[0]${chr}$legend_split[1] --chrom $chr -o $phename $keys`;
> >  	for($chr=($startchr+1);$chr<=$endchr;$chr++)
> >  		{
> >  		print `$prog -p $phename.PHE --ngpreds $model_option_num -i
> > $mlinfo_split[0]${chr}$mlinfo_split[1] -d
> > $mldose_probe_split1${chr}$mldose_probe_split2 -m
> > $legend_split[0]${chr}$legend_split[1] --chrom $chr -o $phename.$chr
> > --no-head $keys`;
> > -		
> > +
> >  		if($model_option_num==2)
> >  			{
> >  			`cat $phename.${chr}$_2df_file_postfix >>
> > ${phename}${_2df_file_postfix}`;
> > @@ -220,7 +228,7 @@
> >
> >  			`cat $phename.${chr}$_add_file_postfix >>
> > ${phename}${_add_file_postfix}`;
> >  			`rm $phename.${chr}$_add_file_postfix`;
> > -			
> > +
> >  			`cat $phename.${chr}$_domin_file_postfix >>
> > ${phename}${_domin_file_postfix}`;
> >  			`rm $phename.${chr}$_domin_file_postfix`;
> >
> >
> > _______________________________________________
> > Genabel-commits mailing list
> > Genabel-commits at lists.r-forge.r-project.org
> > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/genabel-commits
> >
> 

-- 
-----------------------------------------------
L.C. Karssen
Erasmus MC
Department of Epidemiology
Room Ee2224

Postbus 2040
3000 CA Rotterdam
The Netherlands

phone: +31-10-7044217
fax: +31-10-7044657
email: l.karssen at erasmusmc.nl
GPG key ID: 0E1D39E3
-----------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.r-forge.r-project.org/pipermail/genabel-devel/attachments/20110107/c25a1a82/attachment.pgp>


More information about the genabel-devel mailing list