CSE 111 Bio: Program Design I Lecture 3: Python Basics & More Bio

Size: px
Start display at page:

Download "CSE 111 Bio: Program Design I Lecture 3: Python Basics & More Bio"

Transcription

1 Theresa CSE 111 Bio: Program Design I Lecture 3: Python Basics & More Bio Robert Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago August 31, 2017

2 DNA sequencing Getting from here: To here:

3 Why sequence DNA? 3

4 This is a physical map of the human X chromosome. (credit: modification of work by NCBI, NIH) Figure 10.11

5 Figure Much basic research is done with model organisms, such as the mouse, Mus musculus; the fruit fly, Drosophila melanogaster; the nematode Caenorhabditis elegans; the yeast Saccharomyces cerevisiae; and the common weed, Arabidopsis thaliana. (credit mouse : modification of work by Florean Fortescue; credit nematodes : modification of work by snickclunk /Flickr; credit common weed : modification of work by Peggy Greb, USDA; scale-bar data from Matt Russell)

6 The bonds between each pair of DNA bases are A. Strong (covalent) bonds that keeps the two strands permanently attached B. Weak (hydrogen) bonds that allow the two strands to be separated C. Ionic bonds that allow a transfer of current along the molecule D. I don t know

7

8 DNA Sequencing: Sanger Method In Frederick Sanger's dideoxy chain termination method, dye-labeled dideoxynucleotides are used to generate DNA fragments that terminate at different points. The DNA is separated by capillary electrophoresis on the basis of size, and from the order of fragments formed, the DNA sequence can be read. The DNA sequence readout is shown on anelectropherogram that is generated by a laser scanner.

9

10

11

12 Metagenomics involves isolating and sequencing DNA from multiple species at the same time.

13

14 Bioinformatics Science that applies computational tools to DNA and protein sequences For the purpose of analyzing, storing, and accessing the sequences for comparative purposes

15 Next-generation sequencing Generates data 100x faster than Sanger method Massively parallel methods Large number of samples sequenced side by side Uses increased computer power and miniaturization

16

17

18 Template strand 3 5 Growing strand TAGGCCT ACACTT ACGCGAAT GT AT CCGGAT 3 PP i DNA polymerase 5 dgtp dntps ATP dndps dnmps + P i Light flash is detected by sensor.

19 Growing chain of DNA PP i Growing point Proton (H + ) release changes ph, generating an electrical signal. Incoming deoxyribonucleotide triphosphate Ion torrent semiconductor sequencing

20 Semiconductor sequencing was applied to sequencing the genome of Gordon Moore author of Moore's law at a mean coverage of 10.6-fold. This required ~1,000 ion chips to provide 1 billion sensors

21

22 ~MINUTES NOW

23

24

25

26

27 DNA Sequencing: Shotgun Assembly

28 Unknown DNA sequence T A G G T T A C C A C T C G A A Cleave DNA into fragments and sequence. Sequenced fragments C T C G A A G G T T A C C A G T T A C C A C T T A G G T T C C A C T C G A A T A C C A C T G T T A C C Computer analysis finds overlaps. T A G G T T G G T T A C C A G T T A C C G T T A C C A C T T A C C A C T C C A C T C G A A C T C G A A Sequence is deduced Pearson Education, Inc. TA GG T TA CCA C T C G A A

29 Suppose the shotgun sequences are: CTGC AGCAT AGCATG GCTGC What is the original sequence? A. AGCATGCTGC B. CTGCAGCATAGCATGGCTGC C. GCTGCAGCATG D. AGCATGC E. No clue

30 Theresa Randall Munroe, XKCD xkcd.com/1513/ VARIABLES FUNCTIONS STRINGS

31 Announcement: Assignment Assignment 2 ("Lab 2") is now out, available for you on Blackboard. Due this Friday at 9 pm (out 1 day later than usual, 45 extra hours on deadline) First small step on the way to finding genes in DNA sequence 31

32 Announcement 2: Bring laptop Th Thursday we will ask you to do short in-class survey at start of class We are studying CS 111! Qualtrics survey that should be okay on phone/tablet, but probably easier on laptop 32

33 To search DNA for specific genome variables functions strings need at least Let s start with variables and then as time allows very light look at functions and strings that may help with Lab2

34 Variables: Simple example In [1]: biologist1 = 'Rosalind Franklin' In [2]: biologist1 Out[2]: 'Rosalind Franklin' In [3]: biologist2 = "Watson" In [4]: biologist2 Out[4]: 'Watson' In [5]: print(biologist1) Out[5]: Rosalind Franklin

35 Variables: Simple example (cont.) In [1]: biologist1 = 'Rosalind Franklin' In [2]: biologist1 Out[2]: 'Rosalind Franklin' In [3]: biologist2 = "Watson" In [4]: biologist1 Out[4]: 'Watson' In [5]: print(biologist1) Out[5]: Rosalind Franklin In [6]: biologist1 + biologist2 Out[6]: 'Rosalind FranklinWatson' In [7]: print("my favorite is ", biologist1) Out[7]: My favorite is Rosalind Franklin

