class: fullscreen, inverse, top, center, text-black background-image: url("../inst/images/R_logo.svg.png")
.font150[introduction to R]
www.edx.org; udemy.com; coursera.org; codeacademy.org
Online books:
...
Introducing 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)
s != S
types
, e.g. numeric
, character
.+
, -
, *
, /
<
, >
, <=
, ==
].left-code[
a = 1 class(a) a = 'a' #<< class(a) a == s ?`==` #<<
?
getting help function, e.g. ?==
]
.right-code[
a <- 1;length(a);class(a) b <- numeric();length(b);class(b) a + b c <- NA; class(c) a + c
]
.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])
]
.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]])
]
.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]]
]
.left-code[
?read.csv ?readr:::read_tsv ?readxl::read_xlsx
data.frames
subset
, aggregate
]
.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)
]
.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
]
Seen on Twitter:
--
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.