INTRODUCCIÓN AL MANEJO DE DATOS EN R
Enviado por Ninoka • 25 de Julio de 2018 • 3.321 Palabras (14 Páginas) • 367 Visitas
...
la máxima preferencia > n <-10 > 1:n-1 #Aquí se ejecuta primero ":" y después "-" [1] 0 1 2 3 4 5 6 7 8 9 > 1:(n-1) #Forzamos la prioridad del "-" [1] 1 2 3 4 5 6 7 8 9 #Generamos una secuencia de 1 a 30 saltando dos números cada vez > seq(1,30,by=2) [1] 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
La función seq() admite también la longitud de la secuencia que queremos generar, de manera que ella misma decide el intervalo automáticamente
> seq(1,30,length=15) [1] 1.000000 3.071429 5.142857 7.214286 9.285714 11.35714313.428571 15.500000 17.571429 19.642857 21.714286 23.785714 25.857143 27.928571 30.000000
La función rep() sirve para generar repeticiones de objetos (escalares o vectores)
> rep(2,10) [1] 2 2 2 2 2 2 2 2 2 2 > a<-1:4 > a [1] 1 2 3 4 > rep(a,3) [1] 1 2 3 4 1 2 3 4 1 2 3 4
Universidad Nacional Autónoma de México Estadística III Facultad de Ciencias
Profesora Claudia González González Ayudante H. Alonso Torres Hernández
Vectores Lógicos R permite la manipulación de cantidades lógicas. Los valores de un vector lógico pueden ser TRUE o T (cierto), FALSE o F (falso) y NA/NaN. En R los valores "desconocidos" o "no disponibles" (missings) se simbolizan con el valor especial NA (NotAvailable). Hay un segundo tipo de missings que se producen por computación numérica, lo que se llama Not a Number, se simbolizan con el valor NaN.
#Generamos un vector de 1 a 10 > x <-1:10 #cond1vector lógico, de la misma longitud que x, donde cada casilla nos dice si la correspondiente casilla de x cumple la condición x>7 > cond1 <-x > 7 > cond1 [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE > cond2 <-x >= 9 #Generamosotra condición > cond1 & cond2 #Hacemos una “and” lógica de las dos condiciones > [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE > !cond1 #Negaciónlógica del vector cond1 > [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE
Vectores de Caracteres Los vectores de cadenas de caracteres se usan a menudo en R, principalmente para guardar etiquetas. Los caracteres pueden ser entrados utilizando comillas simples (’ ’) o dobles (" "), aunque después R los muestra normalmente rodeados de comillas dobles. Como en C, utilizan el carácter "\" como carácter de escape. Algunos caracteres útiles son el salto de línea (\n) y tabulador (\t). La función paste() toma un número arbitrario de argumentos y los concatena uno a uno para transformarlos después en caracteres.
#Concatenamos un vector de dos letras y otro de dos números posición a posición > paste(c("X","Y"),1:2,sep="") [1] "X1" "Y2"
#Ahora concatenamos vectores de diferente longitud y hacemos que el separador de la concatenación sea un punto".", nótese la repetición del vector corto. > paste(c("X","Y"),1:4,sep=".") [1] "X.1" "Y.2" "X.3" "Y.4"
Universidad Nacional Autónoma de México Estadística III Facultad de Ciencias
Profesora Claudia González González Ayudante H. Alonso Torres Hernández
#La función paste tiene otro argumento, llamado collapse, que fusiona todos los strings que genera para dar una única cadena de caracteres de salida. El valor de collapse es lo que se coloca en medio de las diferentes cadenas de caracteres que se unen. > paste(c("X","Y"),1:4,sep=".",collapse="-")[1] "X.1-Y.2-X.3-Y.4"
Coerción de tipos R, como la mayoría de lenguajes de programación, dispone de funciones para realizar la coerción (transformación) de tipos de objetos. Para que la coerción tenga lugar no se ha de dar ninguna incompatibilidad entre el tipo origen y el tipo destino. Asícomo las funciones de coerción, que suelen comenzar con la palabra “as” seguida de un punto (as.integer) y el tipo de destino, también existen las funciones de verificación de tipos, que se componen de” is” seguido de un punto y el tipo a verificar (is.integer).
# Coerción correcta > a <-c("1","2","3") > b <-as.numeric(a) > b [1] 1 2 3 # Coerción incorrecta. Se imprimen NA’s. > a <-c("1","2","x") > b <-as.numeric(a) > b [1] 1 2 NA > #Verificación de tipo > a <-c("1","2","3") > is.numeric(a) [1] FALSE > is.character(a) [1] TRUE
Arreglos “Array” Un array es un conjunto de datos de k dimensiones. El caso más sencillo se da con k=2, lo que llamaremos matriz (matrix). Todos los elementos de un array deben ser del mismo tipo. En R cualquier array ha de tener asociado un atributo llamado “dim” que indique los límites superiores de cada una de las dimensiones.
> a <-1:42 # Creamos un vector de 42 posiciones # Lo transformamos en un array añadiéndole el límite superior de cada dimensión. En este caso en un array de tres dimensiones de longitudes 3, 7 y 2 > dim(a) <-c(3,7,2)
Universidad Nacional Autónoma de México Estadística III Facultad de Ciencias
Profesora Claudia González González Ayudante H. Alonso Torres Hernández
> a , , 1 [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 1 4 7 10 13 16 19 [2,] 2 5 8 11 14 17 20 [3,] 3 6 9 12 15 18 21 , , 2 [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 22 25 28 31 34 37 40 [2,] 23 26 29 32 35 38 41 [3,] 24 27 30 33 36 39 42
> a <-1:42 > dim(a) <-c(6,7) > a [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 1 7 13 19 25 31 37 [2,] 2 8 14 20 26 32 38 [3,] 3 9 15 21 27 33 39 [4,] 4 10 16 22 28 34 40 [5,] 5 11 17 23 29 35 41 [6,] 6 12 18 24 30 36 42
> dim(a)<-c(8,9) Error in dim(a) <- c(8, 9) : dims [product 72] do not match the length of object [42]
Además de con un vector de datos y un atributo “dim”, los arrays también pueden ser construidos con la función array(), a la cual se le ha de pasar como argumentos el vector de valores y el vector de dimensiones. Esta función actúa igual que el método “manual”, pero acepta vectores de dimensiones que no encajen exactamente
...