Big Data
Second Section
Agenda
1. Accessing Data Frames with logical And\OR
2. Control Statements
3. Functions
Data Frames
▪ A group or collection of Vectors
▪ Most of the time, when data is loaded, it will be organized in a data
frame
Example:
>DF <- data.frame (h=c(150,160), w=c(65,72))
>DF
h w
1 150 65
2 160 72
Data Frames
> x <- data.frame (var1 = sample(1:5), var2 = sample(6:10), var3 = sample(11:15))
>x
> x$var2[c(1,3)] = NA
>x
Data frames using Logical And/OR
> x[x$var1 <=3 & x$var3 >11 , ]
> x[x$var1 <=3 | x$var3 >11 , ]
Control Statements
A. if ... else ...
B. for loops
C. While loop
If … else …
If … else … examples
> y <-5 > x <- 3 > z <- 0
> if (y > 0) > if (x != 4) > if (z < 0)
{"y postive"} { x <- x+4; x} {"z negative"}
else else if (z > 0)
{"z positive"}
[1] "y postive" {x}
else
{"z is zero"}
[1] 7
[1] "z is zero"
for loops
▪ Loops are used in programming to repeat a specific block of code.
▪ A for loop is used to iterate over a vector in R programming.
> x <- 0
> for (i in 1:20)
{ x <- x + i}
>x
[1] 210
While
▪ While (condition) { expr_1 }
# While condition is true, repeatedly evaluate expr_1
> x <- 0
> While (x != 60) { x <- x + 1 }
>x
[1] 60
Function Definition
function.name <- function(arg1, arg2, ...)
{ computations on the arguments and some other code }
▪ Arguments can be assigned default values: arg_name = expression
▪ Return value is the last evaluated expression or can be set explicitly
with return().
Function Examples (1)
> square <- function(x = 10) {x * x}
> square()
[1] 100
> square(2)
[1] 4
Function Examples (2)
>intsum <- function(from=1, to=10)
{ sum <- 0 ; for (i in from:to) sum <- sum + i; sum;}
> intsum() # use default values
[1] 55
> intsum(3) # Evaluates sum from 3 to 10
[1] 52
> intsum(to=3) # Evaluates sum from 1 to 3
[1] 6
Return in Functions
> intsum <- function (from=1, to=10)
{ sum <- 0 ; for (i in from:to) sum <- sum + i; return(sum); }
> intsum()
[1] 55
> s <- intsum()
>s
[1] 55
Practice
• Create a Function that takes two arguments (x, y) and returns the “X”
to the power of “Y”
• Example: Pow(2,3) will return 8 ; default return value is 1.
Answer
Pow <- function(x=1,y=1)
{ z=1; for(i in 1:y) z<-z*x; return(z);}
Thank You