For Loops
# example from cheatsheet
for (i in 1:4){
j <- i + 10
print(j)
}
## [1] 11
## [1] 12
## [1] 13
## [1] 14
# example1: numeric calculation- add 10
x<- 11:15
for (i in seq_along(x)) {
j<- x[i] + 10
print(j)
}
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
# save output
y<- vector("integer", length(x))
for (i in seq_along(x)) {
y[i]<- x[i] + 10
print(y[i])
}
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
# output
y
## [1] 21 22 23 24 25
#example2: string operation- extract first letter
x<- c("abc", "xyz")
y<- vector("character", length(x))
for (i in seq_along(x)) {
y[i]<- x[i] %>% str_extract("[a-z]")
print(y[i])
}
## [1] "a"
## [1] "x"
# output
y
## [1] "a" "x"
Map Functions
x<- 11:15
for (i in seq_along(x)) {
j<- x[i] + 10
print(j)
}
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
# save output
y<- vector("integer", length(x))
for (i in seq_along(x)) {
y[i]<- x[i] + 10
print(y[i])
}
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
y
## [1] 21 22 23 24 25
# using map function
x
## [1] 11 12 13 14 15
map(.x= x, .f= ~.x +10)
## [[1]]
## [1] 21
##
## [[2]]
## [1] 22
##
## [[3]]
## [1] 23
##
## [[4]]
## [1] 24
##
## [[5]]
## [1] 25
map_dbl(.x= x, .f= ~.x +10)
## [1] 21 22 23 24 25
add_10<- function(x) {x+10}
11%>% add_10()
## [1] 21
map_dbl(.x= x, .f= add_10)
## [1] 21 22 23 24 25