Dept. of Bioenvironmental Systems Eng. National Taiwan University

Slides:



Advertisements
Similar presentations
1 A B C
Advertisements

Computer Graphics: 2D Transformations
Simplifications of Context-Free Grammars
Variations of the Turing Machine
PDAs Accept Context-Free Languages
AP STUDY SESSION 2.
1
STATISTICS Joint and Conditional Distributions
STATISTICS Linear Statistical Models
An Introduction to R Prof. Ke-Sheng Cheng Dept. of Bioenvironmental Systems Eng. National Taiwan University.
STATISTICS Random Variables and Probability Distributions
STATISTICS HYPOTHESES TEST (I)
STATISTICS INTERVAL ESTIMATION Professor Ke-Sheng Cheng Department of Bioenvironmental Systems Engineering National Taiwan University.
STATISTICS POINT ESTIMATION Professor Ke-Sheng Cheng Department of Bioenvironmental Systems Engineering National Taiwan University.
An Introduction to R Prof. Ke-Sheng Cheng Dept. of Bioenvironmental Systems Eng. National Taiwan University.
STATISTICS Univariate Distributions
STATISTICS Random Variables and Distribution Functions
David Burdett May 11, 2004 Package Binding for WS CDL.
Prepared by: Workforce Enterprise Services For: The Illinois Department of Commerce and Economic Opportunity Bureau of Workforce Development ENTRY OF EMPLOYER.
CALENDAR.
Introduction to R Brody Sandel. Topics Approaching your analysis Basic structure of R Basic programming Plotting Spatial data.
The 5S numbers game..
1.
Break Time Remaining 10:00.
Factoring Quadratics — ax² + bx + c Topic
Turing Machines.
PP Test Review Sections 6-1 to 6-6
Chapter 10: Applications of Arrays and the class vector
1 IMDS Tutorial Integrated Microarray Database System.
Briana B. Morrison Adapted from William Collins
Outline Minimum Spanning Tree Maximal Flow Algorithm LP formulation 1.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 24.1 Test-Driving the Ticket Information Application.
Operating Systems Operating Systems - Winter 2010 Chapter 3 – Input/Output Vrije Universiteit Amsterdam.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
 Copyright I/O International, 2013 Visit us at: A Feature Within from Item Class User Friendly Maintenance  Copyright.
Chapter 1: Expressions, Equations, & Inequalities
Lilian Blot PART III: ITERATIONS Core Elements Autumn 2012 TPOP 1.
Adding Up In Chunks.
FAFSA on the Web Preview Presentation December 2013.
MaK_Full ahead loaded 1 Alarm Page Directory (F11)
Artificial Intelligence
Slide R - 1 Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Prentice Hall Active Learning Lecture Slides For use with Classroom Response.
12 October, 2014 St Joseph's College ADVANCED HIGHER REVISION 1 ADVANCED HIGHER MATHS REVISION AND FORMULAE UNIT 2.
: 3 00.
5 minutes.
1 hi at no doifpi me be go we of at be do go hi if me no of pi we Inorder Traversal Inorder traversal. n Visit the left subtree. n Visit the node. n Visit.
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
Types of selection structures
1 Titre de la diapositive SDMO Industries – Training Département MICS KERYS 09- MICS KERYS – WEBSITE.
12 System of Linear Equations Case Study
Converting a Fraction to %
Numerical Analysis 1 EE, NCKU Tien-Hao Chang (Darby Chang)
CSE20 Lecture 15 Karnaugh Maps Professor CK Cheng CSE Dept. UC San Diego 1.
Clock will move after 1 minute
Chapter 11 Creating Framed Layouts Principles of Web Design, 4 th Edition.
Physics for Scientists & Engineers, 3rd Edition
Select a time to count down from the clock above
Copyright Tim Morris/St Stephen's School
1.step PMIT start + initial project data input Concept Concept.
9. Two Functions of Two Random Variables
Page 1 Orchard Harvest ™ LIS Find a Patient Training.
1 Decidability continued…. 2 Theorem: For a recursively enumerable language it is undecidable to determine whether is finite Proof: We will reduce the.
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
Piotr Wolski Introduction to R. Topics What is R? Sample session How to install R? Minimum you have to know to work in R Data objects in R and how to.
An Introduction to R Prof. Ke-Sheng Cheng Dept. of Bioenvironmental Systems Engineering National Taiwan University References: 1. Venables, W.N., Smith,
An Introduction to R Prof. Ke-Sheng Cheng
An Introduction to R Prof. Ke-Sheng Cheng
Presentation transcript:

Dept. of Bioenvironmental Systems Eng. National Taiwan University An Introduction to R Prof. Ke-Sheng Cheng Dept. of Bioenvironmental Systems Eng. National Taiwan University

