- R is a free software environment for statistical computing and graphics. It has an active user community and supports graphical capabilities.
- R can import and export data, perform data manipulation and summaries. It provides various plotting functions and control structures to control program flow.
- Debugging tools in R include traceback, debug, browser and trace which help identify and fix issues in functions.
This hands-on R course will guide users through a variety of programming functions in the open-source statistical software program, R. Topics covered include indexing, loops, conditional branching, S3 classes, and debugging. Full workshop materials available from http://projects.iq.harvard.edu/rtc/r-prog
It covers- Introduction to R language, Creating, Exploring data with Various Data Structures e.g. Vector, Array, Matrices, and Factors. Using Methods with examples.
This hands-on R course will guide users through a variety of programming functions in the open-source statistical software program, R. Topics covered include indexing, loops, conditional branching, S3 classes, and debugging. Full workshop materials available from http://projects.iq.harvard.edu/rtc/r-prog
It covers- Introduction to R language, Creating, Exploring data with Various Data Structures e.g. Vector, Array, Matrices, and Factors. Using Methods with examples.
Attached here is a presentation that I made covering some bits and pieces of what I got to discover about Data Science and Machine Learning using R Programming Language.
R is a programming language and environment commonly used in statistical computing, data analytics and scientific research.
It is one of the most popular languages used by statisticians, data analysts, researchers and marketers to retrieve, clean, analyze, visualize and present data.
Due to its expressive syntax and easy-to-use interface, it has grown in popularity in recent years.
Is it easier to add functional programming features to a query language, or to add query capabilities to a functional language? In Morel, we have done the latter.
Functional and query languages have much in common, and yet much to learn from each other. Functional languages have a rich type system that includes polymorphism and functions-as-values and Turing-complete expressiveness; query languages have optimization techniques that can make programs several orders of magnitude faster, and runtimes that can use thousands of nodes to execute queries over terabytes of data.
Morel is an implementation of Standard ML on the JVM, with language extensions to allow relational expressions. Its compiler can translate programs to relational algebra and, via Apache Calcite’s query optimizer, run those programs on relational backends.
In this talk, we describe the principles that drove Morel’s design, the problems that we had to solve in order to implement a hybrid functional/relational language, and how Morel can be applied to implement data-intensive systems.
(A talk given by Julian Hyde at Strange Loop 2021, St. Louis, MO, on October 1st, 2021.)
Overview of a few ways to group and summarize data in R using sample airfare data from DOT/BTS's O&D Survey.
Starts with naive approach with subset() & loops, shows base R's tapply() & aggregate(), highlights doBy and plyr packages.
Presented at the March 2011 meeting of the Greater Boston useR Group.
Best corporate-r-programming-training-in-mumbaiUnmesh Baile
Vibrant Technologies is headquarted in Mumbai,India.We are the best Teradata training provider in Navi Mumbai who provides Live Projects to students.We provide Corporate Training also.We are Best Teradata Database classes in Mumbai according to our students and corporates
This presentation educated you about R - Factors with example syntax and demo program of Factors in Data Frame, Changing the Order of Levels and Generating Factor Levels.
For more topics stay tuned with Learnbay.
An Interactive Introduction To R (Programming Language For Statistics)Dataspora
This is an interactive introduction to R.
R is an open source language for statistical computing, data analysis, and graphical visualization.
While most commonly used within academia, in fields such as computational biology and applied statistics, it is gaining currency in industry as well – both Facebook and Google use R within their firms.
Attached here is a presentation that I made covering some bits and pieces of what I got to discover about Data Science and Machine Learning using R Programming Language.
R is a programming language and environment commonly used in statistical computing, data analytics and scientific research.
It is one of the most popular languages used by statisticians, data analysts, researchers and marketers to retrieve, clean, analyze, visualize and present data.
Due to its expressive syntax and easy-to-use interface, it has grown in popularity in recent years.
Is it easier to add functional programming features to a query language, or to add query capabilities to a functional language? In Morel, we have done the latter.
Functional and query languages have much in common, and yet much to learn from each other. Functional languages have a rich type system that includes polymorphism and functions-as-values and Turing-complete expressiveness; query languages have optimization techniques that can make programs several orders of magnitude faster, and runtimes that can use thousands of nodes to execute queries over terabytes of data.
Morel is an implementation of Standard ML on the JVM, with language extensions to allow relational expressions. Its compiler can translate programs to relational algebra and, via Apache Calcite’s query optimizer, run those programs on relational backends.
In this talk, we describe the principles that drove Morel’s design, the problems that we had to solve in order to implement a hybrid functional/relational language, and how Morel can be applied to implement data-intensive systems.
(A talk given by Julian Hyde at Strange Loop 2021, St. Louis, MO, on October 1st, 2021.)
Overview of a few ways to group and summarize data in R using sample airfare data from DOT/BTS's O&D Survey.
Starts with naive approach with subset() & loops, shows base R's tapply() & aggregate(), highlights doBy and plyr packages.
Presented at the March 2011 meeting of the Greater Boston useR Group.
Best corporate-r-programming-training-in-mumbaiUnmesh Baile
Vibrant Technologies is headquarted in Mumbai,India.We are the best Teradata training provider in Navi Mumbai who provides Live Projects to students.We provide Corporate Training also.We are Best Teradata Database classes in Mumbai according to our students and corporates
This presentation educated you about R - Factors with example syntax and demo program of Factors in Data Frame, Changing the Order of Levels and Generating Factor Levels.
For more topics stay tuned with Learnbay.
An Interactive Introduction To R (Programming Language For Statistics)Dataspora
This is an interactive introduction to R.
R is an open source language for statistical computing, data analysis, and graphical visualization.
While most commonly used within academia, in fields such as computational biology and applied statistics, it is gaining currency in industry as well – both Facebook and Google use R within their firms.
Simple Business Model Classification System: Business Model Pipes, Valleys, a...Rod King, Ph.D.
"There are three business model shapes in every industry on the planet." Rod King
***
Millions of businesses and myriad business models exist in the world. However, every business or business model has one of three business model shapes: pipe, valley, or diamond. The graphic above presents a simple business model classification system that is based on the three shapes of business models: pipes, valleys, and diamonds. Every business model platform has the shape of either a valley or a diamond.
Introduction to the R Statistical Computing Environmentizahn
Get an introduction to R, the open-source system for statistical computation and graphics. With hands-on exercises, learn how to import and manage datasets, create R objects, and conduct basic statistical analyses. Full workshop materials can be downloaded from http://projects.iq.harvard.edu/rtc/event/introduction-r
Presentation on R programming. Topics covered are: Manage your Workspace
Data types
Fiddle with Data Types
Lists Vs Vectors
R as calculator!!!
Decision making statements, looping, functions
Interact with R!!!
Visualization!!!
Time for U!!!
Clustering
Regression (with curve fitting)
statistical computation using R- an intro..Kamarudheen KV
This presentation deals with some basics of R language. It is very useful for benners in R. It describes the basics in a very easy manner, so those who are not familiar with R it would be very helpful.
“Practical Data Science”. R programming language and Jupiter notebooks are used in this tutorial. However, the concepts are generic and can be applied for Python or other programming language users as well.
this presentation is an introduction to R programming language.we will talk about usage, history, data structure and feathers of R programming language.
This 10 hours class is intended to give students the basis to empirically solve statistical problems. Talk 1 serves as an introduction to the statistical software R, and presents how to calculate basic measures such as mean, variance, correlation and gini index. Talk 2 shows how the central limit theorem and the law of the large numbers work empirically. Talk 3 presents the point estimate, the confidence interval and the hypothesis test for the most important parameters. Talk 4 introduces to the linear regression model and Talk 5 to the bootstrap world. Talk 5 also presents an easy example of a markov chains.
All the talks are supported by script codes, in R language.
These are the outline slides that I used for the Pune Clojure Course.
The slides may not be much useful standalone, but I have uploaded them for reference.
A high level introduction to R statistical programming language that was presented at the Chicago Data Visualization Group's Graphing in R and ggplot2 workshop on October 8, 2012.
#LibreOffice is a #free and powerful #officesuite, and a successor to #OpenOffice.org (commonly known as #OpenOffice).
Its clean interface and feature-rich tools help you unleash your #creativity and enhance your #productivity. #LibreOffice includes several applications that make it the most versatile #Free and #OpenSource office suite on the market: #Writer (#wordprocessing), Calc (#spreadsheets), Impress (presentations), #Draw (vector graphics and #flowcharts), Base (#databases), and #Math (#formula editing).
#LibreOffice is #community-driven and #developed #software, and is a project of the #nonprofit #organization, The #Document #Foundation. #LibreOffice is free and #opensource software, originally based on #OpenOffice.org (commonly known as OpenOffice), and is the most actively developed OpenOffice.org successor project.
#LibreOffice is developed by users who, just like you, believe in the principles of #FreeSoftware and in sharing their work with the world in non-restrictive ways.
This office suite can easily replace costly paid option available. If you need a good office suite which is easily and freely available you can for sure give a try and.
It has following features/components for making your work easy and cost free and vendor independent:
Writer – word processor
Calc – spreadsheet
Impress – presentations
Draw – diagrams
Base – database
Math – formula editor
Charts
Better #collaboration
#Sharingdocuments and edits with other users have been enhanced and well tracked, to make modifications more clear.
Work faster in Calc
Working with #Spreadsheet has the new #Bash-like autocompletion feature helps you to input data in a snap.
#Barcodes and borders
We can now insert #barcodes into your #documents with just a few clicks
For Full information about the release you can visit if your are interested.
https://wiki.documentfoundation.org/ReleaseNotes/7.3
If you need any help you can reach out here
https://twitter.com/libreoffice
https://blog.documentfoundation.org/
https://www.facebook.com/libreoffice.org
https://twitter.com/AskLibreOffice
What Next :
#LibreOffice 7.4 – is next major release in August, you can try installing and test it and help the developers to find if any bug or issue or need any improvement.
Let's install and explore.
We will now install it in #Ubuntu and explore this a bit
#SystemArchitecture Series: #Kerberos Architecture Component and communication flow #architecture
#Kerberos is a ticketing-based #authentication #system, based on the use of #symmetric keys. #Kerberos uses tickets to provide #authentication to resources instead of #passwords. This eliminates the threat of #password stealing via #networksniffing. One of the biggest benefits of #Kerberos is its ability to provide single sign-on (#SSO). Once you log into your #Kerberos environment, you will be automatically logged into other applications in the environment.
To help provide a secure environment, #Kerberos makes use of Mutual #Authentication. In Mutual #Authentication, both the #server and the #client must be authenticated. The client knows that the server can be trusted, and the server knows that the client can be trusted. This #authentication helps prevent man-in-the-middle attacks and #spoofing. #Kerberos is also time sensitive. The tickets in a #Kerberosenvironment must be renewed periodically or they will expire.
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
2. Background
• 1991: Created by Ross Ihaka and Robert Gentleman
• 2000: R version 1.0.0 is released
• Latest version is 2.15.2 released in Oct „12
• R version 2.15.3 is scheduled to release in Mar „12
and 3.0.0 is scheduled to be released in Apr ‟13
• http://www.r-project.org (basic information about R)
• http://www.cran.r-project.org (base system and
additional packages)
• help() or ?help, help.search() or ??help
3. Background
• R is a free software environment for
statistical computing and graphics
• Very active and vibrant user community
• Graphical capabilities
• Physical memory
• Base R and around 4000 packages
1/21/2014
4. Introduction
memory.limit(): To find out maximum amount of available
physical memory
memory.size(): To find out how much memory is in use
getwd(): Shows the path of your current working directory
setwd(path): Allows you to set a new path for your current
working directory
dir(): List down all the files in your working directory
Program Editor (open, load, run, save)
• ls(): List all objects in your workspace
• rm(): Removes object from your workspace
5. Introduction
Commands to R are expressions (4/3) or assignments (x <- 4/3)
R is case sensitive
Everything in R is a object
Normally R objects are accessed by their names which is made up from letters,
and digits (0 to 9) or a period (“.”) in non-initial positions.
Every object has a class
R has 5 basic classes of objects
character
numeric (real numbers)
integers
complex
logical (True / False)
•
The most basic object is a vector
A vector can only contains objects of the same class
6. Background
•
Ex.
•
x <- 1 # assignment
Print(x) # explicit printing
X # auto printing
Ex.
•
Q.
•
x <- c(0.5, 0.6) # numeric
X <- c(TRUE, FALSE) # logical
X <- c(T, F) # logical
X <- c(“a”, “b”, “c”, “d”) # character
X <- 1:20 # integer
X <- c(1+0i, 2+4i) #complex
seq(from=1, to=10, by=1)
rep(c(1,2,3,4,5), times=2, each=2)
X <- c(1.7, “a”)
X <- c(TRUE, 2)
X <- c(“a”, TRUE)
When different objects are mixed in a vector, coercion occurs so that every element in the
vector is of same class
8. Introduction
• Ex.
X <- 0:6
X <- c(“a”, “b”, “c”)
X <- c(1, 2, 3)
Numbers in R generally treated as numeric (i.e. double precision
real numbers)
If you explicitly wants an integer then you need to specify L suffix
Special number Inf (1/0), it actually a real number, 1/Inf will give
you 0
Undefined value NaN (0/0) Not a Number, it can be though of as
missing value
• # indicates comments
9. Data Types
R objects can have attributes (attributes())
Class (class())
Length (length())
names (colnames for a matrix), dimnames (rownames, colnames for a matrix)
dimensions (dim())
other user defined attributes
Various data types in R
Vectors
Vector(mode, length)
•
Lists: Special type of vectors which can contain objects of different
classes.
x <- list(1,2,3,“a”,”b”,”c”)
x <- list(a=c(1,2,3), b=1:4, c=c(“a”,”b”,”c”))
10. Data Types
Matrix: vectors with dimension attribute. Dimension itself is an
integer vector of length 2 (nrow, ncol). Matrices are constructed
column wise.
m <- matrix(nrow=2, ncol=3)
m <- matrix(1:6, nrow=2, ncol=3)
x <- 1:3
y <- 10:12
cbind(x, y)
rbind(x,y)
Data frames (data.frame())
https://stat.ethz.ch/pipermail/rhelp/attachments/20101027/05a229bb/attachment.pl
Factors: Used for categorical data i.e. Male & Female or analyst,
senior analyst, manager etc.
x <- factor(c(“a”, “b”, “b”, “c”, “c”, “c”, “d”))
levels()
unclass(x)
levels([4:6])
Levels([4:6, drop=TRUE])
11. Date & Time
Converting a character variable to a date variable
as.Date(variable_name, input_format)
strptime(variable_name, input_format)
Output will be %Y-%m-%d %H:%M:%S
%Y: Year with century
%m: Month as decimal number (01-12)
%d: Day of the month as decimal number(01-31)
%H: Hrs as decimal numbers (00-23)
%M: Minutes as decimal numbers (00-59)
%S: Seconda as decimal numbers (00-59)
Converting a date variable to a character variable / formatting a date
variable
strftime(date_variable_name, output_format)
format(data_variable_name, output_format)
as.character(date_variable_name, output_format)
12. Sub-setting
[ always returns an object of the same class as the original; can be
used to select more than one element
[[ is used to extract elements of list or data frames; it can only be
used to extract single element and the class of the returned object
will not necessarily be a list or data frame
$ is used to extract elements of a list or data frames by names;
semantics are similar to [[
13. Operators
<: Less than
<=: Less than equals to
>: Greater than
>=: Greater than equals to
==: Exactly equals to
!=: Not equal to
| or II: OR
& or &&: AND
!: NOT
14. Some Examples
x <- c(“a”, “b”, “c”, “c”, “d”, “a”)
x[1], x[1:4], x[x > “a”], u <- x >”a”
x <- matrix(1:6,2,3)
x[1,2], x[1,], x[,1], x[1,2, drop=FALSE]
x <- list(var_1=c(1:10), var_2=c(“a”, “b”, “c”), var_3=0.6)
x[1], x[[1]], x$var_1
name <- “var_1”, x[name], x[[name]], x$name
x[c(1,3)], x[[c(1,3)]], x[[1]][[3]]
Produce a character vector containing var_1, var_2, var_3… var_999
Remove missing values from x <- c(1, 2, 3, NA, 4, 5, NA, 6)
y <- c(“a”, “b”, NA, NA, “c”, “d”, “e”, “f”), prepare a matrix containing
two columns x & y and does not have any missing value
What is the sum & mean of Wind for the observations which has
temperature greater then 60 & month equals to 5
How to create a new directory with a given name
15. Reading / Writing Data Set
Principle functions for reading data into R
read.table(), read.csv(): Used for reading tabular data
readLines(): For reading lines of a text file
source(): For reading in R code file
dget(): For reading in R code file
load(): For reading in saved workspaces
unserialize(): For reading single R objects in binary form
•
Principle functions for writing data to files
write.table()
writeLines()
dump()
dput()
save()
serialize()
16. Importing / Exporting Data
Read.table() is one of the most commonly used function for reading data.
Few important arguments;
file, name of the file to be read,
header, logical indicating if the file has a header line
sep, a string indicating how the columns are separated
colClasses, a character vector indicating class of each column in the dataset
nrows, the maximum number of rows to be read in the dataset
na.strings, a character vector of strings which are to be interpreted as NA values
comment.char, a character string indicating the comment character
skip, number of lines to skip from beginning
stringAsFactors, logical indicating should character variables be codes as factors
Write.table()
X, the object to be written, preferable a matrix or a data frame
File, path and name of the file to be created
Sep, a string indicating how the columns are separated
Row.names, col.names, logical indicating whether the row names or col names to be
written along with x
17. Data Summary / Manipulation
attach(x): For attaching a file
detach(x): For detaching a file
•
summary(x): For displaying summary statistics of a data set
•
str(x): For displaying summary statistics of a data set in a different
manner then summary()
•
sort(): For sorting a vector or factor
•
order(): For ordering along more than one variable
•
merge(): Merge two data frames by common columns or row names, or
do other versions of database join operations
•
cut(x, breaks, labels): Divides the range of x into intervals and codes
the values in x according to which interval they fall. The leftmost
interval corresponds to level one, the next leftmost to level two and
so on.
cut(x, 10, 1:10)
18. Data Summary / Manipulation
•
pretty(x, n): Compute a sequence of about n+1 equally spaced „round‟
values which cover the range of the values in x.
pretty(x, 100)
•
substr(x, start, stop) <- value: Extract or replace substrings in a
character vector.
•
strsplit(): Split the elements of a character vector x into substrings
according to the matches to substring split within them.
•
rank(): Returns the sample ranks of the values in a vector. Ties (i.e.,
equal values) and missing values can be handled in several ways
•
aggregate(): Splits the data into subsets, computes summary statistics
for each, and returns the result in a convenient form.
ddply(): For each subset of a data frame, apply function then combine
results into a data frame.
19. Control Structures
Allows you to control the flow of execution of the program
if, else (testing a condition)
if (condition) {do something} else if {do something different} else {do something
different}
for (executing a loop fixed number of times)
for (i in 1:10) { do something}
while (executing a loop while a condition is true)
while (condition) { do something}
repeat (execute a infinite loop)
break (break the execution of a loop)
next (skip a iteration of a loop)
return (exit a function)
Create a vector with all integers from 1 to 1000 and replace all even
number by their inverse
20. Loop Functions
lapply: Returns a list of the same length as X, each element of which
is the result of applying FUN to the corresponding element of X
lapply(airquality, mean)
Calculate sum of all the variables of the airquality dataset excluding NAs
sapply: Sapply is a user-friendly version of lapply by default returning
a vector or matrix if appropriate
sapply(airquality, mean)
Repeat the problem present in lapply using sapply and see the difference
apply: Returns a vector or array or list of values obtained by applying
a function to margins of an array or matrix
apply(airquality, 1, sum)
Calculate deciles including min and max of all the variables of the dataset
airquality excluding NAs
Calculate square of each element of a matrix with dimensions 10 & 2 and
entries 1 to 20
21. Loop Functions
tapply: Apply a function to each cell of a ragged array, that is to
each (non-empty) group of values given by a unique combination of
the levels of certain factors
tapply(airquality$Ozone, aiqruality$Month, sum)
Calculate sum of Ozone variable for observations having month equals
to 5
mapply: mapply is a multivariate version of sapply. mapply applies
FUN to the first elements of each argument, the second elements,
the third elements, and so on
mapply(rep, 1:4, 4:1)
Calculate sum of two lists with dimensions 10 & 2 and having entries 1
to 20, 101 to 120, 201 to 220 & 301 to 320
22. Plotting Functions
plot(x,y)
hist(x)
par()
pch: plotting symbol
lty: line type
lwd: line width
col: plotting color
las: axis label orientation
bg: background color
mar: margin size
oma: outer margin size
mfrow: number of plots per row, column (plots are filled row-wise)
mfcol: number of plots per row, column (plots are filled column-wise)
23. Plotting Functions
lines: add lines to the plot
points: add points to the plot
text: add text labels to the plot
title: add annotations to x, y axis labels, title, subtitle, outer
margin
mtext: add text to the margins of the plot
axis: adding axis ticks/labels
24. Functions
function ()
Exact match –> Partial match –> Positional match
Return value of a function is the last expression in the function body
to be evaluated
Functions can be nested, so that a function can be defined inside
another function
Functions can be passed as arguments to other functions
25. Debugging
• Primary tools for debugging functions in R
traceback: prints out the function call stack after an error occurs; does
nothing if there is no error
debug: flags a function for debug mode which allows you to step through
execution of a function one line at a time
browser: suspends the execution of a function whenever it is called and
puts the function in debug mode
trace: allows you to insert debugging code into a function at specific
places
recover: allows you to modify the error behavior so that you can browse
the function call stack
26. Debugging
Indications that something‟s is not right
message: a generic notification/diagnostic message produced by the
message function; execution of the function continues
warning: an indication that something is wrong but not necessarily
fatal produced by warning function‟ execution of the function
continues
error: an indication that a fatal problem has occurred produced by
stop function; execution stops
condition: a generic concept for indicating that something
unexpected can occur; programmers can create their own conditions