36 print() Requires those parentheses! Prints out what you give it, and you can give it a sequence of things separated by commas If some of the things you give it are variables, will print value of the variable 36

37 Code print(3*5) print( 3*5 ) print( 3 * 5) At the end of this code, what will appear on the terminal? 3*5 3* * * A B C D E. I don t know

38 Variables We want to tell computer to use specific value we put into its memory (To print out a word, to add 2 numbers together, etc.) Much easier for us as humans to give these things names than to remember addresses

39 A box that holds a value Think of variable as box that holds a value (Pythonistas will say value or object more or less interchangeably), and variable's name as sticky note on the box biologist1 biologist2 "Rosalind Franklin" "Watson"

40 >>> biologist1 = "Watson" >>> biologist1 'Watson >>> biologist2 = 'Crick' >>> biologist2 'Crick >>> result = biologist1+biologist2 >>> print ( The two biologists are, result) The two biologists are WatsonCrick Name biologist1 Value Watson >>> biologist1 = biologist1+biologist2 >>> biologist1 Name biologist1 biologist2 Value WatsonCrick Copyright (c) Henry Grant Archive/Museum of London B Crick A Name Value Name biologist1 Value Watson biologist1 biologist2 Watson Crick biologist2 Crick D biologist1 C WatsonCrick E. I don t know

41 Types Objects come in few different types. E.g., strings vs. numbers In Python computer (i.e., interpreter/spyder lower right window) generally figures it out for us, but we still need to know little bit about this since, e.g., In[1] : biologist1+biologist2 Out[1]: 'Rosalind FranklinWatson' In [2]: 3 + biologist1 Traceback (most recent call last): File "<ipython-input-7-900fb9c901d0>", line 1, in <module> 3 + biologist1 TypeError: unsupported operand type(s) for +: 'int' and 'str'

42 Some Python Types Python Type Example(s) String String "CATTAG" Integer (whole number) Integer 3, 0, 17, 42, -21, Decimal number Float Boolean (true/false) Boolean True, False

43 Types: Pick row that is 100% correct iclicker Choice Integer Float String A "" B "1" 4.4 'h' C "hello" D goodbye

44 We love you Python, oh yes we do! We have now covered well over half of everything you will need to know about types for this semester Types much bigger hassle in Java, C, C++

45 A Bit more on Strings (Lab 2!): indexing A A T G C C G T G C T T In [1]: mydna="aatgccgtgctt" In [2]: mydna[0] Out[2]: 'A' In [3]: mydna[3] Out[3]: 'G' In [4]: mydna[20] Out[4]: IndexError: string index out of range In [5]: mydna[0:3] Out[5]: 'AAT' 45

46 Assignment to variables: Semantics <variable> = <expression> 1. Evaluate <expression> 2. Put that value into computer's memory and attach name <variable> as "sticky note" giving name for that memory location

47 Expressions Can be a simple value, like "Rosalind Franklin" or 17 Can be almost any mathematical statement

48 Expressions Can be a simple value, like "Rosalind Franklin" or 17 Also can be almost any mathematical statement x = 6 * 2 y = x - 10 x Memory ("object space") 12

49 Expressions Can be a simple value, like "Rosalind Franklin" or 17 Also can be almost any mathematical statement x = 6 * 2 y = x - 10 x Memory ("object space") 12 Now evaluate x 10 getting à 2

50 Expressions Can be a simple value, like "Rosalind Franklin" or 17 Also can be almost any mathematical statement x = 6 * 2 y = x - 10 x y Memory ("object space") 12 2

51 At end of this code y will be x = 5 y = x * 3 x = 2 A. 2 B. 5 C. 6 D. 15

CSE 111 Bio: Program Design I Lecture 4: Variables, Functions, Strings, Genbank

CSE 111 Bio: Program Design I Lecture 4: Variables, Functions, Strings, Genbank CSE 111 Bio: Program Design I Lecture 4: Variables, Functions, Strings, Genbank Randall Munoe, XKCD http://xkcd.com/1319/ Robert Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago September

More information

CSE 111 Bio: Program Design I Lecture 5: More Strings, Intro Lists, Translation & Central Dogma of Biology

CSE 111 Bio: Program Design I Lecture 5: More Strings, Intro Lists, Translation & Central Dogma of Biology CSE 111 Bio: Program Design I Lecture 5: More Strings, Intro Lists, Translation & Central Dogma of Biology Robert Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago September 12, 2017 What

More information

CSE 111 Bio: Program Design I Lecture 13: BLAST, while loops. Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 10, 2017

CSE 111 Bio: Program Design I Lecture 13: BLAST, while loops. Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 10, 2017 CSE 111 Bio: Program Design I Lecture 13: BLAST, while loops Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 10, 2017 Grace Hopper Celebration of Women in Computing Apply

More information

CSE 115. Introduction to Computer Science I

CSE 115. Introduction to Computer Science I CSE 115 Introduction to Computer Science I Note about posted slides The slides we post will sometimes contain additional slides/content, beyond what was presented in any one lecture. We do this so the

More information

Python The way of a program. Srinidhi H Asst Professor Dept of CSE, MSRIT

