LecturesPart12
Download
Report
Transcript LecturesPart12
Computational Biology, Part 12
Spreadsheet Basics I
Robert F. Murphy
Copyright 1996, 1999-2001.
All rights reserved.
Cells
A spreadsheet is a two-dimensional array of
cells. Each cell is uniquely identified by
the row and column at whose intersection it
lies. Most spreadsheets use letters to
specify columns and numbers to specify
rows. Thus cell C7 is in column C (the 3rd
column) and row 7.
Cells can contain values or formulas.
Values
A value is a constant entered into a cell. A
value may be numeric or textual.
Numeric
values include integers, real numbers
expressed as decimals, or real numbers
expressed in scientific notation.
Examples:
“5”, “7.11”, “2e-6”
Textual
values normally consist of one or more
“printable” characters.
Examples:
“Mass”, “Created by R. Stuart”
Labels
A label is a textual value used to mark,
identify or clarify other cells.A label might
be a heading on top of a column of numbers
or an identifier beside an important value.
Examples:
“Temperature=”, “Concentration”
Formulas
A formula is an entry in a cell that specifies
one or more calculations to be done to
create a value for that cell. Formulas
must
be identified to the program as distinct
from textual values (normally by preceding
them with an = or +)
may refer to other cells
may use operators, such as * and ^
may invoke functions provided by the
spreadsheet program
Functions
A function is something provided by the
spreadsheet that is replaced by a value
during evaluation of a formula (it “returns a
value”).
A function may or may not require
arguments.
Examples: SIN, AVERAGE, DATE
Operator Hierarchy
It is important to know the order in which
operators are evaluated in spreadsheet
formulas. This order is referred to as the
operator hierarchy. When parentheses are
not present, exponentiation is performed
first, followed by multiplication & division,
followed by addition and subtraction. When
operators of equal hierarchy are present,
they are evaluated from left to right.
Operator Hierarchy Examples
Assume:
A1=1,
A2=2,
A3=5,
A4=13
What is A1 + A2*A3?
11
What is A1 + A2*A3 + A4?
24
What is (A1 + A2)*(A3 + A4)?
54
What is A1*A4/A2*A3?
32.5
What is A1*A4/(A2*A3)?
1.3
What is 10^A2/10^A3?
0.001
What is 10^(A2/10)^A3?
10
Formats
Values (including results of formulas) may
be displayed in a variety of formats. For
numeric values, the precision controls how
many decimals places are displayed. In
Excel, the precision is set on the Number
tab after selecting Cells... under the Format
menu or using the Toolbar or buttons.
Relative vs. Absolute References
A central feature of spreadsheet programs is
the ability to automatically change cell
references when the contents of a cell are
copied to other cells. This allows a formula
to be entered once but evaluated for many
different cases.
To illustrate this, we will generate a model
that calculates the fraction of an ionizable
group that is charged at various pH values
Simple model: Acid Dissociation
For the dissociation of a weak acid
HB B- + H+
HB is referred to as the conjugate acid and
B- is referred to as the conjugate base
The equilibrium equations are
H B
Keq
HB
B
pH pK log
HB
Ionization equilibria for amino
acids
Need to consider which groups on an amino
acid can be protonated/unprotonated
The carboxyl and amino groups that are
involved in peptide bonds have relatively
constant pKs of ~2 and ~9
The side chain pKs vary considerably.
Illustrations for Arg and Tyr follow.
Arg-
+
_
+
+
H2Arg+
_
HArg
_
+
+
H3Arg++
+
_Tyr--
HTyr-
_
_
H2Tyr
H3Tyr+
_
+
Example: An Ionizable Group
Task: Given a pKa and a pH calculate
fraction of base in unprotonated form
Step 1: Enter pKa and pH as constant values
into two cells
Example: An Ionizable Group
Step 2: Enter formula
using references to
constants
[B] 10 pH
pK
10
[HB]
Example: An Ionizable Group
Note: The formula was made visible in the
spreadsheet by clicking the Formulas box
on the View tab after selecting
Preferences... under the Tools menu
Example: An Ionizable Group
Step 3: Convert to fraction of B
Example: An Ionizable Group
Switch to viewing results of formulas rather
than the formulas themselves
Example: An Ionizable Group
New Task: Calculate fraction of B for more
than one pH value
Step 4: Rearrange cells so that each row can
be devoted to one pH value
Example: An Ionizable Group
Step 5: Enter a formula to generate a series
of increasing pH values
Example: An Ionizable Group
Step 6: Copy the formula from cell B7
down to cell B8
Example: An Ionizable Group
Note that the reference to the pH value (cell
A7) changed to A8 (which we wanted to
happen) but that the reference to the pKa
(cell B4) changed to B5 (which we didn’t)
Relative References
“Normally” a formula containing the names
of cells (called references to those cells) are
updated when that formula is copied to
another cell
The row number is incremented by the
difference in row numbers between the
original location of the formula and the new
location
The column number is incremented by the
difference in column numbers
Relative vs. Absolute References
Such a reference is termed a relative
reference because the reference is
implicitly relative to the current cell
We may want to “fix” or “hold” a reference
so that it doesn’t change during copying a
formula
This is termed an absolute reference and in
Excel is created by putting a dollar sign ($)
in front of the row or column number, or
both
Example: An Ionizable Group
Step 7: Change the reference to the pKa to
an absolute reference
Example: An Ionizable Group
Step 8: Copy the formula in cell C7 down
(note that the reference to B7 updates to B8)
Example: An Ionizable Group
Step 9: Copy the formulas in cells A8:C8
down (note that the references to A7, A8,
and B8 increment but $B$4 doesn’t)
Example: An Ionizable Group
Step 10: Switch back to viewing values
rather than formulas to see results
Names
To make it easier to read formulas
containing many cell references, some
spreadsheet programs allow the creation of
names for cells (like variable names in
programs)
Example: An Ionizable Group
New Task: Define absolute name for cell
containing pKa
Step 11: Select cell B4 then Define Name
Example: An Ionizable Group
Note Excel has chosen a name based on the
label in the adjacent cell and that the default
is for the name to refer to the currently
selected cell
Example: An Ionizable Group
Step 12: Use Apply Name to replace all
references to B4 in the spreadsheet with the
new name
Example: An Ionizable Group
Note formulas now show the name
Example: An Ionizable Group
New Task: Define relative name for pH
Step 13: Select cell A7 and Define Name
Example: An Ionizable Group
Note name now chosen based on label
above B7. Change reference from $A$7
(default is absolute for names) to $A7 (row
number is allow to be relative)
Example: An Ionizable Group
Step 14: Apply Name
Complex Models and Graphing
Before creating complex models, it is
important to think about what graphical or
tabular output is desired from the model.
The organization of the spreadsheet should
be optimized for this output. For example,
if graphing of [P] vs. t is desired, try to
place all values for t and [P] in consecutive
cells in adjacent rows or columns.
A Model with a Single Output
(Demonstration D2)
A Workaround for Graphing
A spreadsheet that calculates some desired
quantity (e.g., net charge) for a single value
of some independent variable (e.g., pH), can
be used for graphing by adding cells in
which various values of the dependent
variable are manually tabulated as the
independent variable is changed
(Demonstration D3)
Expanding a Model for Graphing
A better approach to the same problem is to
make many copies of the original
spreadsheet (using copy and paste) and
enter a different value of the independent
variable in each copy. The results can be
collected for graphing using references.
(Demonstration D4)
Grouping Constants
The best method is to redesign the original
sheet so that only one row (or column) is
needed for each value of the independent
variable. This allows using fill down for the
subsequent rows of the sheet.
(Demonstration D5)
Assigned Reading For Next Class
Yeargers
Chapter
1
Section 2.1
Chapter 3 through Section 3.4
Chapter 4 through Section 4.2