#vectors vec.a = c(2,3,4,5,6,7,8,9,10,11,12,13,14,15) vec.a = c(2:15) vec.a = as.numeric(c("-.01"," 2.5 ","C")) vec.a = seq(2,15,by=1) vec.a = c(a, b, c, d) #matrices vec1 = c(2,3,4,5,6,7,8,9,10,11,12,13,14,15) vec2 = c(as.numeric(22:35)) vec3 = seq(42,55,by=1) vecb = c("aa", "bb", "cc", "dd", "ee", " ", "gg", "hh","ii", "jj", "kk", "ll","mm","nn") matr1 = cbind(vec1, vec2, vec3) matr2 = rbind(vec1, vec2, vec3) matr3 = cbind(vec1, vec2, vec3, vecb) matr4 = matrix(vecb,7,2) matr5=matrix(vec1,ncol=2,byrow=TRUE) #if statement x=c(2,7,1,8,9) med=function(x) {odd=length(x)%% 2 if (odd==0) {med=(sort(x)[length(x)/2]+sort(x)[1+length(x)/2])/2} else med=sort(x)[ceiling(length(x)/2)] med } med(x) m #ifelse statement y=log(c(3,0.5,2,4)) ifelse(y<0,NA,y) #for loop factorial x=4 fac=function(x){ f=1 if (x<2) {f=1} else {for (i in 2:x) f=f*i } return (f) } fac(4) #for loops for (i in 1:2) print(i) for (i in (1:4)-2) print(i) library(MASS) data(phones) for(var in names(phones)) print(var) for(func in c(sin,cos)) print(func(pi)) #leaving the loop:stop a = 1:10 b = NULL for (i in seq(along=a)) { if (a[i]<5 || a[i]>8) { b = c(b,a[i]) } else { stop("values need to be <5") } } b #breaking the loop:break rm(b) a = 1:10 b = NULL for (i in seq(along=a)) { if (a[i]<5 || a[i]>8) { b = c(b,a[i])} else {break("values of a need to be <5")}} b #breaking the loop:next rm(b) a = 1:10 b = NULL for (i in seq(along=a)) { if (a[i]<5 || a[i]>8) { b = c(b,a[i])} else { next}} b #other loops:while x=4 f=1 t=x while (t > 1){ f=f*t t=t-1 } f #other loops:repeat x=4 f=1 t=x repeat { if (t < 2) break f=f*t t=t-1 } f #apply matrix = matrix(c(1:10, 11:20), nrow = 10, ncol = 2) apply(matrix, 1, mean) apply(matrix, 2, mean) apply(matrix, 1:2, function(x) x*2)