Documente Academic
Documente Profesional
Documente Cultură
Tecnológico de Monterrey
Campus Laguna
20 de Marzo del 2015
Nota Aclaratoria
http://www.econometricsbysimulation.com/2014/03/why-use-r-five-reasons.html
Introducción – ¿Por qué R?
http://www.econometricsbysimulation.com/2014/03/why-use-r-five-reasons.html
R– Consola
R– Consola
R– Documentación y Ayuda
Para obtener la documentación de las funciones de R desde la
consola
R– Documentación y Ayuda
La comunidad de usuarios también representa una gran ventaja
para obtener clarifiación en alguna duda.
Conferencia Use R!
En R encuentras lo que quieras
¿Qué les interesa buscar?
Instalar R
Instalar R
http://www.r-project.org
R– Consola
Tipos de Variables
R– Variables
Carácter
Boolean
Operadores en R
• Son similares a los de otros lenguajes
y tienen el mismo orden de asignación.
Operator Description
+ addition
- subtraction
* multiplication
/ division
^ or ** exponentiation
x %% y modulus (x mod y) 5%%2 is 1
x %/% y integer division 5%/%2 is 2
Ejercicios con variables
¿Existen similitudes?
R es simple
• En R no necesitas declarar el tipo de
variable. Sin embargo puedes asignarlo.
Ejemplo: as.character()
• No es necesario especificar si una
variable númerica tiene que ser entera o
double.
• No tienes que crear una función “main”
• No tienes que compilar.
• Puedes asignar funciones a variables.
Estructuras de Datos
R– Vectores
Numérico
Carácter
Booleanos
R– Vectores (funciones)
Vectores secuenciales
Vectores repetitivos
R– Indexado de vectores
• Se hace con corchetes [ ]
• Es igual que con otros lenguajes pero
en R se empieza en 1.
• Puede ser una operación.
• Negativo significa quitar del vector.
R– Indexado de vectores
R– Matrices
Llenar datos
datos: puede ser un valor por renglón Lista con los nombres de
o un vector de valores columnas y renglones
# de renglones # de columnas
R– Matrices
http://www.r-tutor.com/r-introduction/matrix
R– Arrays
Pueden definirse como un vector de matrices, agregando una dimensión
extra a las matrices.
Lista con los nombres de
datos: puede un valor o un columnas, renglones, etc.
vector de valores
# de dimensiones
R– Arrays
Un arreglo puede definirse como un objeto tridimensional
(r x c x h).
Puedes pensar que son h matrices de dimensiones r x c.
h
r
c
R– Data frames
Son vectores del mismo tamaño
group <- data.frame(name =
c("Hans”,"Caro”,"Lars”,"Ines”,"Sarah"), gender = c("male",
"female", "male", "female”, "female”),
favourite_colour = c("green", "blue", "yellow”, "black",
"yellow”),
income = c(800,1233,2400,4000,2899))
R– Data frames
• Es un objeto de dimensiones r x c (similar a una
matriz).
A)
B)
R– Opciones básicas en gráficas
A) Titulo B) Titulo
25
25
20
20
15
15
Eje Y
Eje Y
10
10
5
5
0 20 40 60 80 100 120 0 10 20 30 40 50
Eje X Index
Subtitulo
R– Opciones básicas en gráficas
Con el parámetro “type”, podemos elegir si queremos líneas, puntos o ambas
x <- c(1:20)^2
2500
2500
2500
2000
2000
2000
1500
1500
1500
x
x
1000
1000
1000
500
500
500
0
0
0 10 20 30 40 50 0 10 20 30 40 50
0 10 20 30 40 50
Index Index Index
R– Opciones básicas en gráficas
Con el parámetro pch, podemos elegir el tipo de punto con el que queremos graficar.
10
5
5 10 15 20 25
Index
R– Opciones básicas en gráficas
También podemos especificar el color. plot(1:25, col=1:25, pch=19)
25
20
15
1:25
25
10
20
5
15
1:25
5 10 15 20 25
10
Index
5
4
5 10 15 20 25
Index
1:5
3
2
1
1 2 3 4 5
Index
R– Opciones básicas en gráficas
Ejemplo:
samples <- c(1:25)
x <- samples
y <- samples^2 *0.1
z <- sqrt(samples)+10
plot(x, type="p", pch=7, col="green", ylim=c(0,65))
points(y, pch=15, col="red")
points(z, pch=19, col="black")
60
50
40
x
30
20
10
0
5 10 15 20 25
R– Opciones básicas en gráficas
Ejemplo:
samples <- c(1:25) y=x
y = x^2 * 0.1
x <- samples
60
y = sqrt(x) + 10
y <- samples^2 *0.1
z <- sqrt(samples)+10
50
plot(x, type="p", pch=7, col="green", ylim=c(0,65))
points(y, pch=15, col="red")
points(z, pch=19, col="black")
40
x
30
20
10
0
5 10 15 20 25
Agregar una leyenda
Index
legend("topleft", legend=c("y = x", "y = x^2 * 0.1", "y = sqrt(x) + 10"), fill=c("green","red","black"))
R– Gráficos básicos
x <- 1:100
y <- x + rnorm(100,0,5)
plot(x, y, xlab="x", ylab="x plus noise", main="Two variables")
Two variables
100
80
60
x plus noise
40
20
0
0 20 40 60 80 100
x
R– Gráficos básicos
plot(sin, from=-2*pi, to=2*pi, ylab="Funciones")
plot(cos, from=-2*pi, to=2*pi, add=TRUE, lty="dashed")
1.0
0.5
Funciones
0.0
-0.5
-1.0
-6 -4 -2 0 2 4 6
x
R– Gráficos básicos
lo.vec <- rnorm(20,0,1)
me.vec <- rnorm(20,3,1)
hi.vec <- rnorm(20,5,1)
boxplot(x=list(lo.vec, me.vec, hi.vec),names=c("low","med","high"))
6
4
2
0
-2
¿Fue fácil?
Función 1
Función 2
Función…
Valor que se dá a la
Input funcion
Manipula objetos
Funciones Argumento Los objetos que regresa la
Regresa un valor
funcion depende de estos
Representaciones que
Es usado como pueden ser manipulados.
Valor Objeto
argunmento Asignación
R– Selección y manipulación
sample(x, size): regresa size elementos de x
Se recomienda usar {}
No es necesario un “return”
Ejercicios con funciones
C) D)
Ejercicios con leer / exportar
a) Impórtalo en R.
http://www.bioconductor.org/
R– Bioconductor
library(org.Hs.eg.db)
gene.name <- toTable(org.Hs.egGENENAME)
symbol <- toTable(org.Hs.egSYMBOL)
R– Bioconductor
tumor.key <- as.numeric(sapply(gene.name$gene_name, function(x) grep("tumor",x)))
¿Tienes preguntas?
Gracias!!!!!