Calculating Supports: Jackknife main content.

Calculating Supports: Jackknife

  1. The command  calculate_support (jackknife) performs n pseudoreplicates independently, in each once a percentage of characters in selected at random, without replacement. The frequency of occurrence of a clade is its jackknife support value.
  2. Open the program documentation (in the help menu of the Graphic User Interface Window). Go to the command reference chapter and find the  calculate_support command. Find the jackknife argument, and read its description and default values, and how to specify the number of pseudoreplicates inside calculate_support. Then write a command to do just 50 pseudorplicates, using the default values of jackknife.
  3. An important detail is that jackknife resamples the characters. What you define as a characters is a biological question that you must resolve before running your analyses. POY does not calculate jackknife supports in any special way, it is just the case that the characters that you are using are not necessarily just the bases of your sequences, but the sequences themselves!
  4. A common procedure used by many biologists is to fix an alignment and compute support values resampling the bases of that alignment. Let us use this strategy and compare the support values for a pair of different alignments on the same tree. To do this we will use a new report argument:

            read ("course.fasta")        
            transform (tcm:(1,1))        
            store ("initial")        
            search (max_time:0:0:1)        
            select ()
  5. We store the tree in a file so that then we can report support values for it:

            report ("tree_for_support_values.tre", trees)        
            transform (static_approx)        
            report ("", phastwinclad)        
            (* This commands output a NONA file that can be read in many programs, most notably POY *)
  6. Now we will produce a different alignment and store it
            use ("initial")        
            build (1)        
            transform (static_approx)        
            report ("", phastwinclad)
  7. We have just produced our two data sets that we will use to calculate supports. The second data set is currently held in memory.
           calculate_support (jackknife: (resample:1000))       
           read ("tree_for_support_values.tre")       
           calculate_support (jackknife: (resample:1000))       
           read ("tree_for_support_values.tre")       
           (*We just stored the tree in a file to compare the results later *)
  8. Now we will compute the support values using the first alignment

           wipe ()    
           read ("")    
           calculate_support (jackknife: (resample:1000)    
           read ("tree_for_support_values.tre")    
           report ("", graphsupports:jackknife)

    Compare the two trees (using an image edition program, nothing special is needed for Mac OS X, Linux, or Unix, but Windows computers may need Ghostview or Adobe Illustrator):


    What did you notice? Where do you get better supports? Which would be a reasonable alignment from which to compute your support values?

  9. To calculate bootstrap support values, find the  bootstrap argument in the  calculate_support command documentation, and repeat the previous (Calculating Supports: Jackknife) excercise using and files to generate bootstrap supports for the tree in tree_for_support_values.tre, in eactly the same way.