Manual R
Enviado por gonzalo Sancho Jiménez • 25 de Marzo de 2019 • Apuntes • 1.475 Palabras (6 Páginas) • 240 Visitas
Instalación
Hay que instalar el runtime de https://www.r-project.org/ y el studio de https://www.rstudio.com
Par instalar los paquetes necesarios
install.packages(c("ggplot2","swirl","lattice","car","fImport","tseries"))
> install.packages("curl", dependencies = TRUE)
> install.packages("httr", dependencies = TRUE)
Instalación de las lecciones y swirl
1) Ingresa los siguientes comandos en la consola de R:
> install.packages("swirl", dependencies = TRUE)
library(swirl)
select_language()
Elegir español (9: spanish).
Una vez instalado el curso, cada vez que desees acceder a las prácticas debes ingresar:
install_course_github("ifunam", "programacion-estadistica-r")
swirl()
Nota si no deja instalar por problemas de https
library(httr)
set_config(config(ssl_verifypeer = 0L))
Funciones iniciales
Otener ayuda en R
Comunidades R-help, R-devel y stackOverflow
help.start(). En ella encontrarás un menú de recursos, entre los cuales se encuentran manuales, referencias y demás material para comenzar a aprender R. También se encuentra en http://127.0.0.1:19528/doc/html/index.html
help(“print”) Otra forma es poner un ¿ al principio ejemplo ?print o. Para operadores se busca como help(‘+’)
apropos("class") Muestra las funciones que contienen esa cadena de texto
example(“print”) Da ejemplos de como usarlo
? ? Permite buscar ayuda sobre un tema en concreto. ? ? Regresion
library(help="stats"). Ayuda del paquete
Vignette(“function”) document en pdf de los creadores de la function
Vignette(all=TRUE) Listado de funciones con pdf o vignette()
Objetos y tipos de datos
Por defecto todos los números son vectores
Operaciones básicas y números
Ls() listar los objetos existentes Como la ventana de environment.
Objetos:
Carácter
Numeric (flotante) por defecto. Si queremos un entero tenemos que poner L
Integer
Complex
Logical
Vector. Todos del mismo tipo
Lista un vector con distintos tipos de objetos
NaN not un number 0/0
Inf infinito
Atributos de un objeto atributes()
<- símbolo de asignación
# comentario
Si creamos con c un vector de tipos distintos se hace una conversión de tipo
[pic 1]
Conversión explicita as.numeric() as.logicla() …
Vectores y matrices
length(complejo) <-3 modifica la longitu de del vector
[1] Tamaño del vector
C() crea un vector con el contenido. Por ejemplo x>- c(0.3,0.2)
Vector(“numeric”,lenght=10) Crea un vector definiendo el tipo y tamaño
List() Crea una lista que puede contener valores de distinto tipo
Mariz matrix(nrow=2,ncol=3)
m <- matrix(data=1:12,nrow=4,ncol=3
M<-matrix(1:6, nrow=2,ncol=3)
Dim(m)
[1] 2 3
Class(dim(m))
Integer
Attributes(m)
Dim [1] 2 3
Las matrices se rellenan de columnas y luego por filas
[pic 2]
Convertir un vector en una matriz:
[pic 3] [pic 4]
Precedencia de operaciones vectoriales
[pic 5]
Operaciones vectoriales
[pic 6]
Fechas y tiempos
Fechas
POSIXct tiempo segunfos desde 1970
POSIXlt en formato fecha
Tiempos
La diferencia es que no hay segundos sino días
[pic 7]
Listas
Pueden contener datos de distintos tipos
Array
Array crea una estructura de datos de varias dimensiones
array(c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18),dim=c(3,3,2))
mi_arreglo[1,3,2] accede al valor 1,3,2 dimensiones
Factores
Muestra los valores distintos
SIN ORDEN ORDENADO
[pic 8][pic 9]
Dataframes.
Es como una matriz, pero los elementos no tiene por qué ser del mismo tipo
Pueden darse nombres a las filas y columnas como [pic 10]
Pueden crearse con las instrucciones [pic 11] o convertir una matriz con data.matrix
Se puede acceder también como cars$speed
data.frame(llave=y, color=colores)
data.matrix() conviertes un dataframe en una matriz
Nombrado
Se pueden dar nombres a los valores:
Head(dataFrame) obtiene los 10 primeros datos
Names(dataFrame) obtiene el nombre de las columnas
Extraer Subconjunto de datos
Ejemplos x[1], x[1:5], x[c(1,4,5)]
X[-12] Todos menos el 12
mi_vector[rep(c(TRUE,FALSE),10)].
Rep repite valor X veces
[pic 12]
mi_matriz<- matrix(1:9,3,3)
Cuando obtenemos el valor de una matrix x[1,2] da como resultado un vector. Pero podemos hacer que de una matriz con drop:
...