Python The way of a program. Srinidhi H Asst Professor Dept of CSE, MSRIT Python The way of a program Srinidhi H Asst Professor Dept of CSE, MSRIT 1 Problem Solving Problem solving means the ability to formulate problems, think creatively about solutions, and express a solution

More information

Graph Algorithms in Bioinformatics

Graph Algorithms in Bioinformatics Graph Algorithms in Bioinformatics Computational Biology IST Ana Teresa Freitas 2015/2016 Sequencing Clone-by-clone shotgun sequencing Human Genome Project Whole-genome shotgun sequencing Celera Genomics

More information

Intro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming

Intro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals

More information

Lecture 9. Assignment. Logical Operations. Logical Operations - Motivation 2/8/18

Lecture 9. Assignment. Logical Operations. Logical Operations - Motivation 2/8/18 Assignment Lecture 9 Logical Operations Formatted Print Printf Increment and decrement Read through 3.9, 3.10 Read 4.1. 4.2, 4.3 Go through checkpoint exercise 4.1 Logical Operations - Motivation Logical

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures and Labs are at fire-code capacity We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are

More information

CS 115 Lecture 4. More Python; testing software. Neil Moore

CS 115 Lecture 4. More Python; testing software. Neil Moore CS 115 Lecture 4 More Python; testing software Neil Moore Department of Computer Science University of Kentucky Lexington, Kentucky 40506 neil@cs.uky.edu 8 September 2015 Syntax: Statements A statement

More information

CSE 20. Lecture 4: Number System and Boolean Function. CSE 20: Lecture2

CSE 20. Lecture 4: Number System and Boolean Function. CSE 20: Lecture2 CSE 20 Lecture 4: Number System and Boolean Function Next Weeks Next week we will do Unit:NT, Section 1. There will be an assignment set posted today. It is just for practice. Boolean Functions and Number

More information

Graph Algorithms in Bioinformatics

Graph Algorithms in Bioinformatics Graph Algorithms in Bioinformatics Bioinformatics: Issues and Algorithms CSE 308-408 Fall 2007 Lecture 13 Lopresti Fall 2007 Lecture 13-1 - Outline Introduction to graph theory Eulerian & Hamiltonian Cycle

More information

CMSC 201 Computer Science I for Majors

CMSC 201 Computer Science I for Majors CMSC 201 Computer Science I for Majors Lecture 02 Intro to Python Syllabus Last Class We Covered Grading scheme Academic Integrity Policy (Collaboration Policy) Getting Help Office hours Programming Mindset

More information

CSC 148 Lecture 3. Dynamic Typing, Scoping, and Namespaces. Recursion

CSC 148 Lecture 3. Dynamic Typing, Scoping, and Namespaces. Recursion CSC 148 Lecture 3 Dynamic Typing, Scoping, and Namespaces Recursion Announcements Python Ramp Up Session Monday June 1st, 1 5pm. BA3195 This will be a more detailed introduction to the Python language

More information

Introduction to Computation for the Humanities and Social Sciences. CS 3 Chris Tanner

Introduction to Computation for the Humanities and Social Sciences. CS 3 Chris Tanner Introduction to Computation for the Humanities and Social Sciences CS 3 Chris Tanner Lecture 4 Python: Variables, Operators, and Casting Lecture 4 [People] need to learn code, man I m sick with the Python.

More information

Algorithms and Programming I. Lecture#12 Spring 2015

Algorithms and Programming I. Lecture#12 Spring 2015 Algorithms and Programming I Lecture#12 Spring 2015 Think Python How to Think Like a Computer Scientist By :Allen Downey Installing Python Follow the instructions on installing Python and IDLE on your

More information

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop Announcements Lab Friday, 1-2:30 and 3-4:30 in 26-152 Boot your laptop and start Forte, if you brought your laptop Create an empty file called Lecture4 and create an empty main() method in a class: 1.00

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures are at fire-code capacity. We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are allowed

More information

Python for Bioinformatics Fall 2014

Python for Bioinformatics Fall 2014 Python for Bioinformatics Fall 2014 Ntino Krampis, PhD Associate Professor Biological Sciences Class 09-02-2014 1 Course Structure Meets weekly on Tuesdays 2-4pm Office hours on Mondays 10am - 12pm, will

More information

SAMS Programming A/B. Lecture #1 Introductions July 3, Mark Stehlik

SAMS Programming A/B. Lecture #1 Introductions July 3, Mark Stehlik SAMS Programming A/B Lecture #1 Introductions July 3, 2017 Mark Stehlik Outline for Today Overview of Course A Python intro to be continued in lab on Wednesday (group A) and Thursday (group B) 7/3/2017

More information

INTRODUCTION TO BIOINFORMATICS

INTRODUCTION TO BIOINFORMATICS Molecular Biology-2017 1 INTRODUCTION TO BIOINFORMATICS In this section, we want to provide a simple introduction to using the web site of the National Center for Biotechnology Information NCBI) to obtain

More information

Com S 127 Lab 2. For the first two parts of the lab, start up Wing 101 and use the Python shell window to try everything out.

Com S 127 Lab 2. For the first two parts of the lab, start up Wing 101 and use the Python shell window to try everything out. Com S 127 Lab 2 Checkpoint 0 Please open the CS 127 Blackboard page and click on Groups in the menu at left. Sign up for the group corresponding to the lab section you are attending. Also, if you haven't

