Fun with R
Variables and Numbers
x<- 1
y = 2
3 -> z
x+y## [1] 3x*z## [1] 3y/x## [1] 2Vectors
a <- 0:10
print(a)## [1] 0 1 2 3 4 5 6 7 8 9 10b <- 10:-4
print(b)## [1] 10 9 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4class(a)## [1] "integer"str(a)## int [1:11] 0 1 2 3 4 5 6 7 8 9 ...a[c(1,5,10)]## [1] 0 4 9head(a,4)## [1] 0 1 2 3tail(b,5)## [1] 0 -1 -2 -3 -4Combine Operator for creating vectors
when we create a vector with multiple data types, R coerces the vector to the most data type
c <- c(1:5,10.5,'red','yellow','green')
print(c)## [1] "1" "2" "3" "4" "5" "10.5" "red" "yellow"
## [9] "green"class(c)## [1] "character"str(c)## chr [1:9] "1" "2" "3" "4" "5" "10.5" "red" "yellow" "green"d <- c(1:5,10.5)
print(d)## [1] 1.0 2.0 3.0 4.0 5.0 10.5class(d)## [1] "numeric"str(d)## num [1:6] 1 2 3 4 5 10.5Sequence Operator Application
x <- seq(0, 8*pi,length.out=200)
y<- sin(x)
plot(x,y)
Dropping Missing Values and Summarizing values
a <- c(3,-2,4,NA,-1,8,-4,9,NA, 11,3,8,NA)
a [!is.na(a)]## [1] 3 -2 4 -1 8 -4 9 11 3 8a <-c(2,3,-1,3,5,2,-3,1)
print(paste0("The sum of positive integers in a=" ,sum(a[a > 0])))## [1] "The sum of positive integers in a=16"cat("The sum of positive integers in a=" ,sum(a[a > 0]))## The sum of positive integers in a= 16Creating the matrix
M1 <- matrix(1:12, ncol = 4, byrow = TRUE)
M1 ## [,1] [,2] [,3] [,4]
## [1,] 1 2 3 4
## [2,] 5 6 7 8
## [3,] 9 10 11 12M1[2,2]## [1] 6M2 <- matrix(1:12, nrow = 4)
M2 ## [,1] [,2] [,3]
## [1,] 1 5 9
## [2,] 2 6 10
## [3,] 3 7 11
## [4,] 4 8 12##Accessing Matrix Element
M1 <- matrix(1:20, ncol=4)
M1[c(3,5),c(2,4)]## [,1] [,2]
## [1,] 8 18
## [2,] 10 20Creating the Data Frame
DF <-data.frame(
gender =c("Male", "Male","Female"),
height =c(152, 171.5, 165),
weight =c(81,93, 78),
age =c(42,38,26),
row.names=c('Ally','Belinda','Alfred')
)
DF## gender height weight age
## Ally Male 152.0 81 42
## Belinda Male 171.5 93 38
## Alfred Female 165.0 78 26DF$age## [1] 42 38 26DF[DF$gender == "Male",]## gender height weight age
## Ally Male 152.0 81 42
## Belinda Male 171.5 93 38