The R-project R is a free software. (www.r-project.org) The S language. S-Plus (a commercial software) R is an integrated software environment for data manipulation, calculation and graphical display. An efficient data handling and storage facility, A suite of operators for calculations on arrays, in particular matrices, A large, coherent, integrated collection of intermediate tools for data analysis, 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Graphical facilities for data analysis and display either directly at the computer or on hardcopy, A well developed, simple and effective programming language which includes conditionals, loops, user defined recursive functions and input and output facilities. R packages (CRAN) Standard packages Other packages available at the Comprehensive R Archive Network (CRAN) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Downloading and Installing R http://www.r-project.org/ 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Starting an R session 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Working Environment of R The working environment of R can be illustrated by the following graph: Directory 1 Directory 2 Workspace Temporary memory Working Directory 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Running R When you first start running R the default prompt is the “>” sign. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Working directory In using R, you need to know and specify the working directory.This is done by clicking the Change dir button. One can specify different working directories for different projects. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Getting help >help(…) and >help.search(“….”) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Executing commands from an external file R commands can be stored in an external file (for example, ksc.r) in the working directory. These commands can then be executed with the source command: > source (“ksc.r”) or 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Open and run an existing file 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Objects and Workspace The entities that R creates and manipulates are known as objects. These may be variables, arrays of numbers, character strings, functions, or more general structures built from such components. During an R session, objects are created and stored by name. The R command > objects() (alternatively, ls()) can be used to display the names of (most of) the objects which are currently stored within R. The collection of objects currently stored is called the workspace. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Data permanency and removing objects To remove objects the function rm is available: > rm(x, y, z, ink, junk, temp, foo, bar) All objects created during an R sessions can be stored permanently in a file for use in future R sessions. At the end of each R session you are given the opportunity to save all the currently available objects. If you indicate that you want to do this, the objects are written to a file called ‘.RData’ in the current directory, and the command lines used in the session are saved to a file called ‘.Rhistory’. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Remove all objects in the workspace Clear the screen When R is started at later time from the same directory it reloads the workspace from this file (.RData). At the same time the associated commands history is reloaded. Remove all objects in the workspace rm(list=ls()) Clear the screen Ctrl l 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Reading data from files The read.table() function 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The read.csv() function The scan() function The read.csv() function 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Output data to files write, write.table, write.csv write(x,”output.txt”,ncolumns=10,append=TRUE,sep="\t") write(round(x,digits=2),”output.txt”,ncolumns=10,append=TRUE,sep="\t") 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Objects, their modes and attributes Intrinsic attributes: mode and length The entities R operates on are technically known as objects. Examples are vectors of numeric (real) or complex values, vectors of logical values and vectors of character strings. These vectors are known as “atomic” structures since their components are all of the same type, or mode, namely numeric, complex, logical, character and raw. By the mode of an object we mean the basic type of its fundamental constituents. This is a special case of a “property” of an object. Another property of every object is its length. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Atomic structures of R Vectors must have their values all of the same mode. Thus any given vector must be unambiguously either logical, numeric, complex, character or raw. (The only apparent exception to this rule is the special “value” listed as NA for quantities not available, but in fact there are several types of NA). Note that a vector can be empty and still have a mode. For example the empty character string vector is listed as character(0) and the empty numeric vector as numeric(0). 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Recursive structures of R R also operates on objects called lists, which are of mode list. These are ordered sequences of objects which individually can be of any mode. lists are known as “recursive” rather than atomic structures since their components can themselves be lists in their own right. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Expressions are objects which form an advanced part of R. The other recursive structures are those of mode function and expression. Functions are the objects that form part of the R system along with similar user written functions. Expressions are objects which form an advanced part of R. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

An example of using function # AR2_Bootstrap.R # Coded by KSC 08232011 at the University of Bristol ------------- # AR modeling of the flow data series x=read.csv("Nine_flow_events.csv",sep=",") n.event=9 n.bt=1000 # number of bootstrap samples alpha1=c();alpha2=c();alpha3=c();alpha0=c() predct=c() par.ar=matrix(rep(0,n.event*4),ncol=4,nrow=n.event) file.name=paste("event",1:n.event,".txt",sep="") bt.name=paste("bootstrap",1:n.event,".txt",sep="") #------------------------------------------------------------------ # Function -- AR(2) Forecasting forecast=function(obs,par1,par2,par3,predct) { L=length(obs) u1=0;u2=0 obs=c(u1,u2,obs) for (i in 1:L) predct[i]=par3+par1*obs[i+1]+par2*obs[i] err=obs[3:(L+2)]-predct out=c(predct,err) return(out) } 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