More information

Act like a code monkey Coding Basics

Act like a code monkey Coding Basics Act like a code monkey Coding Basics Announcement Homework 1 grade is posted If you believe there is an error in grading (assignments or quizzes), you may request a regrading within one week of receiving

More information

Python for Non-programmers

Python for Non-programmers Python for Non-programmers A Gentle Introduction 1 Yann Tambouret Scientific Computing and Visualization Information Services & Technology Boston University 111 Cummington St. yannpaul@bu.edu Winter 2013

More information

CS 115 Lecture 8. Selection: the if statement. Neil Moore

CS 115 Lecture 8. Selection: the if statement. Neil Moore CS 115 Lecture 8 Selection: the if statement Neil Moore Department of Computer Science University of Kentucky Lexington, Kentucky 40506 neil@cs.uky.edu 24 September 2015 Selection Sometime we want to execute

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 03 Operators All materials copyright UMBC and Dr. Katherine Gibson unless otherwise noted Variables Last Class We Covered Rules for naming Different types

More information

CS 115 Data Types and Arithmetic; Testing. Taken from notes by Dr. Neil Moore

CS 115 Data Types and Arithmetic; Testing. Taken from notes by Dr. Neil Moore CS 115 Data Types and Arithmetic; Testing Taken from notes by Dr. Neil Moore Statements A statement is the smallest unit of code that can be executed on its own. So far we ve seen simple statements: Assignment:

More information

NGS NEXT GENERATION SEQUENCING

NGS NEXT GENERATION SEQUENCING NGS NEXT GENERATION SEQUENCING Paestum (Sa) 15-16 -17 maggio 2014 Relatore Dr Cataldo Senatore Dr.ssa Emilia Vaccaro Sanger Sequencing Reactions For given template DNA, it s like PCR except: Uses only

More information

CS 1803 Pair Homework 3 Calculator Pair Fun Due: Wednesday, September 15th, before 6 PM Out of 100 points

CS 1803 Pair Homework 3 Calculator Pair Fun Due: Wednesday, September 15th, before 6 PM Out of 100 points CS 1803 Pair Homework 3 Calculator Pair Fun Due: Wednesday, September 15th, before 6 PM Out of 100 points Files to submit: 1. HW3.py This is a PAIR PROGRAMMING Assignment: Work with your partner! For pair

More information

CSE 111 Bio: Program Design I Lecture 12: more loops, files. Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 5, 201u

CSE 111 Bio: Program Design I Lecture 12: more loops, files. Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 5, 201u CSE 111 Bio: Program Design I Lecture 12: more loops, files Bob Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago October 5, 201u LogisIcs Notes: Reading Reminder: Reading for class are

More information

Algorithms for Bioinformatics

Algorithms for Bioinformatics Adapted from slides by Alexandru Tomescu, Leena Salmela and Veli Mäkinen, which are partly from http://bix.ucsd.edu/bioalgorithms/slides.php 582670 Algorithms for Bioinformatics Lecture 3: Graph Algorithms

More information

Lecture 4. Defining Functions

Lecture 4. Defining Functions Lecture 4 Defining Functions Academic Integrity Quiz Reading quiz about the course AI policy Go to http://www.cs.cornell.edu/courses/cs11110/ Click Academic Integrity in side bar Read and take quiz in

More information

Sequencing. Computational Biology IST Ana Teresa Freitas 2011/2012. (BACs) Whole-genome shotgun sequencing Celera Genomics

Sequencing. Computational Biology IST Ana Teresa Freitas 2011/2012. (BACs) Whole-genome shotgun sequencing Celera Genomics Computational Biology IST Ana Teresa Freitas 2011/2012 Sequencing Clone-by-clone shotgun sequencing Human Genome Project Whole-genome shotgun sequencing Celera Genomics (BACs) 1 Must take the fragments

More information

Lecture 2: Variables & Assignments

Lecture 2: Variables & Assignments http://www.cs.cornell.edu/courses/cs1110/2018sp Lecture 2: Variables & Assignments (Sections 2.1-2.3,2.5) CS 1110 Introduction to Computing Using Python [E. Andersen, A. Bracy, D. Gries, L. Lee, S. Marschner,

More information

