BCH394P BCH364C 2025: Difference between revisions

From Marcotte Lab
Jump to navigationJump to search
No edit summary
No edit summary
 
(19 intermediate revisions by the same user not shown)
Line 103: Line 103:
-->
-->


<!--
 
'''Mar 13, 2025 - Clustering II'''
'''Mar 13, 2025 - Omics & Data Mining - Clustering II'''
* We'll be continuing the slides from last time
* We'll be continuing the slides from last time
Reading:
Reading:
* [http://www.marcottelab.org/users/BCH394P_364C_2025/tSNE.pdf t-SNE] and [https://umap-learn.readthedocs.io/en/latest/how_umap_works.html UMAP], and [https://pair-code.github.io/understanding-umap/ an intuitive explanation of the methods].  BUT: [https://twitter.com/lpachter/status/1431325969411821572?lang=en here's an X thread you should read] with strong criticisms and very compelling reasons against relying exclusively on these methods for drawing conclusions about your data.
* [http://www.marcottelab.org/users/BCH394P_364C_2025/tSNE.pdf t-SNE] and [https://umap-learn.readthedocs.io/en/latest/how_umap_works.html UMAP], and [https://pair-code.github.io/understanding-umap/ an intuitive explanation of the methods].  BUT: [https://doi.org/10.1371/journal.pcbi.1011288 here's a strong criticism and very compelling reasons] against relying exclusively on these methods for drawing conclusions about your data.
** Links to various applications of t-SNE: [https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding 1], [http://lvdmaaten.github.io/tsne/ 2], [https://www.youtube.com/watch?v=RJVL80Gg3lA 3], [http://distill.pub/2016/misread-tsne/ 4]. You can run t-SNE and UMAP on the [http://projector.tensorflow.org/ following web site].  
** Links to various applications of t-SNE: [https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding 1], [http://lvdmaaten.github.io/tsne/ 2], [https://www.youtube.com/watch?v=RJVL80Gg3lA 3], [http://distill.pub/2016/misread-tsne/ 4]. You can run t-SNE and UMAP on the [http://projector.tensorflow.org/ following web site].  
** Links to various applications of SOMs: [http://en.wikipedia.org/wiki/Self-organizing_map 1], [http://vizier.u-strasbg.fr/kohonen.htx 2], [http://wn.com/Self_Organizing_Maps_Application 3]. You can run SOM clustering with the [http://bonsai.hgc.jp/~mdehoon/software/cluster Open Source Clustering package] with the '-s' option, or GUI option (here's the [http://bonsai.hgc.jp/~mdehoon/software/cluster/manual/SOM.html#SOM manual]). (FYI, it also supports PCA). If you are not happy with Cluster's SOM function, the statistical package R also provides a package for calculating SOMs (http://cran.r-project.org/web/packages/som/index.html).  
** Links to various applications of SOMs: [http://en.wikipedia.org/wiki/Self-organizing_map 1], [http://vizier.u-strasbg.fr/kohonen.htx 2], [http://wn.com/Self_Organizing_Maps_Application 3]. You can run SOM clustering with the [http://bonsai.hgc.jp/~mdehoon/software/cluster Open Source Clustering package] with the '-s' option, or GUI option (here's the [http://bonsai.hgc.jp/~mdehoon/software/cluster/manual/SOM.html#SOM manual]). (FYI, it also supports PCA). If you are not happy with Cluster's SOM function, the statistical package R also provides a package for calculating SOMs (http://cran.r-project.org/web/packages/som/index.html).  
* [http://www.marcottelab.org/users/BCH394P_364C_2025/nature_review_2000.pdf Review of phylogenetic profiles]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/nature_review_2000.pdf Review of phylogenetic profiles]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/FuzzyK-Means.pdf Fuzzy k-means]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/FuzzyK-Means.pdf Fuzzy k-means]
-->


<!--
 
'''Mar 11, 2025 - Functional Genomics & Data Mining - Clustering I'''
 
'''Mar 11, 2025 - Omics & Data Mining - Clustering I'''
* Don't forget to turn in the proposal for your course project by '''March 12'''.
* Don't forget to turn in the proposal for your course project by '''March 12'''.
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P_364C_LargeScaleExperiments_Spring2025.pdf Today's slides]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P_364C_LargeScaleExperiments_Spring2025.pdf Today's slides]
Line 127: Line 127:
* [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-MicroarrayClustering.pdf Primer on clustering]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-MicroarrayClustering.pdf Primer on clustering]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/K-means-Example.ppt K-means example (.ppt)]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/K-means-Example.ppt K-means example (.ppt)]
* Here's [https://towardsdatascience.com/9-distance-measures-in-data-science-918109d069fa a nice explanation] of some of the various distance measures used for clustering
* [http://www.marcottelab.org/users/BCH394P_364C_2025/Bcelllymphoma.pdf B cell lymphomas]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/Bcelllymphoma.pdf B cell lymphomas]
* [http://en.wikipedia.org/wiki/RNA-Seq RNA-Seq]
* [http://en.wikipedia.org/wiki/RNA-Seq RNA-Seq]
-->
<!--
'''Mar 6, 2025 - Intro to Proteomics'''
* Guest speaker: Vy Dang, who earned her B.S. and subsequently worked in genomics at the University of Washington, Seattle, where she was a major contributor to [https://www.science.org/doi/full/10.1126/science.aax2083 the sequencing of the Melanesian genome] before joining us at UT. Here, she has performed >2,000 mass spectrometry proteomics experiments to map brain protein-protein interactions conserved across vertebrates.
-->
<!--
* [http://www.marcottelab.org/users/BCH394P_364C_2025/IntroToProteomics2-03-24-2025.pdf Today's slides]
-->


<!--
'''Mar 4, 2025 - NGS analysis best practices'''
* Guest speaker: [https://www.linkedin.com/in/anna-battenhouse-abba1/ Anna Battenhouse] from the [https://research.utexas.edu/cbrs/ Center for Biomedical Research Support], where she maintains the [https://wikis.utexas.edu/display/RCTFusers Biomedical Research Computing Facility].
-->
<!--
* [http://www.marcottelab.org/users/BCH394P_364C_2025/2024-02-NGS_IntroForEdM.pdf Today's slides]
-->


<!--
 
'''Feb 27, 2025 - Genome Assembly/Mapping II'''<br>
'''Mar 6, 2025 - Genome Assembly/Mapping II'''<br>
* We're finishing up the slides from last time. Note that we give short shrift to read mapping/alignment algorithms, of which there are now [https://en.wikipedia.org/wiki/List_of_sequence_alignment_software#Short-Read_Sequence_Alignment a very long list]. Here's an interesting discussion by Lior Pachter of the [https://liorpachter.wordpress.com/2015/11/01/what-is-a-read-mapping/ major developments in that field.]
* We're finishing up the slides from last time. Note that we give short shrift to read mapping/alignment algorithms, of which there are now [https://en.wikipedia.org/wiki/List_of_sequence_alignment_software#Short-Read_Sequence_Alignment a very long list]. Here's an interesting discussion by Lior Pachter of the [https://liorpachter.wordpress.com/2015/11/01/what-is-a-read-mapping/ major developments in that field.]
* Here is [https://web.archive.org/web/20221208084304/http://blog.thegrandlocus.com/2016/07/a-tutorial-on-burrows-wheeler-indexing-methods an excellent explanation (now archived) of how the BWT relates to a suffix tree and enables fast read mapping to a genome]
* Here is [https://web.archive.org/web/20221208084304/http://blog.thegrandlocus.com/2016/07/a-tutorial-on-burrows-wheeler-indexing-methods an excellent explanation (now archived) of how the BWT relates to a suffix tree and enables fast read mapping to a genome]
Line 156: Line 140:
* Two notable advances in genome assembly: [http://www.marcottelab.org/users/BCH394P_364C_2025/StringGraphAssembly.pdf String Graphs] and more recently, [http://www.marcottelab.org/users/BCH394P_364C_2025/MultiplexDeBruijnGraphs.pdf multiplexed De Bruijn graphs].  Both have been used to assemble a [http://www.marcottelab.org/users/BCH394P_364C_2025/CompleteHumanGenomeSequence.pdf fully complete human genome sequence] (check out the [https://www.biorxiv.org/content/biorxiv/early/2021/05/27/2021.05.26.445798/F2.large.jpg?width=800&height=600&carousel=1 beautiful string graph visualizations] of the final assemblies, which capture gapless telomere-to-telomere assemblies for all 22 human autosomes and Chromosome X)
* Two notable advances in genome assembly: [http://www.marcottelab.org/users/BCH394P_364C_2025/StringGraphAssembly.pdf String Graphs] and more recently, [http://www.marcottelab.org/users/BCH394P_364C_2025/MultiplexDeBruijnGraphs.pdf multiplexed De Bruijn graphs].  Both have been used to assemble a [http://www.marcottelab.org/users/BCH394P_364C_2025/CompleteHumanGenomeSequence.pdf fully complete human genome sequence] (check out the [https://www.biorxiv.org/content/biorxiv/early/2021/05/27/2021.05.26.445798/F2.large.jpg?width=800&height=600&carousel=1 beautiful string graph visualizations] of the final assemblies, which capture gapless telomere-to-telomere assemblies for all 22 human autosomes and Chromosome X)
* k-mer-based RNA quantification offers [https://www.nature.com/articles/nbt.3519 near-optimal probabilistic RNA-seq quantification]. Here's [https://bioinfo.iric.ca/understanding-how-kallisto-works/ how the program kallisto works]
* k-mer-based RNA quantification offers [https://www.nature.com/articles/nbt.3519 near-optimal probabilistic RNA-seq quantification]. Here's [https://bioinfo.iric.ca/understanding-how-kallisto-works/ how the program kallisto works]
-->
* The key idea of fast binary searches of a giant dataset by building a suffix index is used in many other contexts, including autocomplete and spellchecking. It's hard to track down exactly which algorithms are used by commercial software packages such as MS Word and gmail, but here's [https://dev.to/khald/autocomplete-algorithms-1pb2 a detailed description of how this approach might work in general].
 
 


<!--
'''Mar 4, 2025 - Genome Assembly - I'''
'''Feb 25, 2025 - Genome Assembly - I'''
* REMINDER: '''Due March 12 by email to the TA+Instructor''' - One to two (full) paragraphs describing your plans for a final project, along with the names of your collaborators.  
* Homework #3 (worth 10% of your final course grade) has been assigned on Rosalind and is '''due by 10:00PM March 5'''. In past years, we've run into problems with Rosalind timing out before Meme completes although it usually runs eventually, so be warned you may have to try it a couple of times. Meme also runs faster using the "zero to one" or "one" occurrence per sequence option, rather than the "any number of repeats" option. Ultimately, if you can't get it to work, you can paste the input sequences + Meme output into a single file and submit that through Canvas, and we'll give you credit for it.
* '''Due March 12 by email to the TA+Instructor''' - One to two (full) paragraphs describing your plans for a final project, along with the names of your collaborators. Please limit to no more than 3 per group, please.  It's also fine to do this independently, if you prefer. (Do you have a particular skill/interest/exciting dataset you need help analyzing? We'll spend a few minutes at the start of class asking around for partners.) This assignment (planning out your project) will account for 5 points out of your 25 total points for your course project. Here are a few examples of final projects from previous years: [https://sites.google.com/view/bioinformaticsproject/introduction-and-goals?authuser=0 1] [https://sites.google.com/view/bch394ssy/home 2] [https://sites.google.com/view/bch394p-project/home 3]  [https://sites.google.com/view/subcellularloc/projects 4] [https://sites.google.com/utexas.edu/voigt-final-project/home?authuser=0 5] [https://sites.google.com/utexas.edu/oishika-das-bioinformatics-pro/home 6] [https://sites.google.com/view/ama1-polymorphism/home?authuser=0 7] [https://sites.google.com/view/bch-364c-final-project/home?authuser=0 8] [https://metabolicnetworkpathways.wordpress.com/ 9].  Remember that the project itself will ultimately be due one month later on April 17 (& late days can't be used for the final project.)<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-GenomeAssembly_Spring2025.pdf Today's slides]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-GenomeAssembly_Spring2025.pdf Today's slides]
* Regarding the difficulties finding short genes: [https://www.cell.com/molecular-cell/fulltext/S1097-2765(23)00075-8 New evidence for very short human ORFs coding for real microproteins & peptides]
* If you're curious, the human genome project, which launched thousands of drug and disease discoveries, was primarily funded in the US by the NIH and DOEThe DOE has some information about it [https://doe-humangenomeproject.ornl.gov/human-genome-project-budget/ here]
* Science news of the day: [https://twitter.com/simocristea/status/1626304239931912192?t=mH-gk3V7PLd7mvyZAgKzRw&s=03 A compilation of advances in the last 2 years on deep learning protein structure prediction].  [https://www.nature.com/nbt/volumes/42/issues/2 The latest issue of Nature Biotechnology] focuses extensively on new AI-guided protein engineering methods.  We'll go into these methods extensively in the last portion of the course.
* Relevant to the last lecture, some definitions of [https://en.wikipedia.org/wiki/Sensitivity_and_specificity sensitivity/specificity] & [https://en.wikipedia.org/wiki/Precision_and_recall precision/recall]. Note that the gene finding community settled early on to a different definition of specificity that corresponds to the precision or PPV in other fields. Other fields define specificity as the true negative rate.
* Relevant to the last lecture, some definitions of [https://en.wikipedia.org/wiki/Sensitivity_and_specificity sensitivity/specificity] & [https://en.wikipedia.org/wiki/Precision_and_recall precision/recall]. Note that the gene finding community settled early on to a different definition of specificity that corresponds to the precision or PPV in other fields. Other fields define specificity as the true negative rate.
* [http://www.marcottelab.org/users/BCH394P_364C_2025/DeBruijnPrimer.pdf DeBruijn Primer] and [http://www.marcottelab.org/users/BCH394P_364C_2025/DeBruijnSupplement.pdf Supplement]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/DeBruijnPrimer.pdf DeBruijn Primer] and [http://www.marcottelab.org/users/BCH394P_364C_2025/DeBruijnSupplement.pdf Supplement]


-->
 
<!--
 
'''Feb 20, 2025 - Motifs'''
'''Feb 27, 2025 - NGS analysis best practices'''
* We'll talk about motif finding today.  
* Guest speaker: [https://www.researchgate.net/profile/Anna-Battenhouse Anna Battenhouse] from the [https://research.utexas.edu/cbrs/ Center for Biomedical Research Support], where she maintains the [https://wikis.utexas.edu/display/RCTFusers Biomedical Research Computing Facility].
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C_Motifs_Spring2025.pdf Today's slides]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/2025-02-NGS_IntroForEdM.pdf Today's slides]
* We're introducing methods focused on discovering position weight matrices using Gibbs Sampling, but there are interesting developments using deep neural networks too.  Here's a [http://www.marcottelab.org/users/BCH394P_364C_2025/DeepNN-MotifFinders-2020Review.pdf recent review]
 
 
 
'''Feb 25, 2025 - Motifs'''
* Homework #3 (worth 10% of your final course grade) has been assigned on Rosalind and is '''due by 10:00PM March 5'''. In past years, we've run into problems with Rosalind timing out before Meme completes although it usually runs eventually, so be warned you may have to try it a couple of times. Meme runs faster using the "zero to one" or "one" occurrence per sequence option, rather than the "any number of repeats" option. Ultimately, if you can't get it to work, just paste the input sequences + Meme output into a single file and submit that through Canvas, and we'll give you credit for it.
* '''Due March 12 by email to the TA+Instructor''' - One to two (full) paragraphs describing your plans for a final project, along with the names of your collaborators. Please limit to no more than 3 per group, please.  It's also fine to do this independently, if you prefer. (Do you have a particular skill/interest/exciting dataset you need help analyzing? We'll spend a few minutes at the start of class asking around for partners.) This assignment (planning out your project) will account for 5 points out of your 25 total points for your course project. Here are a few examples of final projects from previous years: [https://sites.google.com/view/bioinformaticsproject/introduction-and-goals?authuser=0 1] [https://sites.google.com/view/bch394ssy/home 2] [https://sites.google.com/view/bch394p-project/home 3]  [https://sites.google.com/view/subcellularloc/projects 4] [https://sites.google.com/utexas.edu/voigt-final-project/home?authuser=0 5] [https://sites.google.com/utexas.edu/oishika-das-bioinformatics-pro/home 6] [https://sites.google.com/view/ama1-polymorphism/home?authuser=0 7] [https://sites.google.com/view/bch-364c-final-project/home?authuser=0 8] [https://metabolicnetworkpathways.wordpress.com/ 9].  Remember that the project itself will ultimately be due one month later on April 16 (& '''late days can't be used for the final project'''.)<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C_Motifs_Spring2025.pdf Today's slides.] We'll talk about motif finding today.
* We're introducing methods focused on discovering position weight matrices using Gibbs Sampling, but there are [http://www.marcottelab.org/users/BCH394P_364C_2025/DeepNN-MotifFinders-2020Review.pdf interesting developments using deep neural networks too]
* Here's a [https://www.biorxiv.org/content/10.1101/2024.01.12.574168v2.full recent bioRxiv preprint] bench-marking the major motif-finding algorithms. They particularly recommended DEME, Opal, and SLiMFinder. DEME and Opal seem a bit harder to access, but SLiMFinder can be run through a [http://www.slimsuite.unsw.edu.au/servers/slimfinder.php web server] (also accessible [http://slim.icr.ac.uk/tools/peptools/input here]).  
* Here's a [https://www.biorxiv.org/content/10.1101/2024.01.12.574168v2.full recent bioRxiv preprint] bench-marking the major motif-finding algorithms. They particularly recommended DEME, Opal, and SLiMFinder. DEME and Opal seem a bit harder to access, but SLiMFinder can be run through a [http://www.slimsuite.unsw.edu.au/servers/slimfinder.php web server] (also accessible [http://slim.icr.ac.uk/tools/peptools/input here]).  
* Wordle as an excuse to learn about [https://www.youtube.com/watch?v=v68zYyaEmEA information theory & entropy] and [https://www.youtube.com/watch?v=OvTriQWQvUg sequence logos and motifs]!
* Wordle as an excuse to learn about [https://www.youtube.com/watch?v=v68zYyaEmEA information theory & entropy] and [https://www.youtube.com/watch?v=OvTriQWQvUg sequence logos and motifs]!
Line 180: Line 170:
* [http://www.rcsb.org/pdb/explore/explore.do?structureId=1L1M The biochemical basis of a particular motif]
* [http://www.rcsb.org/pdb/explore/explore.do?structureId=1L1M The biochemical basis of a particular motif]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/GibbsSampling.pdf Gibbs Sampling]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/GibbsSampling.pdf Gibbs Sampling]
-->
 
<!--
 
'''Feb 18, 2025 - Gene finding II'''
 
* [https://research.utexas.edu/cbrs/classes/short-courses/spring-2025-semester/ Short classes at UT] will be offered starting in March in programming, bioinformatics, genome sequencing, and cryoEM
'''Feb 20, 2025 - Gene finding II'''
* We're finishing up the slides from last time.
* We're finishing up the slides from last time.
* If you would like a few examples of proteins with their transmembrane and soluble regions annotated (according to UniProt) to help troubleshoot your homework, here are some [http://www.marcottelab.org/images/5/5a/Annotated_peptides.txt example yeast protein sequences].
* Science news of the day: [https://arcinstitute.org/manuscripts/Evo2 New neural network models (Evo2)] trained to model genome architecture can capture (to varying extents) a number of the functional elements of chromosomes. Relevant to gene-finding, it appears to recognize human exons with an accuracy corresponding to ~0.82 area under a ROC curve (AUROC), so considerably better than random (AUROC=0.5) but definitely not perfectly (AUROC=1.0).
Reading:<br>
* Regarding the difficulties finding short genes: [https://www.cell.com/molecular-cell/fulltext/S1097-2765(23)00075-8 New evidence for very short human ORFs coding for real microproteins & peptides]
* Re-posting this so it doesn't fall through the cracks: [http://www.marcottelab.org/users/BCH394P_364C_2025/2019StateOfGeneAnnotation.pdf The current state of gene annotation]
 
-->
 
<!--
'''Feb 18, 2025 - Gene finding'''
'''Feb 13, 2025 - Gene finding'''
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-GeneFinding-Spring2025.pdf Today's slides on gene finding]  
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-GeneFinding-Spring2025.pdf Today's slides on gene finding]  
'''Problem Set 2, due before 10 PM, Feb. 24, 2025''':<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C_ProblemSet2_Spring2025.pdf '''Problem Set 2''']. 
* You'll need these 3 files: [http://www.marcottelab.org/users/BCH394P_364C_2025/state_sequences State sequences], [http://www.marcottelab.org/users/BCH394P_364C_2025/soluble_sequences Soluble sequences], [http://www.marcottelab.org/users/BCH394P_364C_2025/transmembrane_sequences Transmembrane sequences]
* A nice commentary on gene finding: [http://www.marcottelab.org/users/BCH394P_364C_2025/2019StateOfGeneAnnotation.pdf Next-generation genome annotation: we still struggle to get it right]
* A nice commentary on gene finding: [http://www.marcottelab.org/users/BCH394P_364C_2025/2019StateOfGeneAnnotation.pdf Next-generation genome annotation: we still struggle to get it right]
* For a few more examples of HMMs in action, here's a [http://www.marcottelab.org/users/BCH394P_364C_2025/MinionHumanGenome.pdf paper on sequencing the human genome by nanopore], which used HMMs in 3-4 different ways for polishing, contig inspection, repeat analysis and 5-methylcytosine detection.  Note the use of AUGUSTUS to annotate genes, relevant to the Feb 20 lecture.
* For a few more examples of HMMs in action, here's a [http://www.marcottelab.org/users/BCH394P_364C_2025/MinionHumanGenome.pdf paper on sequencing the human genome by nanopore], which used HMMs in 3-4 different ways for polishing, contig inspection, repeat analysis and 5-methylcytosine detection.  Note the use of AUGUSTUS to annotate genes, relevant to today's lecture.
* [http://genome.ucsc.edu/cgi-bin/hgTracks?db=hg38&lastVirtModeType=default&lastVirtModeExtraState=&virtModeType=default&virtMode=0&nonVirtPosition=&position=chr11%3A61755389-61788517&hgsid=477602291_ccTRfcOcZIQHnMkBKGzbQLBRc6HL The UCSC genome browser]
* [https://genome.ucsc.edu/cgi-bin/hgGateway The UCSC genome browser]
* A few useful links about programming: [http://www.marcottelab.org/users/BCH394P_364C_2025/GoodEnoughPracticesInScientificComputing.pdf Recommendations for "good enough" programming habits] and a great [https://www.youtube.com/playlist?list=PL-osiE80TeTskrapNbzXhwoFUiLCjGgY7 Python beginners Youtube tutorial]
* A few useful links about programming: [http://www.marcottelab.org/users/BCH394P_364C_2025/GoodEnoughPracticesInScientificComputing.pdf Recommendations for "good enough" programming habits] and a great [https://www.youtube.com/playlist?list=PL-osiE80TeTskrapNbzXhwoFUiLCjGgY7 Python beginners Youtube tutorial]
* Some recommendations for gene finding in euks ([https://genome.cshlp.org/content/34/5/769 Braker3]) and proks ([https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-11-119 Prodigal])
Reading (a couple of old classics + a review + better splice site detection):<br>
Reading (a couple of old classics + a review + better splice site detection):<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/EukGeneAnnotation.pdf Eukaryotic gene finding], [http://www.marcottelab.org/users/BCH394P_364C_2025/GeneMark.hmm.pdf GeneMark.hmm], and [http://www.marcottelab.org/users/BCH394P_364C_2025/BurgeKarlin-main.pdf GENSCAN]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/EukGeneAnnotation.pdf Eukaryotic gene finding], [http://www.marcottelab.org/users/BCH394P_364C_2025/GeneMark.hmm.pdf GeneMark.hmm], and [http://www.marcottelab.org/users/BCH394P_364C_2025/BurgeKarlin-main.pdf GENSCAN]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/SplicingAI-jaganathan2019.pdf Deep learning for splice set identification]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/SplicingAI-jaganathan2019.pdf Deep learning for splice set identification]
-->
 
 
'''Feb 13, 2025 - HMMs II'''
* We'll be finishing up slides from last time.
* There were some issues with Rosalind stopping early last night, so I've reopened it and extended the deadline for the homework until 10PM tonight.
'''Problem Set 2, due before 10 PM, Feb. 24, 2025''':<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C_ProblemSet2_Spring2025.pdf '''Problem Set 2''']. 
* You'll need these 3 files: [http://www.marcottelab.org/users/BCH394P_364C_2025/state_sequences State sequences], [http://www.marcottelab.org/users/BCH394P_364C_2025/soluble_sequences Soluble sequences], [http://www.marcottelab.org/users/BCH394P_364C_2025/transmembrane_sequences Transmembrane sequences]
* If you would like a few examples of proteins with their transmembrane and soluble regions annotated (according to UniProt) to help troubleshoot your homework, here are some [http://www.marcottelab.org/images/5/5a/Annotated_peptides.txt example yeast protein sequences].
<!--
<!--
'''Feb 11, 2025 - HMMs II'''
* We'll be finishing up slides from last time.
* ''Science news of the day:''  2000 years after they were buried in lava by Mt. Vesuvius, and 275 years after they were unearthed by archeologists, the first significant portion of the Herculaneum Papyri (from a neighboring town to Pompeii) [https://scrollprize.org/grandprize '''have finally been read''']. There are about a thousand of these scrolls, possibly thousands more still to be unearthed, in the only known intact library from the ancient world. They've been unreadable until now because they're all in the form of charred, cemented remains. The breakthrough comes from X-ray imaging the scrolls with a particle accelerator, then computationally unwrapping the layers (somewhat analogous to segmenting images in cryotomography) and sophisticated image analysis + machine learning to read the characters from the subtle differences in X-ray densities due to the ink.
* ''Science news of the day:''  2000 years after they were buried in lava by Mt. Vesuvius, and 275 years after they were unearthed by archeologists, the first significant portion of the Herculaneum Papyri (from a neighboring town to Pompeii) [https://scrollprize.org/grandprize '''have finally been read''']. There are about a thousand of these scrolls, possibly thousands more still to be unearthed, in the only known intact library from the ancient world. They've been unreadable until now because they're all in the form of charred, cemented remains. The breakthrough comes from X-ray imaging the scrolls with a particle accelerator, then computationally unwrapping the layers (somewhat analogous to segmenting images in cryotomography) and sophisticated image analysis + machine learning to read the characters from the subtle differences in X-ray densities due to the ink.
-->
* Link to [http://setosa.io/blog/2014/07/26/markov-chains/ a great interactive visualization of Markov chains], by Victor Powell & Lewis Lehe. It's worth checking out to build some intuition. They correctly point out that [https://en.wikipedia.org/wiki/PageRank Google's PageRank algorithm] is based on Markov chains. There, the ranking of pages in a web search relates to how random walks across linked web pages spend more time on some pages than on others.
* Link to [http://setosa.io/blog/2014/07/26/markov-chains/ a great interactive visualization of Markov chains], by Victor Powell & Lewis Lehe. It's worth checking out to build some intuition. They correctly point out that [https://en.wikipedia.org/wiki/PageRank Google's PageRank algorithm] is based on Markov chains. There, the ranking of pages in a web search relates to how random walks across linked web pages spend more time on some pages than on others.
* A non-biological example of using log odds ratios & Bayesian stats [https://priceonomics.com/how-statistics-solved-a-175-year-old-mystery-about/ to learn the authors of the Federalist Papers]. In a related example, [https://arstechnica.com/science/2024/02/lost-and-found-code-breakers-decipher-50-letters-of-mary-queen-of-scots/ researchers just decoded >50 coded letters from a French archive] and discovered they were lost correspondence from Mary, Queen of Scots, before she was executed in 1587 for treason against Elizabeth I.  The researchers used an approach closely related to computing log odds ratios of 5-mer frequencies between putative decoded texts and known free text to figure out the correct ciphers. If you're curious, you can read about it in [https://www.tandfonline.com/doi/full/10.1080/01611194.2022.2160677 Appendix A of their paper]
* A non-biological example of using log odds ratios & Bayesian stats [https://priceonomics.com/how-statistics-solved-a-175-year-old-mystery-about/ to learn the authors] of the [https://en.wikipedia.org/wiki/The_Federalist_Papers Federalist Papers]. In a related example, researchers decoded >50 coded letters from a French archive and discovered they were lost correspondence from Mary, Queen of Scots, before she was executed in 1587 for treason against Elizabeth I.  The researchers used an approach closely related to computing log odds ratios of 5-mer frequencies between putative decoded texts and known free text to figure out the correct ciphers. If you're curious, you can read about it in [https://www.tandfonline.com/doi/full/10.1080/01611194.2022.2160677 Appendix A of their paper]
-->
 
<!--
 
'''Feb 6, 2025 - Hidden Markov Models'''
'''Feb 11, 2025 - Hidden Markov Models'''
* Don't forget: Rosalind Homework #2 (worth 10% of your final course grade) is '''due by 10 PM February 12'''.
* Don't forget: Rosalind Homework #2 (worth 10% of your final course grade) is '''due by 10 PM February 12'''.
* More stats for comp biologists worth checking out:  [https://www.huber.embl.de/msmb/ Modern Statistic for Modern Biology], by Susan Holmes and Wolfgang Huber. It's currently available online and [https://www.amazon.com/Modern-Statistics-Biology-Susan-Holmes/dp/1108705294/ available on dead tree]. (FYI, all code is in R.)
* More stats for comp biologists worth checking out:  [https://www.huber.embl.de/msmb/ Modern Statistic for Modern Biology], by Susan Holmes and Wolfgang Huber. It's currently available online and [https://www.amazon.com/Modern-Statistics-Biology-Susan-Holmes/dp/1108705294/ available on dead tree]. (FYI, all code is in R.)
Line 218: Line 212:
* [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-HMMs.pdf HMM primer] and [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-Bayes.pdf Bayesian statistics primer #1], [http://www.marcottelab.org/users/BCH394P_364C_2025/BayesPrimer-NatMethods.pdf Bayesian statistics primer #2], [http://en.wikipedia.org/wiki/Bayes'_theorem Wiki Bayes]
* [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-HMMs.pdf HMM primer] and [http://www.marcottelab.org/users/BCH394P_364C_2025/NBTPrimer-Bayes.pdf Bayesian statistics primer #1], [http://www.marcottelab.org/users/BCH394P_364C_2025/BayesPrimer-NatMethods.pdf Bayesian statistics primer #2], [http://en.wikipedia.org/wiki/Bayes'_theorem Wiki Bayes]
* Care to practice your [http://en.wikipedia.org/wiki/Regular_expression regular expressions]? (In [https://www.tutorialspoint.com/python3/python_reg_expressions.htm python?] & a [https://www.pcwdld.com/python-regex-cheat-sheet Python regexp cheat sheet])
* Care to practice your [http://en.wikipedia.org/wiki/Regular_expression regular expressions]? (In [https://www.tutorialspoint.com/python3/python_reg_expressions.htm python?] & a [https://www.pcwdld.com/python-regex-cheat-sheet Python regexp cheat sheet])
-->
 
<!--
<!--
'''Another reminder:'''  ''Lectures will generally be about algorithms and concepts; the coding help hours (or my office hours) are for you to get individual coding help and feedback. Please plan to go regularly to coding help hours if you need that support!''
'''Another reminder:'''  ''Lectures will generally be about algorithms and concepts; the coding help hours (or my office hours) are for you to get individual coding help and feedback. Please plan to go regularly to coding help hours if you need that support!''
-->
-->
<!--
 
'''Feb 6, 2025 - Biological databases'''
'''Feb 6, 2025 - Biological databases'''
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-BiologicalDatabases-Spring2025.pdf Today's slides]<br>
* [http://www.marcottelab.org/users/BCH394P_364C_2025/BCH394P-364C-BiologicalDatabases-Spring2025.pdf Today's slides]<br>
Line 233: Line 227:
* Just a note that we'll be seeing ever more statistics as go on. Here's a [http://www.marcottelab.org/users/BCH394P_364C_2025/StatisticsPrimer.pdf good primer] from [https://integrativebio.utexas.edu/component/cobalt/item/7-integrative-biology/226-meyers-lauren-a?Itemid=1224 Prof. Lauren Ancel Myers] (who leads the [https://covid-19.tacc.utexas.edu/ UT Austin COVID-19 Modeling Consortium]) to refresh/explain basic concepts.
* Just a note that we'll be seeing ever more statistics as go on. Here's a [http://www.marcottelab.org/users/BCH394P_364C_2025/StatisticsPrimer.pdf good primer] from [https://integrativebio.utexas.edu/component/cobalt/item/7-integrative-biology/226-meyers-lauren-a?Itemid=1224 Prof. Lauren Ancel Myers] (who leads the [https://covid-19.tacc.utexas.edu/ UT Austin COVID-19 Modeling Consortium]) to refresh/explain basic concepts.
* Finally, here's great opportunity to hone your Python skills a bit more: The UT CBRS cores will offer [https://research.utexas.edu/cbrs/classes/short-courses/ short courses] in Python, Unix, and Python for Data Sciences starting in March.
* Finally, here's great opportunity to hone your Python skills a bit more: The UT CBRS cores will offer [https://research.utexas.edu/cbrs/classes/short-courses/ short courses] in Python, Unix, and Python for Data Sciences starting in March.
-->
* [https://xkcd.com/882/ Why we compute multiple hypothesis corrections when searching sequence (and other) databases]
 


'''Feb 4, 2025 - Speeding up your searches: BLAST, MMSeqs2, and Foldseek'''
'''Feb 4, 2025 - Speeding up your searches: BLAST, MMSeqs2, and Foldseek'''

Latest revision as of 19:19, 11 March 2025

BCH394P/BCH364C Systems Biology & Bioinformatics

Course unique #: 54960/54860
Lectures: Tues/Thurs 9:30 – 11:00 AM WEL 2.246
Instructor: Edward Marcotte, marcotte @ utexas.edu

  • Office hours: Mon 4 – 5 PM on the class Zoom channel (available on Canvas)

TA: Zoya Ansari, zansari @ utexas.edu

  • TA Office hours: Tues 1 - 2 PM / Fri 1 - 2 PM in MBB 3.304 or by appointment on Zoom

Class Canvas site: https://utexas.instructure.com/courses/1407802

Lectures & Handouts

Mar 13, 2025 - Omics & Data Mining - Clustering II

  • We'll be continuing the slides from last time

Reading:


Mar 11, 2025 - Omics & Data Mining - Clustering I

Reading:


Mar 6, 2025 - Genome Assembly/Mapping II

Supporting reading:


Mar 4, 2025 - Genome Assembly - I

  • REMINDER: Due March 12 by email to the TA+Instructor - One to two (full) paragraphs describing your plans for a final project, along with the names of your collaborators.
  • Today's slides
  • If you're curious, the human genome project, which launched thousands of drug and disease discoveries, was primarily funded in the US by the NIH and DOE. The DOE has some information about it here
  • Relevant to the last lecture, some definitions of sensitivity/specificity & precision/recall. Note that the gene finding community settled early on to a different definition of specificity that corresponds to the precision or PPV in other fields. Other fields define specificity as the true negative rate.
  • DeBruijn Primer and Supplement


Feb 27, 2025 - NGS analysis best practices


Feb 25, 2025 - Motifs

  • Homework #3 (worth 10% of your final course grade) has been assigned on Rosalind and is due by 10:00PM March 5. In past years, we've run into problems with Rosalind timing out before Meme completes although it usually runs eventually, so be warned you may have to try it a couple of times. Meme runs faster using the "zero to one" or "one" occurrence per sequence option, rather than the "any number of repeats" option. Ultimately, if you can't get it to work, just paste the input sequences + Meme output into a single file and submit that through Canvas, and we'll give you credit for it.
  • Due March 12 by email to the TA+Instructor - One to two (full) paragraphs describing your plans for a final project, along with the names of your collaborators. Please limit to no more than 3 per group, please. It's also fine to do this independently, if you prefer. (Do you have a particular skill/interest/exciting dataset you need help analyzing? We'll spend a few minutes at the start of class asking around for partners.) This assignment (planning out your project) will account for 5 points out of your 25 total points for your course project. Here are a few examples of final projects from previous years: 1 2 3 4 5 6 7 8 9. Remember that the project itself will ultimately be due one month later on April 16 (& late days can't be used for the final project.)
  • Today's slides. We'll talk about motif finding today.
  • We're introducing methods focused on discovering position weight matrices using Gibbs Sampling, but there are interesting developments using deep neural networks too
  • Here's a recent bioRxiv preprint bench-marking the major motif-finding algorithms. They particularly recommended DEME, Opal, and SLiMFinder. DEME and Opal seem a bit harder to access, but SLiMFinder can be run through a web server (also accessible here).
  • Wordle as an excuse to learn about information theory & entropy and sequence logos and motifs!
  • NBT Primer - What are motifs?
  • NBT Primer - How does motif discovery work?
  • The biochemical basis of a particular motif
  • Gibbs Sampling


Feb 20, 2025 - Gene finding II

  • We're finishing up the slides from last time.
  • Science news of the day: New neural network models (Evo2) trained to model genome architecture can capture (to varying extents) a number of the functional elements of chromosomes. Relevant to gene-finding, it appears to recognize human exons with an accuracy corresponding to ~0.82 area under a ROC curve (AUROC), so considerably better than random (AUROC=0.5) but definitely not perfectly (AUROC=1.0).
  • Regarding the difficulties finding short genes: New evidence for very short human ORFs coding for real microproteins & peptides


Feb 18, 2025 - Gene finding

Reading (a couple of old classics + a review + better splice site detection):


Feb 13, 2025 - HMMs II

  • We'll be finishing up slides from last time.
  • There were some issues with Rosalind stopping early last night, so I've reopened it and extended the deadline for the homework until 10PM tonight.

Problem Set 2, due before 10 PM, Feb. 24, 2025:

  • Problem Set 2.
  • You'll need these 3 files: State sequences, Soluble sequences, Transmembrane sequences
  • If you would like a few examples of proteins with their transmembrane and soluble regions annotated (according to UniProt) to help troubleshoot your homework, here are some example yeast protein sequences.
  • Link to a great interactive visualization of Markov chains, by Victor Powell & Lewis Lehe. It's worth checking out to build some intuition. They correctly point out that Google's PageRank algorithm is based on Markov chains. There, the ranking of pages in a web search relates to how random walks across linked web pages spend more time on some pages than on others.
  • A non-biological example of using log odds ratios & Bayesian stats to learn the authors of the Federalist Papers. In a related example, researchers decoded >50 coded letters from a French archive and discovered they were lost correspondence from Mary, Queen of Scots, before she was executed in 1587 for treason against Elizabeth I. The researchers used an approach closely related to computing log odds ratios of 5-mer frequencies between putative decoded texts and known free text to figure out the correct ciphers. If you're curious, you can read about it in Appendix A of their paper


Feb 11, 2025 - Hidden Markov Models

Reading:


Feb 6, 2025 - Biological databases

Homework #2 (worth 10% of your final course grade) has been assigned on Rosalind and is due by 10 PM February 12:

  • A reminder for when you turn in code for Rosalind: please copy just the text with your code out of Jupyter and paste/upload that into Rosalind, rather than uploading the .ipynb files (which are not intended to be human readable)
  • Besides giving a bit more programming experience, these questions will also give you some more practice with the BioPython Python library (see the "programming shortcuts" at the bottom of several questions). If you have yet to install BioPython on your computer, open an Anaconda prompt window (on a PC) or launch a console window from the Anaconda Navigator & type "pip install biopython". (You can use this approach to install most Python libraries.) There's a very useful tutorial here
  • NOTE: The problem titled "Complementing a Strand of DNA" uses a now out-of-date call for IUPAC codes in the Programming Shortcut. Just delete the "from Bio.Alphabet import IUPAC" line & delete the ", IUPAC.unambiguous_dna" portion of the Seq() functions and it will work fine. e.g. all you need is something like this: my_seq = Seq("GATCGATGGGCCTATATAGGATCGAAAATCGC")

Extra reading/classes:


Feb 4, 2025 - Speeding up your searches: BLAST, MMSeqs2, and Foldseek


Jan 30, 2025 - Sequence Alignment II

  • We'll be finishing up slides from last time.


Jan 28, 2025 - Sequence Alignment I

  • Reminder relevant to our discussion of ChatGPT last class: CNET & other news sources used it to write articles; this Gizmodo story found that "the AI-program fabricates information and bungles facts like nobody’s business" and CNET was "forced to issue multiple, major corrections". So, if you do opt to try ChatGPT to help with Python, be sure to check (and then double-check) everything. And in related news, the Chinese company DeepSeek released an open source ChatGPT competitor. According to wikipedia, "On January 27, 2025, the DeepSeek AI chatbot became the most downloaded free app in the U.S. on Apple’s App Store, surpassing ChatGPT and causing Nvidia's share price to drop by 18%."
  • Today's slides

Problem Set I, due 10PM Feb. 5, 2025:

  • Problem Set 1
  • H. influenzae genome. Haemophilus influenza was the first free living organism to have its genome sequenced. NOTE: there are some additional characters in this file from ambiguous sequence calls. For simplicity's sake, when calculating your nucleotide and dinucleotide frequencies, you can just ignore anything other than A, C, T, and G. Also, if you prefer a .fasta format file (e.g. for BioPython), just add a first line to the text file starting with a ">" character, e.g. "> Hinfluenzae genome file".
  • T. aquaticus genome. Thermus aquaticus helped spawn the genomic revolution as the source of heat-stable Taq polymerase for PCR.
  • 3 mystery genes (for Problem 5): MysteryGene1, MysteryGene2, MysteryGene3
  • *** HEADS UP FOR THE PROBLEM SET *** If you try to use the Python string.count function to count dinucleotides, Python counts non-overlapping instances, not overlapping instances. So, AAAA is counted as 2, not 3, dinucleotides. You want overlapping dinucleotides instead, so will have to try something else, such as the python string[counter:counter+2] command, as explained in the Rosalind homework assignment on strings.

Extra reading, if you're curious:


Jan 23, 2025 - Intro to Python II

  • Reminder that today will be part 2 of the "Python boot camp" for those of you with little to no previous Python coding experience. We'll be finishing the slides from last time, plus Rosalind help & programming Q/A.
  • *** Rosalind assignments are due by 10 PM January 24. ***
  • We'll talk a bit about ChatGPT today for co-programming. My strong recommendation for Python newbies is to not use it for writing programs when you're just getting started, but rather use it as a helper and teacher in interpreting code and suggesting commands. That way, you give yourself a chance to properly internalize the basic Python concepts, formatting, etc. Your use will increase naturally as you start to write more complex code, by which time you'll have a much better ability to gauge the correctness of its suggestions.
  • Another recommendation to the Python newbies is to download Eric Matthes's great, free Python command cheat sheets that he provides to accompany his Python Crash Course book.


Jan 21, 2025 - UT Closed for Icy Weather

  • If you haven't already seen the UT emergency news web page, UT Austin will be closed Tue, Jan 21, 2025, due to forecast frozen precipitation and dangerous travel conditions. All classes are cancelled for the day. The weather forecast looks fine (so far) for the rest of the week, so at the moment, we expect to resume on Thursday with the other half of the Python boot camp. Since we haven't talked about some of the material yet, I extended the Rosalind deadline to this Friday, Jan 24.


Jan 20, 2025 - Martin Luther King, Jr. Day; no classes (or office hours) held


Jan 16, 2025 - Intro to Python

  • Remember that today and the next lecture are dedicated to the Python Boot Camp to start getting those of you with minimal coding skills up to speed on the basics. Experienced programmers can skip class!
  • And a reminder about the mechanics of this class: Lectures will generally be about algorithms and concepts, while the coding help hours (or my office hours) are for you to get individual coding help and feedback. Please plan to go to coding help hours if you need that support!
  • Science news of the day: The UK is launching a massive project to profile the plasma proteomes (>5K proteins) from each of >500M UK participants in the UK Biobank, accompanied by X-rays and longitudinal health data.
  • A request for when you turn in code for Rosalind: please just cut the text code out of Jupyter and paste/upload that into Rosalind, rather than uploading the .ipynb files (which are not intended to be human readable)
  • Today's slides.
  • E. coli genome (formatted as a text file with no extra lines)
  • E. coli genome (formatted as a fasta file, which only differs here in having a header)
  • Don't forget that the Rosalind assignments are due by 10 PM January 22. Please do start if you haven't already, or you won't have time to get help if you have any issues installing Python.
  • We'll use Python version 3 (any version after 3.0 should be fine; just get the latest version in Anaconda), but Rosalind and some older materials are only available in Python 2.7, so we'll generally try to be version agnostic for compatibility. For beginners, the differences are quite minimal and are summarized in a table here. There's also a great cheat sheet here for writing code compatible with both versions.


Jan 14, 2025 - Introduction

  • Today's slides
  • We'll be conducting homework using the online environment Rosalind. Go ahead and register on the site, and enroll specifically for BCH394P/364C (Spring 2025) Systems Biology/Bioinformatics using this link. Homework #1 (worth 10% of your final course grade) has already been assigned on Rosalind and is due by 10:00PM January 22.
  • We'll be using the free Anaconda distribution of Python and Jupyter (download here). Note that there are many other options out there, such as Google colab. You're welcome to use those, but we'll restrict our teaching and TA help sessions to Jupyter/Anaconda for simplicity.

Here are some online Python resources that you might find useful:

  • First and foremost, and very, very useful if you're a complete Python newbie: Eric Matthes's Python Crash Course book. He made some GREAT, free Python command cheat sheets to support the book.
  • Practical Python, worth checking out!
  • If you have any basic experience at all in other programming languages, Google offered an extremely good, 2-day intro course to Python (albeit version 2) that is now available on Youtube.
  • Khan Academy has archived their older intro videos on Python here (again, version 2)

Syllabus & course outline

Course syllabus

An introduction to systems biology and bioinformatics, emphasizing quantitative analysis of high-throughput biological data, and covering typical data, data analysis, and computer algorithms. Topics will include introductory probability and statistics, basics of Python programming, protein and nucleic acid sequence analysis, genome sequencing and assembly, proteomics, analysis of large-scale gene expression data, data clustering & classification, biological pattern recognition, gene and protein networks, AI/machine learning, and protein 3D structure prediction/design.

Open to graduate students and upper division undergrads (with permission) in natural sciences and engineering. Prerequisites: Basic familiarity with molecular biology, statistics & computing, but realistically, it is expected that students will have extremely varied backgrounds. Undergraduates have additional prerequisites, as listed in the catalog.

Note that this is not a course on practical sequence analysis or using web-based tools. Although we will use these, the focus of the course will be on learning the underlying algorithms, exploratory data analyses, and their applications, esp. in high-throughput biology. By the end of the course, students will know the fundamentals of important algorithms in bioinformatics and systems biology, will be able to design and implement computational studies in biology, and will have performed an element of original computational biology research.

Most of the lectures will be from research articles and slides posted online, with some material from the...
Optional text (for sequence analysis): Biological sequence analysis, by R. Durbin, S. Eddy, A. Krogh, G. Mitchison (Cambridge University Press),

For biologists rusty on their stats, The Cartoon Guide to Statistics (Gonick/Smith) is very good. A reasonable online resource for beginners is Statistics Done Wrong. A truly excellent stats book with a free download is An Introduction to Statistical Learning, by James, Witten, Hastie, Tibshirani, and Taylor, and is accompanied by many supporting Python examples and applications.

Two other online probability & stats references: #1, #2 (which has some lovely visualizations)

No exams will be given. Grades will be based on online homework (counting 30% of the grade), 3 problem sets (given every 2-3 weeks and counting 15% each towards the final grade) and an independent course project (25% of the final grade), which can be collaborative (1-3 students/project). The course project will consist of a research project on a bioinformatics topic chosen by the student (with approval by the instructor) containing an element of independent computational biology research (e.g. calculation, programming, database analysis, etc.). This will be turned in as a link to a web page. The final project is due by 10 PM, April 16, 2025. The last 3 classes will be spent presenting your projects to each other. (The presentation will account for 5/25 points of the project grade.)

If at some point, we have to go into coronavirus lockdown, that portion of the class will be web-based. We will hold lectures by Zoom during the normally scheduled class time. Log in to the UT Canvas class page for the link, or, if you are auditing, email the TA and we will send the link by return email. Slides will be posted before class so you can follow along with the material. We'll record the lectures & post the recordings afterward on Canvas so any of you who might be in other time zones or otherwise be unable to make class will have the opportunity to watch them. Note that the recordings will only be available on Canvas and are reserved only for students in this class for educational purposes and are protected under FERPA. The recordings should not be shared outside the class in any form. Violation of this restriction could lead to Student Misconduct proceedings.

Online homework will be assigned and evaluated using the free bioinformatics web resource Rosalind.

All projects and homework will be turned in electronically and time-stamped. No makeup work will be given. Instead, all students have 5 days of free “late time” (for the entire semester, NOT per project, and counting weekends/holidays). For projects turned in late, days will be deducted from the 5-day total (or what remains of it) by the number of days late (in 1-day increments, rounding up, i.e. 10 minutes late = 1 day deducted). Once the full 5 days have been used up, assignments will be penalized 10 percent per day late (rounding up), i.e., a 50-point assignment turned in 1.5 days late would be penalized 20%, or 10 points.

Homework, problem sets, and the project total to a possible 100 points. There will be no curving of grades, nor will grades be rounded up. We’ll use the plus/minus grading system, so: A= 92 and above, A-=90 to 91.99, etc. Just for clarity's sake, here are the cutoffs for the grades: 92% = A, 90% = A- < 92%, 88% = B+ < 90%, 82% = B < 88%, 80% = B- < 82%, 78% = C+ < 80%, 72% = C < 78%, 70% = C- < 72%, 68% = D+ < 70%, 62% = D < 68%, 60% = D- < 62%, F < 60%.

Students are welcome to discuss ideas and problems with each other, but all programs, Rosalind homework, problem sets, and written solutions should be performed independently (except for the final collaborative project). Students are expected to follow the UT honor code. Cheating, plagiarism, copying, & reuse of prior homework, projects, or programs from CourseHero, Github, or any other sources are all strictly forbidden and constitute breaches of academic integrity and cause for dismissal with a failing grade, possibly expulsion (UT's academic integrity policy). In particular, no materials used in this class, including, but not limited to, lecture hand-outs, videos, assessments (papers, projects, homework assignments), in-class materials, review sheets, and additional problem sets, may be shared online or with anyone outside of the class unless you have the instructor’s explicit, written permission. Any materials found online (e.g. in CourseHero) that are associated with you, or any suspected unauthorized sharing of materials, will be reported to Student Conduct and Academic Integrity in the Office of the Dean of Students. These reports can result in sanctions, including failure in the course.

The use of artificial intelligence tools (such as ChatGPT or Github co-pilot) in this class shall be permitted on a limited basis for programming assignments. You are also welcome to seek my prior-approval to use AI writing tools on any assignment. In either instance, AI writing tools should be used with caution and proper citation, as the use of AI should be properly attributed. Using AI writing tools without my permission or authorization, or failing to properly cite AI even where permitted, shall constitute a violation of UT Austin’s Institutional Rules on academic integrity.

Students with disabilities may request appropriate academic accommodations from Disability and Access.

The final project website is due by 10 PM April 16, 2025