UD1 N01 Code
Elementos básicos de R
El elemento más básico con el que se trabaja son los vectores. Así un vector
(1, 4, 2, 3, 2, −10)
Se escribe en R como:
Hide
c(1,4,2,3,2,-10)
[1] 1 4 2 3 2 -10
Para definir variables usaremos el símbolo <- y para realizar operaciones ariméticas los símbolos habituales.
Hide
a <- c(1,2,3,4)
a
[1] 1 2 3 4
Hide
a+5
[1] 6 7 8 9
Hide
a-10
[1] -9 -8 -7 -6
Hide
a*4
[1] 4 8 12 16
Hide
a^2
[1] 1 4 9 16
Hide
a/5
[1] 0.2 0.4 0.6 0.8
Hide
a-a
[1] 0 0 0 0
Hide
b <- a-10
b
[1] -9 -8 -7 -6
R incorpora las funciones matemáticas clásicas aplicables a sus objetos, que a su vez son operables entre si
Hide
sqrt(a)
[1] 1.000000 1.414214 1.732051 2.000000
Hide
exp(a)
[1] 2.718282 7.389056 20.085537 54.598150
Hide
log(a)
[1] 0.0000000 0.6931472 1.0986123 1.3862944
Hide
cos(a)
[1] 0.5403023 -0.4161468 -0.9899925 -0.6536436
Hide
c <- (a + sqrt(a))/(exp(2)+1)
a+b
[1] -8 -6 -4 -2
Hide
a*b
[1] -9 -16 -21 -24
Hide
a/b
[1] -0.1111111 -0.2500000 -0.4285714 -0.6666667
Hide
(a+3)/(sqrt(1-b)*2-1)
[1] 0.7512364 1.0000000 1.2884234 1.6311303
Para obtener información de una función se selecciona y se pulsa F1 ó escribimos
Hide
help(sqrt)
Operaciones en vectores y booleanos
Generar un vector, identificar el tipo de objeto y averiguar su longitud:
Hide
x<-c(1:10)
class(x)
[1] "integer"
Hide
length(x)
[1] 10
Generar vectores con saltos por intervalos, vectores de valores repetidos, vectores con carácteres.
Hide
seq(1,9,by=2)
[1] 1 3 5 7 9
Hide
seq(1,9,length=6)
[1] 1.0 2.6 4.2 5.8 7.4 9.0
Hide
rep(3,10)
[1] 3 3 3 3 3 3 3 3 3 3
Hide
x<-c("a","e","i","o","u")
x
[1] "a" "e" "i" "o" "u"
Hide
class(x)
[1] "character"
Ordenar vectores
Hide
a <- c(2,4,6,3,1,5)
b <- sort(a)
c <- sort(a,decreasing = TRUE)
a
[1] 2 4 6 3 1 5
Hide
[1] 1 2 3 4 5 6
Hide
c
[1] 6 5 4 3 2 1
Booleanos (Verdadero: TRUE ó T y Falso: FALSE ó F que indican si se cumple una condición en cada posición de un vector. El símbolo ! es
una negación.
Hide
c(TRUE, FALSE)
[1] TRUE FALSE
Hide
c(F, T)
[1] FALSE TRUE
Hide
!c(F,T)
[1] TRUE FALSE
Hide
c(F,T) == !c(T,F)
[1] TRUE TRUE
Hide
x<-c(1,-1,2,-2)
x>0
[1] TRUE FALSE TRUE FALSE
Subindexación del vector usando una máscara en forma de condición:
Hide
x[x>0]
[1] 1 2
Hide
x[1:3]
[1] 1 -1 2
Hide
x[-(1:3)]
[1] -2
Hide
x[c(T,F)] #coordenadas impares
[1] 1 2
Hide
x[c(F,T)] #coordenadas pares
[1] -1 -2
Reasignación de valores según posición, saber si una posición es un NaN (un valor faltante ó desconocido), saber qué posiciones tienen valores
faltantes, seleccionar aquellas posiciones que no tienen valor faltante
Hide
x[5] <- NaN
x
[1] 1 -1 2 -2 NaN
Hide
!is.na(x)
[1] TRUE TRUE TRUE TRUE FALSE
Hide
is.na(x)
[1] FALSE FALSE FALSE FALSE TRUE
Hide
x[!is.na(x)] #elimina del vector los Nan
[1] 1 -1 2 -2
Hide
which(is.nan(x))
[1] 5