(1:10) > 5 1 > 5 2 > 5 3 > 5 rep( 5, 10 ) (1:10) > rep( 5, 10 ) c( 1 , "A" ) x <- c( 1, 2, 3, "A" ) x as.numeric( x ) "1" > "5" "6" > "5" "10" > "5" "1" > "5" x <- c("cat", " dog", "mouse" ) f <- factor(c) x <- c("cat", " dog", "mouse" ) f <- factor( x ) f x == "cat" x == "dog" x == "mouse" levels(f) grade.levels <- factor( c(12, 16, 12, 7, 7, 5, 6, 5, 9, 10) ) grade.levels class( grade.levels ) mode( grade.levels ) mean( grade.levels ) mean( as.numeric( grade.levels ) ) as.numeric( grade.levels ) as.character( grade.levels ) as.numeric( as.character( grade.levels ) ) "adam" > "abram" "A" > "a" "a" > "A" "Aaron" > "abram" calcMortgage <- function( principal, years=30, APR=0.05 ) { months <- years * 12 # covert years to months int.rate <- APR / 12 # convert annual rate to monthly # amortization formula monthly.payment <- ( principal * int.rate ) / (1 - (1 + int.rate)^(-months) ) monthly.payment <- round( monthly.payment, 2 ) return( monthly.payment ) } calcMortgage( principal=100000, years=15, APR=0.03 ) calcMortgage( principal=100000, years=15, APR=0.03 ) args( calcMortgage ) calcMortgage( principal=100000 ) calcMortgage( principal=100000 ) calcMortgage( ) calcMortgage( years=30 ) calcMortgage( principal=100000, years=15, APR=0.07 ) calcMortgage( years=30 ) calcMortgage( principal=100000, years=30, APR=0.05 ) args( calcMortgage ) calcMortgage( 100000, 30, 0.05 ) calcMortgage( 100000 ) calcMortgage( years=30, principal=100000, APR=0.05 ) calcMortgage( principal=100000, years=30, APR=0.05 ) calcMortgage( 30, 100000, 0.05 ) calcMortgage( principal=100000, years=30, APR=0.05 ) calcMortgage( 100000, 30, 0.05 ) calcMortgage( 30, 0.05, principal=100000 ) args( calcMortgage ) calcMortgage( 0.05, 30, principal=100000 ) calcMortgage( principle=100000 ) calcMortgage( ) calcMortgage( prin=100000 ) calcMortgage( prin=100000, years=30, APR=0.05 ) calcMortgage( prin=100000, y=30, A=0.05 ) calcMortgage( p=100000, y=30, A=0.05 ) calcMortgage( p=100000, A=0.05, y=30 ) calcMortgage( P=100000, a=0.05, y=30 ) calcMortgage( Principal=100000, APR=0.05, y=30 ) calcMortgage( prin=c(100000,200000), APR=0.05, y=30 ) calcMortgage( principal="100000", APR=0.05, y=30 ) x <- 1:100 y <- 2*x + rnorm(100,0,10) plot( x, y, xlim=c(0,100) ) plot( x, y, xlim=c(0,100), pch=19, col="blue" ) args( plot ) plot( x=x, y=y, xlim=c(100,0), pch=19, col="blue" ) plot( x=x, y=y, xlim=100, pch=19, col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch="16", col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch="19", col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch=16, col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch=11, col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch="9", col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch="$", col="blue" ) plot( x=x, y=y, xlim=c(0,100), pch="64", col="blue" ) 16 blue x <- c(1000000,2000000) x class( x ) m <- lm( y ~ x ) m x <- 1:100 y <- 2*x + rnorm(100,0,10) m <- lm( y ~ x ) m class( m ) m class( m ) summary( m ) names( m ) plot( m ) plot( x, y ) cut(x,10) table( cut( x, 10 ) ) x <- rnorm(100) y <- 2*x + rnorm(100,0,10) plot( x ) plot( x, y ) table( cut( x, 10 ) ) hist( x ) cut(x,10) plot( x , y ) plot( y, cut(x,10) ) plot( cut(x,10), y ) plot( x, pch=19, col="blue" ) length(x) plot( sort(x), pch=19, col="blue" ) d <- data.frame(x,y) plot( d ) plot( d , pch=19, col="blue" ) ls() class( x ) class( m ) summary( x ) class( x ) summary( m ) ls() class( "calcMortgage" ) class( calcMortgage ) calcMortgage plot args( plot ) c("cat","dog","mouse") == "dog" d <- structure(list(name = structure(c(1L, 4L, 3L, 2L), .Label = c("frank", "nancy", "sanjay", "wanda"), class = "factor"), gender = structure(c(2L, 1L, 2L, 1L), .Label = c("female", "male"), class = "factor"), group = structure(c(2L, 2L, 1L, 1L), .Label = c("control", "treat"), class = "factor"), strength = c(27, 43, 19, 58)), .Names = c("name", "gender", "group", "strength"), row.names = c(NA, -4L), class = "data.frame") d d$group == "treat" & d$gender == "male" these <- d$group == "treat" these these <- d$group == "treat" & d$gender == "male" class( these ) sum( these ) these these <- d$group == "treat" & d$gender == "male" dat[ these , ] d[ these , ] these <- d$group == "treat" d[ these , ] sum( these ) mean( these ) mean( d$strength[ d$group == "treat" ] ) mean( d$strength[ d$group == "control" ] ) d.treated <- d[ d$group == "treat" , ] gender <- sample( c("male","female"), size=10, replace=TRUE ) beard <- sample( c("yes","no"), size=10, replace=TRUE ) gender beard gender[ gender == "male" ] gender == "male" gender != "male" gender[ gender != "male" ] gender == "male" ! gender == "male" gender[ ! gender == "male" ] gender[ gender != "male" ] gender[ ! gender == "male" ] x <- c("cat","dog","mouse") x[ x == "cat" ] x[ x != "cat" ] x[ ! x == "cat" ] x == "cat" gender gender = "male" gender gender[ gender = "male" ] gender <- sample( c("male","female"), size=10, replace=TRUE ) x = rnorm(100) y = 2*x + rnorm(100,0,10) plot( x=x, y=y, xlim=c(0,100), pch=16, col="blue" ) x = rnorm(100) y = 2*x + rnorm(100,0,10) plot( x=x, y=y, pch=16, col="blue" ) m <- lm( y ~ x ) x <- 1:100 x 1:100 -> x x d <- data.frame( gender, beard ) d d[ gender == "male" & beard == "yes" , ] d[ gender == "male" | beard == "yes" , ] d[ gender != "male" & beard != "yes" , ] d d[ ! gender == "male" & beard == "yes" , ] d[ gender != "male" & beard != "yes" , ] d[ ! gender == "male" & beard == "yes" , ] 6 + 4 / 2 ( 6 + 4 ) / 2 d[ ! ( gender == "male" & beard == "yes" ) , ] d[ gender != "male" & beard != "yes" , ] d[ gender != "male" & beard != "yes" , ] class(d) gender beard d[ ! ( gender == "male" & beard == "yes" ) , ] gender == "male" & beard == "yes" d[ gender == "male" & beard == "yes" , ] gender == "male" sample( x=c("goat","goat","car"), size=3, replace=F ) sample( x=c("goat","goat","car"), size=3, replace=F ) a.game <- sample( x=c("goat","goat","car"), size=3, replace=F ) create_game <- function( ) { a.game <- sample( x=c("goat","goat","car"), size=3, replace=F ) return( a.game ) } create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() create_game() sample( x=c("goat","goat","car"), size=3, replace=F ) create_game() create_game() create_game() create_game() args( sampple ) args( sample ) doors <- c(1,2,3) sample( doors, size=1 ) sample( doors, size=1 ) sample( doors, size=1 ) select_door <- function( ) { doors <- c(1,2,3) a.pick <- sample( doors, size=1 ) return( a.pick ) # number between 1 and 3 } select_door() select_door() select_door() select_door() select_door() select_door() select_door() select_door() select_door() this.game <- create_game() this.game my.initial.pick <- select_door() my.initial.pick this.game this.game my.initial.pick game <- c("car","goat","goat") a.pick <- 3 doors <- c(1,2,3) a.pick doors != a.pick doors == "goat" game game == "goat" game == "goat" doors != a.pick game == "goat" & doors != a.pick game doors[ game == "goat" & doors != a.pick ] open_goat_door <- function( game, a.pick ) { # YOUR CODE HERE... # game <- c("car","goat","goat") # a.pick <- 3 doors <- c(1,2,3) opened.door <- doors[ game == "goat" & doors != a.pick ] return( opened.door ) # number between 1 and 3 } open_goat_door( game=this.game, a.pick=my.initial.pick ) this.game my.initial.pick <- 1 open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door <- function( game, a.pick ) { # YOUR CODE HERE... # game <- c("car","goat","goat") # a.pick <- 3 doors <- c(1,2,3) possible.doors <- doors[ game == "goat" & doors != a.pick ] opened.door <- sample( possible.doors, size=1 ) return( opened.door ) # number between 1 and 3 } open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) open_goat_door( game=this.game, a.pick=my.initial.pick ) a.pick ! a.pick args( change_door ) ls()