# AR(2) Modeling, forecasting and bootstrapping of individual series for (i in 1:n.event) { event=x[[i]][!is.na(x[i])] # AR(2) Modeling ------------ windows() pacf(event) ar.event=arima(event,order=c(2,0,0)) alpha1[i]=ar.event[[1]][1] alpha2[i]=ar.event[[1]][2] alpha3[i]=ar.event[[1]][3] alpha0[i]=(1-alpha1[i]-alpha2[i])*alpha3[i] par.ar[i,]=c(alpha0[i],alpha1[i],alpha2[i],alpha3[i]) # # AR(2) Forecasting --------- out.4cast=forecast(event,alpha1[i],alpha2[i],alpha0[i],predct) err=out.4cast[(length(event)+1):(2*length(event))] err.star=err-mean(err) write(event,file.name[i],ncolumns=10,append=TRUE,sep="\t") write(out.4cast[1:length(event)],file.name[i],ncolumns=10,append=TRUE,sep="\t") write(err,file.name[i],ncolumns=10,append=TRUE,sep="\t") 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

# Model-based Time Series Bootstrapping -------------- btsample=matrix(rep(0,n.bt*(2+length(err))),nrow=n.bt,ncol=2+length(err)) for (j in 1:n.bt) { epsilon=sample(err.star,size=length(err),replace=TRUE) for (k in 3:(2+length(err))) btsample[j,k]=alpha0[i]+alpha1[i]*btsample[j,k-1]+alpha2[i]*btsample[j,k-2]+epsilon[k-2] } write(btsample[j,3:(2+length(err))],bt.name[i],ncolumns=10,append=TRUE,sep="\t") } # # Plot observed and bootstrap sample series windows() z=scan(bt.name[i],sep="\t") plot(0,0,type="n",xlim=c(0,length(event)),ylim=c(min(z),max(z))) dim(z)=c(length(event),n.bt) for (j in 1:n.bt) lines(1:length(event),z[,j],type="l") lines(1:length(event),event,type="l",col="red",lwd=3) par.ar 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

An example using function ecdf # ECDF_Plot.R # Coded by KSC 09242011 ----------------- n.sample=9 # Number of samples in.file=paste("CECP",1:n.sample,".txt",sep="") windows() plot(0,0,type="n",xlim=c(-1,1),ylim=c(0,1)) for (i in 1:n.sample) { x=scan(in.file[i],sep="\t") n.L=length(x) x1=x[1:(n.L/2)] x2=x[(1+(n.L/2)):n.L] x1.ecdf=ecdf(x1);x2.ecdf=ecdf(x2) u=seq(-1,1,by=0.005);v=x1.ecdf(u) lines(u,v,type="l",col=i,lwd=3) v1=round(mean(x1),digits=4) v2=round(sqrt(var(x1)),digits=4) v3=round(mean(x2),digits=4) v4=round(sqrt(var(x2)),digits=4) print(c(v1,v2,v3,v4)) } 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The functions mode(object) and length(object) can be used to find out the mode and length of any defined structure. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Changing the mode of an object as.character(x) as.integer(x) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Changing the length of an object An “empty” object may still have a mode. For example makes e an empty vector structure of mode numeric. Once an object of any size has been created, new components may be added to it simply by giving it an index value outside its previous range. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Other examples 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The class of an object All objects in R have a class, reported by the function class. For simple vectors this is just the mode, for example "numeric", "logical", "character" or "list", but "matrix", "array", "factor" and "data.frame" are other possible values. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

What is an object? Any entity R operates on is an object. Vector Matrix Array Dataframe List Function Expression Mode of objects Numeric Complex Character Factor Logical Data.frame

Manipulating objects Vector assignment concatenate 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

If an expression is used as a complete command, the value is printed and lost. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Vector arithmetic Vectors can be used in arithmetic expressions, in which case the operations are performed element by element. Vectors occurring in the same expression need not all be of the same length. If they are not, the value of the expression is a vector with the same length as the longest vector which occurs in the expression. Shorter vectors in the expression are recycled as often as need be (perhaps fractionally) until they match the length of the longest vector. In particular a constant is simply repeated. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Arithmetic operations +, -, * , / , ^ (power), round, floor, ceiling Example Arithmetic operations +, -, * , / , ^ (power), round, floor, ceiling Arithmetic functions log, exp, sin, cos, tan, sqrt, abs 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Statistical functions min, max, range, length, sum, mean, median quantile, var, prod, smmary sort, order, rank 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Sort y with respect to increasing order of x. Same as sort(x) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Logical vectors As well as numerical vectors, R allows manipulation of logical quantities. The elements of a logical vector can have the values TRUE, FALSE, and NA (for “not available”). Logical vectors are generated by conditions. The logical operators are <, <=, >, >=, == for exact equality and != for inequality. In addition if c1 and c2 are logical expressions, then c1 & c2 is their intersection (“and”), c1 | c2 is their union (“or”), and !c1 is the negation of c1. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Example Why? 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Missing values NA – not available NaN – not a number The function is.na(x) gives a logical vector of the same size as x with value TRUE if and only if the corresponding element in x is NA and NaN. The finction is.nan(x) returns TRUE if and only if the corresponding element is NaN. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Removing the missing values 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Character vectors Character vectors are used frequently in R, for example as plot labels. Where needed they are denoted by a sequence of characters delimited by the double quote character, e.g., "x-values", "New iteration results". The paste() function takes an arbitrary number of arguments and concatenates them one by one into character strings. Any numbers given among the arguments are coerced into character strings in the evident way, that is, in the same way they would be if they were printed. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The arguments are by default separated in the result by a single blank character, but this can be changed by the named parameter, sep=string, which changes it to string, possibly empty. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Set operations union(x, y) intersect(x, y) setdiff(x, y) is.element(el, set) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Selecting and modifying subsets of an object using index vectors Subsets of a vector may be selected by appending to the name of the vector an index vector in square brackets, v[i]. Such index vectors can be any of four distinct types: A logical vector 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

