class: fullscreen, inverse, top, center, text-black background-image: url("../inst/images/R_logo.svg.png")

.font150[introduction to R]


Where can I learn R?


Variables, Types and Operators

.left-code[

2 + 2
a = 2; b = 3
a + 2
a * b
a == b
l <- a == b

]

.right-code[

s <- 'a'
S <- "helloworld"
s != S
class(a); class(l); class(s); class(S) 

Variables, Types and Operators

.left-code[

a = 1
class(a)
a = 'a' #<<
class(a)
a == s
?`==` #<<

]

.right-code[

a <- 1;length(a);class(a)
b <- numeric();length(b);class(b)
a + b
c <- NA; class(c)
a + c

]


Composed data types - arrays and matrices

.left-code[

av <- c(1,2,3,4) #<<
bv <- 1:4
class(av); class(bv)
av * 2
length(av)
av[1];av[2:4];av[-1] #<<

]

.right-code[

m <- matrix(1:4, ncol = 2) #<<
m
m[1,]; m[,2] #<<
class(m);class(m[1,]);class(m[1,1])

]


Composed data types - lists

.left-code[

a <- c(a = 1:4, b = c('a','b'));a
l <- list(a = 1:4, b = c('a','b'));class(l) ;l#<<
length(l)

]

.right-code[

l$a;l$b; class(l$a)
l[1];class(l[1]); length(l[1])
l[[1]];class(l[[1]]); length(l[[1]])

]


Composed data types - data.frames

.left-code[

df <- data.frame(a = 1:5,
                 b = c("a","b","b","c","d")) #<<
df;
colnames(df)
class(df);class(df[1]);class(df[[1]])

] .right-code[

df[1] #<< 
df$a
df[,1]
df[[1]]

]


Composed data types - data.frames

.left-code[

?read.csv
?readr:::read_tsv
?readxl::read_xlsx

]

.right-code[

subset(df, b == "b")
subset(df,a < 2)

aggregate(df, by = list(c = df$b), paste0)
aggregate(df, by = list(c = df$b), mean)

]


Functions and Scopes

.left-code[

rm(list=ls())
a <- 23

myfun <- function(x){
  a <- 3
  x <- x + 1
  return(x)
}

b <- myfun(a)
a == 23
b

]

.right-code[

myfun
?myfun
?print

]


Thank you for your attention

Seen on Twitter:

--



wolski/p3003PBC documentation built on Nov. 30, 2024, 7:14 a.m.