FORM 1 (Please put your name and form # on the scantron!!!!) CS 161 Exam I: True (A)/False(B) (2 pts each):

FORM 1 (Please put your name and form # on the scantron!!!!) CS 161 Exam I: True (A)/False(B) (2 pts each): FORM 1 (Please put your name and form # on the scantron!!!!) CS 161 Exam I: True (A)/False(B) (2 pts each): 1. The basic commands that a computer performs are input (get data), output (display result),

More information

5. Assuming gooddata is a Boolean variable, the following two tests are logically equivalent. if (gooddata == false) if (!

5. Assuming gooddata is a Boolean variable, the following two tests are logically equivalent. if (gooddata == false) if (! FORM 2 (Please put your name and form # on the scantron!!!!) CS 161 Exam I: True (A)/False(B) (2 pts each): 1. Assume that all variables are properly declared. The following for loop executes 20 times.

More information

cs1114 REVIEW of details test closed laptop period

cs1114 REVIEW of details test closed laptop period python details DOES NOT COVER FUNCTIONS!!! This is a sample of some of the things that you are responsible for do not believe that if you know only the things on this test that they will get an A on any

More information

61A Lecture 2. Friday, August 28, 2015

61A Lecture 2. Friday, August 28, 2015 61A Lecture 2 Friday, August 28, 2015 Names, Assignment, and User-Defined Functions (Demo) Types of Expressions Primitive expressions: 2 add 'hello' Number or Numeral Name String Call expressions: max

More information

MEIN 50010: Python Introduction

MEIN 50010: Python Introduction : Python Fabian Sievers Higgins Lab, Conway Institute University College Dublin Wednesday, 2017-10-04 Outline Goals Teach basic programming concepts Apply these concepts using Python Use Python Packages

More information

Question: Total Points: Score:

Question: Total Points: Score: CS 170 Exam 1 Section 000 Spring 2015 Name (print): Instructions: Keep your eyes on your own paper and do your best to prevent anyone else from seeing your work. Do NOT communicate with anyone other than

More information

CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) First Name: Last Name: NetID:

CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28)   First Name: Last Name: NetID: CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) http://www.cs.cornell.edu/courses/cs1110/2016sp/labs/lab01/lab01.pdf First Name: Last Name: NetID: Goals. Learning a computer language is a lot like learning

More information

What can we do with Processing? Let s check. Natural Language and Dialogue Systems Lab Guest Image. Remember how colors work.

What can we do with Processing? Let s check. Natural Language and Dialogue Systems Lab Guest Image. Remember how colors work. MIDTERM REVIEW: THURSDAY I KNOW WHAT I WANT TO REVIEW. BUT ALSO I WOULD LIKE YOU TO TELL ME WHAT YOU MOST NEED TO GO OVER FOR MIDTERM. BY EMAIL AFTER TODAY S CLASS. What can we do with Processing? Let

More information

Changing Databases. This presentation gives a quick overview on how to change databases in Osprey.

Changing Databases. This presentation gives a quick overview on how to change databases in Osprey. Changing Databases This presentation gives a quick overview on how to change databases in Osprey. Changing Databases New to Osprey version 1.0.0+ is the ability access different databases containing annotation

More information

Bioinformatics-themed projects in Discrete Mathematics

Bioinformatics-themed projects in Discrete Mathematics Bioinformatics-themed projects in Discrete Mathematics Art Duval University of Texas at El Paso Joint Mathematics Meeting MAA Contributed Paper Session on Discrete Mathematics in the Undergraduate Curriculum

More information

A new algorithm for de novo genome assembly

A new algorithm for de novo genome assembly Western University Scholarship@Western Electronic Thesis and Dissertation Repository December 2012 A new algorithm for de novo genome assembly Md. Bahlul Haider The University of Western Ontario Supervisor

More information

Fundamentals: Expressions and Assignment

Fundamentals: Expressions and Assignment Fundamentals: Expressions and Assignment A typical Python program is made up of one or more statements, which are executed, or run, by a Python console (also known as a shell) for their side effects e.g,

More information

Two Types of Types. Primitive Types in Java. Using Primitive Variables. Class #07: Java Primitives. Integer types.

Two Types of Types. Primitive Types in Java. Using Primitive Variables. Class #07: Java Primitives. Integer types. Class #07: Java Primitives Software Design I (CS 120): M. Allen, 13 Sep. 2018 Two Types of Types So far, we have mainly been dealing with objects, like DrawingGizmo, Window, Triangle, that are: 1. Specified

More information

COMP Primitive and Class Types. Yi Hong May 14, 2015

COMP Primitive and Class Types. Yi Hong May 14, 2015 COMP 110-001 Primitive and Class Types Yi Hong May 14, 2015 Review What are the two major parts of an object? What is the relationship between class and object? Design a simple class for Student How to

More information

Question: Total Points: Score:

Question: Total Points: Score: CS 170 Exam 1 Section 000 Spring 2015 Name (print): Instructions: Keep your eyes on your own paper and do your best to prevent anyone else from seeing your work. Do NOT communicate with anyone other than

More information

CSE 111 Bio: Program Design I Lecture7: Condi/onal statements, genes and metabolism

CSE 111 Bio: Program Design I Lecture7: Condi/onal statements, genes and metabolism CSE 111 Bio: Program Design I Lecture7: Condi/onal statements, genes and metabolism Robert Sloan (CS) & Rachel Poretsky (Bio) University of Illinois, Chicago September 19, 2017 return vs. print example

More information

Welcome to CS 135 (Winter 2018)

Welcome to CS 135 (Winter 2018) Welcome to CS 135 (Winter 2018) Instructors: Sandy Graham, Paul Nijjar Other course personnel: see website for details ISAs (Instructional Support Assistants) IAs (Instructional Apprentices) ISC (Instructional

More information

CS 3 Midterm 1 Review

CS 3 Midterm 1 Review CS 3 Midterm 1 Review 1. Quick Evaluations Indicate what each of the following would return if typed into STK. If you think it would error, then please write ERROR. If you think that it would loop forever,

More information

Getting started with Java

Getting started with Java Getting started with Java Magic Lines public class MagicLines { public static void main(string[] args) { } } Comments Comments are lines in your code that get ignored during execution. Good for leaving

More information

Assignment 7: Single-cell genomics. Bio /02/2018

Assignment 7: Single-cell genomics. Bio /02/2018 Assignment 7: Single-cell genomics Bio5488 03/02/2018 Assignment 7: Single-cell genomics Input Genotypes called from several exome-sequencing datasets derived from either bulk or small pools of cells (VCF

More information

CS 1110, LAB 1: PYTHON EXPRESSIONS.

CS 1110, LAB 1: PYTHON EXPRESSIONS. CS 1110, LAB 1: PYTHON EXPRESSIONS Name: Net-ID: There is an online version of these instructions at http://www.cs.cornell.edu/courses/cs1110/2012fa/labs/lab1 You may wish to use that version of the instructions.

More information

INTRODUCTION TO BIOINFORMATICS

INTRODUCTION TO BIOINFORMATICS Molecular Biology-2019 1 INTRODUCTION TO BIOINFORMATICS In this section, we want to provide a simple introduction to using the web site of the National Center for Biotechnology Information NCBI) to obtain

More information

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment

More information

ENGR 102 Engineering Lab I - Computation

ENGR 102 Engineering Lab I - Computation ENGR 102 Engineering Lab I - Computation Week 03: Data Types and Console Input / Output Introduction to Types As we have already seen, 1 computers store numbers in a binary sequence of bits. The organization

More information

CS1 Lecture 3 Jan. 22, 2018

CS1 Lecture 3 Jan. 22, 2018 CS1 Lecture 3 Jan. 22, 2018 Office hours for me and for TAs have been posted, locations will change check class website regularly First homework available, due Mon., 9:00am. Discussion sections tomorrow

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 07 While Loops (cont) Last Class We Covered Using while loops Syntax of a while loop Interactive loops Infinite loops and other problems Practice with while

More information

CS1110 Lab 1 (Jan 27-28, 2015)

CS1110 Lab 1 (Jan 27-28, 2015) CS1110 Lab 1 (Jan 27-28, 2015) First Name: Last Name: NetID: Completing this lab assignment is very important and you must have a CS 1110 course consultant tell CMS that you did the work. (Correctness

More information

Welcome to CS 135 (Fall 2018) Themes of the course. Lectures. cs135/

Welcome to CS 135 (Fall 2018) Themes of the course. Lectures.   cs135/ Welcome to CS 135 (Fall 2018) Instructors: Byron Weber Becker, Charles Clarke, Gord Cormack, Robert Hackman, Kevin Lanctot, Paul Nijjar, Adrian Reetz Other course personnel: see website for details ISAs

More information

CS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm

CS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm CS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm Instructions: Show your work. Correct answers with no work will not receive full credit. Whether

More information

Lec 3. Compilers, Debugging, Hello World, and Variables

Lec 3. Compilers, Debugging, Hello World, and Variables Lec 3 Compilers, Debugging, Hello World, and Variables Announcements First book reading due tonight at midnight Complete 80% of all activities to get 100% HW1 due Saturday at midnight Lab hours posted

More information

Lecture 1. Types, Expressions, & Variables

Lecture 1. Types, Expressions, & Variables Lecture 1 Types, Expressions, & Variables About Your Instructor Director: GDIAC Game Design Initiative at Cornell Teach game design (and CS 1110 in fall) 8/29/13 Overview, Types & Expressions 2 Helping

More information

Algorithms for Bioinformatics

Algorithms for Bioinformatics Adapted from slides by Alexandru Tomescu, Leena Salmela and Veli Mäkinen, which are partly from http://bix.ucsd.edu/bioalgorithms/slides.php 58670 Algorithms for Bioinformatics Lecture 5: Graph Algorithms

More information

Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document. Solutions to Number Systems Worksheet. Announcements.

Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document. Solutions to Number Systems Worksheet. Announcements. August 15, 2016 Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document Install SiLabs Instructions in Installing_SiLabs-SDCC- Drivers document Install SecureCRT On LMS, also

More information

Note: This is a miniassignment and the grading is automated. If you do not submit it correctly, you will receive at most half credit.

Note: This is a miniassignment and the grading is automated. If you do not submit it correctly, you will receive at most half credit. Com S 227 Fall 2017 Miniassignment 1 50 points Due Date: Monday, October 16, 11:59 pm (midnight) Late deadline (25% penalty): Tuesday, October 17, 11:59 pm General information This assignment is to be

More information

Classes, part Deux. Three Groups. CSE 231, Rich Enbody. Users Programmers Class Designers 11/11/13. Michigan State University CSE 231, Fall 2013

Classes, part Deux. Three Groups. CSE 231, Rich Enbody. Users Programmers Class Designers 11/11/13. Michigan State University CSE 231, Fall 2013 , part Deux CSE 231, Rich Enbody Three Groups Users Programmers Class Designers 1 Getters and Setters getters: methods that fetch the value setters: methods set a value 2 GetterSetter Example Why do this?

More information

Mitochondrial DNA Typing

Mitochondrial DNA Typing Tutorial for Windows and Macintosh Mitochondrial DNA Typing 2007 Gene Codes Corporation Gene Codes Corporation 775 Technology Drive, Ann Arbor, MI 48108 USA 1.800.497.4939 (USA) +1.734.769.7249 (elsewhere)

More information

Lecture 2. Variables & Assignment

Lecture 2. Variables & Assignment Lecture 2 Variables & Assignment Announcements for Today If Not Done Already Enroll in Piazza Sign into CMS Fill out the Survey Complete AI Quiz Read the tetbook Chapter 1 (browse) Chapter 2 (in detail)

More information

CME 193: Introduction to Scientific Python Lecture 1: Introduction

CME 193: Introduction to Scientific Python Lecture 1: Introduction CME 193: Introduction to Scientific Python Lecture 1: Introduction Nolan Skochdopole stanford.edu/class/cme193 1: Introduction 1-1 Contents Administration Introduction Basics Variables Control statements

More information

Lecture 3. Strings, Functions, & Modules

Lecture 3. Strings, Functions, & Modules Lecture 3 Strings, Functions, & Modules Labs this Week Lab 1 is due at the beginning of your lab If it is not yet by then, you cannot get credit Only exception is for students who added late (Those students

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 24 Sorting Prof. Jeremy Dixon Based on slides from previous iterations of the course Surveys Blackboard Survey worth 1% of your final grade. Take a few minutes

More information

Genome Sciences 373: Genome Informatics. Quiz section #1 March 29, 2018

Genome Sciences 373: Genome Informatics. Quiz section #1 March 29, 2018 Genome Sciences 373: Genome Informatics Quiz section #1 March 29, 2018 About me Email: hpliner@uw.edu Office hours: Thursday right after quiz section (2:20pm) Foege S110 Or by appointment Other help: I

More information

Professor: Sana Odeh Lecture 3 Python 3.1 Variables, Primitive Data Types & arithmetic operators

Professor: Sana Odeh Lecture 3 Python 3.1 Variables, Primitive Data Types & arithmetic operators 1 Professor: Sana Odeh odeh@courant.nyu.edu Lecture 3 Python 3.1 Variables, Primitive Data Types & arithmetic operators Review What s wrong with this line of code? print( He said Hello ) What s wrong with

More information

Error Correction in Next Generation DNA Sequencing Data

Error Correction in Next Generation DNA Sequencing Data Western University Scholarship@Western Electronic Thesis and Dissertation Repository December 2012 Error Correction in Next Generation DNA Sequencing Data Michael Z. Molnar The University of Western Ontario

More information

Basic Data Types and Operators CS 8: Introduction to Computer Science, Winter 2019 Lecture #2

Basic Data Types and Operators CS 8: Introduction to Computer Science, Winter 2019 Lecture #2 Basic Data Types and Operators CS 8: Introduction to Computer Science, Winter 2019 Lecture #2 Ziad Matni, Ph.D. Dept. of Computer Science, UCSB Your Instructor Your instructor: Ziad Matni, Ph.D(zee-ahd

More information

Announcements - Grades UBLearns grades just updated Monday, March 28 th (11:00am). Please check grades.

Announcements - Grades UBLearns grades just updated Monday, March 28 th (11:00am). Please check grades. CSE 113 A March 28 April 1, 2011 Announcements - Grades UBLearns grades just updated Monday, March 28 th (11:00am). Please check grades. If an EXAM grade is incorrect, you need to bring the exam to me

More information

CMPT 120 Basics of Python. Summer 2012 Instructor: Hassan Khosravi

CMPT 120 Basics of Python. Summer 2012 Instructor: Hassan Khosravi CMPT 120 Basics of Python Summer 2012 Instructor: Hassan Khosravi Python A simple programming language to implement your ideas Design philosophy emphasizes code readability Implementation of Python was

More information

CS 177 Week 15 Recitation Slides. Review

CS 177 Week 15 Recitation Slides. Review CS 177 Week 15 Recitation Slides Review 1 Announcements Final Exam on Friday Dec. 18 th STEW 183 from 1 3 PM Complete your online review of your classes. Your opinion matters!!! Project 6 due Just kidding

More information

WELCOME! (download slides and.py files and follow along!) LECTURE 1

WELCOME! (download slides and.py files and follow along!) LECTURE 1 WELCOME! (download slides and.py files and follow along!) 6.0001 LECTURE 1 6.0001 LECTURE 1 1 TODAY course info what is computation python basics mathematical operations python variables and types NOTE:

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 12 Tuples All materials copyright UMBC and Dr. Katherine Gibson unless otherwise noted Modularity Meaning Benefits Program design Last Class We Covered Top

More information

PRG PROGRAMMING ESSENTIALS. Lecture 2 Program flow, Conditionals, Loops

PRG PROGRAMMING ESSENTIALS. Lecture 2 Program flow, Conditionals, Loops PRG PROGRAMMING ESSENTIALS 1 Lecture 2 Program flow, Conditionals, Loops https://cw.fel.cvut.cz/wiki/courses/be5b33prg/start Michal Reinštein Czech Technical University in Prague, Faculty of Electrical

More information

Lecture 7. Memory in Python

Lecture 7. Memory in Python Lecture 7 Memory in Python Announcements For This Lecture Readings Reread Chapter 3 No reading for Thursday Lab Work on Assignment Credit when submit A Nothing else to do Assignment Moved to Fri, Sep.

More information

A Little Python Part 1. Introducing Programming with Python

A Little Python Part 1. Introducing Programming with Python A Little Python Part 1 Introducing Programming with Python Preface Not a complete course in a programming language Many details can t be covered Need to learn as you go My programming style is not considered

More information

from scratch A primer for scientists working with Next-Generation- Sequencing data Chapter 1 Text output and manipulation

from scratch A primer for scientists working with Next-Generation- Sequencing data Chapter 1 Text output and manipulation from scratch A primer for scientists working with Next-Generation- Sequencing data Chapter 1 Text output and manipulation Chapter 1: text output and manipulation In this unit you will learn how to write

More information

Arrays: Higher Dimensional Arrays. CS0007: Introduction to Computer Programming

Arrays: Higher Dimensional Arrays. CS0007: Introduction to Computer Programming Arrays: Higher Dimensional Arrays CS0007: Introduction to Computer Programming Review If the == operator has two array variable operands, what is being compared? The reference variables held in the variables.

More information

CS1 Lecture 3 Jan. 18, 2019

CS1 Lecture 3 Jan. 18, 2019 CS1 Lecture 3 Jan. 18, 2019 Office hours for Prof. Cremer and for TAs have been posted. Locations will change check class website regularly First homework assignment will be available Monday evening, due

More information

Introduction to Python and programming. Ruth Anderson UW CSE 160 Winter 2017

Introduction to Python and programming. Ruth Anderson UW CSE 160 Winter 2017 Introduction to Python and programming Ruth Anderson UW CSE 160 Winter 2017 1 1. Python is a calculator 2. A variable is a container 3. Different types cannot be compared 4. A program is a recipe 2 0.

More information

BCH339N Systems Biology/Bioinformatics Spring 2018 Marcotte A Python programming primer

BCH339N Systems Biology/Bioinformatics Spring 2018 Marcotte A Python programming primer BCH339N Systems Biology/Bioinformatics Spring 2018 Marcotte A Python programming primer Python: named after Monty Python s Flying Circus (designed to be fun to use) Python documentation: http://www.python.org/doc/

More information

Lecture 1. Course Overview Types & Expressions

Lecture 1. Course Overview Types & Expressions Lecture 1 Course Overview Types & Expressions CS 1110 Spring 2012: Walker White Outcomes: Basics of (Java) procedural programming Usage of assignments, conditionals, and loops. Ability to write recursive

More information

Lecture 20: While Loops (Sections 7.3, 7.4)

Lecture 20: While Loops (Sections 7.3, 7.4) http://www.cs.cornell.edu/courses/cs1110/2018sp Lecture 20: While Loops (Sections 7.3, 7.4) CS 1110 Introduction to Computing Using Python [E. Andersen, A. Bracy, D. Gries, L. Lee, S. Marschner, C. Van

More information

Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 2: Relations and SQL. September 5, Lecturer: Rasmus Pagh

Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 2: Relations and SQL. September 5, Lecturer: Rasmus Pagh Introduction to Databases, Fall 2005 IT University of Copenhagen Lecture 2: Relations and SQL September 5, 2005 Lecturer: Rasmus Pagh Today s lecture What, exactly, is the relational data model? What are

More information

Mitochondrial DNA Typing

Mitochondrial DNA Typing Tutorial for Windows and Macintosh Mitochondrial DNA Typing 2017 Gene Codes Corporation Gene Codes Corporation 525 Avis Drive, Ann Arbor, MI 48108 USA 1.800.497.4939 (USA) +1.734.769.7249 (elsewhere) +1.734.769.7074

More information

DNA Fragment Assembly

DNA Fragment Assembly Algorithms in Bioinformatics Sami Khuri Department of Computer Science San José State University San José, California, USA khuri@cs.sjsu.edu www.cs.sjsu.edu/faculty/khuri DNA Fragment Assembly Overlap

More information

PREPARING FOR PRELIM 1

PREPARING FOR PRELIM 1 PREPARING FOR PRELIM 1 CS 1110: FALL 2012 This handout explains what you have to know for the first prelim. There will be a review session with detailed examples to help you study. To prepare for the prelim,

More information

Course Overview, Python Basics

Course Overview, Python Basics CS 1110: Introduction to Computing Using Python Lecture 1 Course Overview, Python Basics [Andersen, Gries, Lee, Marschner, Van Loan, White] Interlude: Why learn to program? (which is subtly distinct from,

More information

(First is used here)

(First is used here) Solo Complete all four programs by yourself Print programs 1, 2, 3, and 4, staple them together (or lose points) and turn in to your section leader or Rick if Cody is your SL from 9:55-10:01 am Wednesday,

More information

CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection

CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection Overview By the end of the lab, you will be able to: declare variables perform basic arithmetic operations on integer variables

More information