A vector of positive integer quantities A vector of negative integer quantities Such an index vector specifies the values to be excluded rather than included. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

A vector of character strings A vector of character strings. This possibility only applies where an object has a names attribute to identify its components. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

An indexed expression can also appear on the receiving end of an assignment, in which case the assignment operation is performed only on those elements of the vector. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Arrays and Matrices An array can be considered as a multiply subscripted collection of data entries. A dimension vector is a vector of non-negative integers. If its length is k then the array is k-dimensional, e.g. a matrix is a 2-dimensional array. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

A vector can be used by R as an array only if it has a dimension vector as its dim attribute. Suppose, for example, z is a vector of 1500 elements. The assignment > dim(z) = c(3,5,100) gives it the dim attribute that allows it to be treated as a 3 by 5 by 100 array. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Creating a matrix Using dim Using matrix 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The values in the data vector give the values in the array in the same order as they would occur in FORTRAN, that is “column major order,” with the first subscript moving fastest and the last subscript slowest. For example if the dimension vector for an array, say a, is c(3,4,2) then there are 24 entries in a and the data vector holds them in the order a[1,1,1], a[2,1,1], ..., a[2,4,2], a[3,4,2]. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Array indexing Subsections of an array Individual elements of an array may be referenced by giving the name of the array followed by the subscripts in square brackets, separated by commas. More generally, subsections of an array may be specified by giving a sequence of index vectors in place of subscripts; however if any index position is given an empty index vector, then the full range of that subscript is taken. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Index matrices 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

List An R list is an object consisting of an ordered collection of objects known as its components. There is no particular need for the components to be of the same mode or type, and, for example, a list could consist of a numeric vector, a logical value, a matrix, a complex vector, a character array, a function, and so on. If Lst is a list, then the function length(Lst) gives the number of (top level) components it has. New lists may be formed from existing objects by the function list(). > Lst <- list(name_1=object_1, ..., name_m=object_m) 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Example of a list object They are different. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

x=read.csv("20110823_Flow_Series.csv",sep=",") n.event=3 event.comb=c() for (i in 1:n.event) event.comb=c(event.comb,x[[i]][!is.na(x[i])]) # combining all events into one series. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Empirical CDF, edcf 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The ecdf in R is a function. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Random number generation in R R commands for stochastic simulation (for normal distribution pnorm – cumulative probability qnorm – quantile function rnorm – generating a random sample of a specific sample size dnorm – probability density function For other distributions, simply change the distribution names. For examples, (punif, qunif, runif, and dunif) for uniform distribution and (ppois, qpois, rpois, and dpois) for Poisson distribution. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Approximation of the Poisson distribution by normal distribution Demonstration using stochastic simulation Using R . Estimated by normal approximation of Poisson distribution 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Poisson CDF by stochastic simulation Estimated by stochastic simulation of Poisson distribution Poisson CDF by stochastic simulation Direct calculation using theoretical CDF of Poisson distribution. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Approximation by normal distribution Poisson CDF by stochastic simulation 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Random experiment Using the “sample” function in R “sample” takes a sample of the specified size from the elements of x using either with or without replacement. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

Sample quantiles 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

The boxplot in R boxplot(x,range=0) boxplot(x) [Default, range=1.5] The parameter range determines how far the plot whiskers extend out from the box. If range is positive, the whiskers extend to the most extreme data point which is no more than range times the interquartile range from the box. A value of zero causes the whiskers to extend to the data extremes. 3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.

3/27/2017 Laboratory for Remote Sensing Hydrology and Spatial Modeling, Dept of Bioenvironmental Systems Engineering, National Taiwan Univ.