PDF de programación - Programación en R

Imágen de pdf Programación en R

Programación en Rgráfica de visualizaciones

Publicado el 6 de Febrero del 2019
1.302 visualizaciones desde el 6 de Febrero del 2019
283,3 KB
81 paginas
Creado hace 6a (21/11/2017)
Programación en R

Tabla de contenido

Prefacio
Introducción a R
Instalación
Introducción a la interface de R

Primeros pasos con R

Introducción de datos
Evaluación
Objetos en R
Números
Atributos
Creando vectores
Mezclando objetos
Coerción explícita
Matrices
Listas
Factores
Valores indefinidos
Data frames
Nombres

Importar y exportar datos en R

Lectura y escritura de datos
Leyendo archivos con read.table()
Leyendo grandes conjuntos de datos
Calculando los requerimientos de memoria
Uso del paquete readr

Uso de formato de texto y binario para almacenar datos

Uso de dput() y dump()
Formatos binarios

Interfaces con el Mundo Exterior

Conexiones con archivos

0
1
1.1
1.2
2
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
3
3.1
3.2
3.3
3.4
3.5
4
4.1
4.2
5
5.1

2

Programación en R

Lectura de lineas en archivos de texto
Lectura de conexiones URL

Troceado de objetos

Troceado de un vector
Troceado de una matriz
Troceado de listas
Troceado de elementos anidados de una lista
Troceado de elemtos multiples de una lista
Búsqueda parcial
Eliminación de valores NA

Operaciones vectorizadas

Operaciones matriciales vectorizadas

Fecha y hora

Fechas en R
Horas en R
Operaciones con fechas y horas
Manipulación de Data Frames con el paquete dplyr
Data frames
El paquete dplyr
select()
filter()
arrange()
rename()
mutate()
group_by()
%>%

Estructuras de control

if-else
Iteraciones con for
Iteraciones anidadas con for
Iteraciones con while
repeat
next, break

Funciones

5.2
5.3
6
6.1
6.2
6.3
6.4
6.5
6.6
6.7
7
7.1
8
8.1
8.2
8.3
8.4
8.5
8.6
8.7
8.8
8.9
8.10
8.11
8.12
8.13
9
9.1
9.2
9.3
9.4
9.5
9.6
10

3

Programación en R

Funciones en R
Nuestra primera funci?n
Correspondencia en los argumentos
Evaluación lazy
El argumento ...
Argumentos detrás de ...

10.1
10.2
10.3
10.4
10.5
10.6

4

Programación en R

Este libro es una introducción a la programación en R, es una traducción y adaptación del
libro de Roger D. Peng, R Programming for Data Science, el cual utiliza el mismo material
desarrollado para la Especialización en Data Science de la universidad Johns Hopkins.
Éxisten copias de este libro en formato pdf, epub y mobi en el siguiente enlace.

Rubén Sánchez Sancho

Prefacio

5

Programación en R

Introducción a R

Introducción a R

6

Programación en R

Introducción a R

Instalación

Lo primero que tenemos que hacer es instalar R en nuestra computadora. R dispone de
versiones para la gran mayoría de plataformas como por ejemplo Windows, MacOS X y
Linux. En los siguientes enlaces te mostramos como instalar R en _Windows o Mac:

Instalación de R en Mac
Instalacion de R en Windows

Existe un entorno de desarrollo integrado disponible para R de la compañia RStudio. Es un
estupendo IDE con un editor con corrección sintáctica, una vista de objetos R y un gran
numero de características integradas que facilitan en gran medida las tarea del día a día.
Puedes ver como instalarlo en:

Instalación de RStudio

Instalación

7

Programación en R

El RStudio IDE está disponible en la siguiente página web de RStudio.

Instalación

8

Programación en R

Introducción a la interface de R

Una vez instalado R abriremos RStudio para familiarizarnos con el entorno. En el siguiente
video encontraremos como escribir archivos R y como configurar el IDE para que reconozca
nuestro directorio de trabajo.

Escritura de código y configuración del directorio de trabajo en Mac
Escritura de código y configuración del directorio de trabajo en Windows

Introducción a la interface de R

9

Programación en R

Primeros pasos con R

Primeros pasos con R

10

Programación en R

Primeros pasos con R

Introducción de datos
En el prompt de R escribiremos las expresiones. El símbolo <- és el operador de
asignación.

> x <- 1
> print(x)

[1] 1

> x

[1] 1

> msg <- "hello"
> print(msg)

[1] "hello"

La gramática del lenguaje determina si una expresión es completa o no.Por ejemplo:

x <- ## Expresión incompleta

El carácter # indica que es un comentario. Cualquier cosa escrita a la derecha del mismo
será ignorado. Este és el único tipo de comentario en R. A diferéncia de otros lenguajes R
no soporta los comentarios multilínia y por bloques.

Introducción de datos

11

Programación en R

Evaluación

Cuando un expresión correcta es introducida en la consola, esta es evaluada y el resultado
de la expresión es devuelto. El resultado puede ser auto-printed:

> x <- 5 ## No se imprime en pantalla
> x ## por auto-printing se imprime en pantalla

[1] 5

> print(x) ## impresión explícita

[1] 5

En [1] se muestra que x es un vector y que su primer elemento es 5.

Típicamente con un trabajo interactivo, nosotros no imprimeros los objetos de forma
explícita ya que es mucho más cómodo sólo escribir el nombre del objeto y presionar la
tecla Enter. Sin embargo, cuándo escribamos scripts, funciones o programas muchos más
largos, nos veremos con la necesidad de imprimir objetos y es entonce cuándo utilizaremos
el modo explícito, ya que el modo ímplicito no trabaja en esas circunstáncias.

Cuándo un vector R es mostrado en la consola obsérvese que el índice del vector es
mostrado en []. Por ejemplo:

> x <- 10:30
> x

[1] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Los números entre corchetes no forman parte del vector en sí mismo, sino que se trata
únicamente de información para la impresión por pantalla.

En R es de vital importáncia entender la diferéncia que existe en el objeto R y la manera en
que estos objetos son mostrados en la consola. Normalmente, la información en la consola
puede tener información adicional para hacerla más agradable al usuario.

Nota: El operador : es utilizado para crear secuencias de enteros.

Evaluación

12

Programación en R

Evaluación

13

Programación en R

Objetos en R

R tiene cinco tipos básicos de objetos:

character
numeric (número real)
integer
complex
logical (True/False)

El objeto más básico en R es el vector. Podemos crear vectores vacíos con la función
vector(). Existe únicamente sólo una regla sobre los vectores en R, que es que un vector
sólo puede contener objetos de la misma clase.

Pero obviamente, como en cualquier buena regla, existe una excepción, esta és con los
objetos de la clase lista. Una lista es representada como un vector pero puede contener
objetos de diferentes clases. Es por esto, que nosotros utilizaremos con mayor frecuéncia
este tipo de objeto.

Objetos en R

14

Programación en R

Números

Los números en R son tratados como objetos de tipo numeric (números reales de doble
precisión). Esto quiere decir que si vemos en R números com "1" or "2" nos puede llevar a
pensar que estamos tratando con números enteros pero, en realidad detrás de bastidores R
los representa como numeric (algo como "1.00" or "2.00"). Esto no és importante en la
mayoría de los casos... excepto cuando sí lo és.

Si necesitamos trabajar con enteros debemos especificarlo explícitamente con el sufijo L.
Por lo tanto, introduciendo en R 1 te devuelve un objeto de tipo numeric; introduciendo 1L
nos devolverá un objeto de tipo entero.

Existe un tipo especial de número Inf que representa infinito. Esto nos permite representar
entidades como 1/0. Así pues, Inf puede ser utilizado en cálculos de tipo: 1 / Inf que es igual
a 0.

El valor NaN representa un valor indefinido ("not a number"); por ejemplo 0 / 0; NaN puede
ser considerado como un valor no definido (lo veremos en próximos capítulos).

Números

15

Programación en R

Atributos

Los objetos en R pueden tener atributos, estos són como metadatos para el objeto. Estos
metadatos pueden ser muy útiles ya que nos proporcionan información del objeto. Por
ejemplo, los nombres de columna en un data frame nos proporcionan información de lo que
contiene cada columna. Algunos ejemplos de atributos en objetos R son:

names, dimnames
dimensions (en matrices, arrays)
class (e.g. integer, numeric)
length
otros atributos/metadatos definidos por el usuario

A los atributos de un objeto si los hay, se puede acceder mediante la función attributes(). No
todos los objetos contienen atributos, en este caso la función attributes() devolverá NULL.

Atributos

16

Programación en R

Creando vectores

La función c() puede ser usada para crear objetos.

> x <- c(0.5, 0.6) ## numeric
> x <- c(TRUE, FALSE) ## logical
> x <- c(T, F) ##logical
> x <- c("a", "b", "c") ##character
> x <- 9:29 ##integer
> x <- c(1+0i, 2+4i) ##complex

Obsérvese en el ejemplo anterior que T y F és lo mismo que TRUE y FALSE
respectivamente. Sin embargo, deberíamos utilizar los valores TRUE y FALSE para indicar
los valores lógicos, es considerado una buena práctica.

También podemos utilizar la función vector() para inicializar vectores.

> x <- vector("numeric", length = 10)
> x

[1] 0 0 0 0 0 0 0 0 0 0

Creando vectores

17

Programación en R

Mezclando objetos

Existen ocasiones en las que nos encontramos diferentes clases de objetos R mezclados.
Algunas veces esto sucede por accidente pero también puede darse el caso de que haya
sido intencionadamente. Obsérvese detenidamente el siguiente código:

> y <- c(1.7, "a") ## character
> y

[1] "1.7" "a"

> class(y)

[1] "character"

> y <- c(TRUE, 2) ## numeric
> print(y)

[1] 1 2

> class(y)

[1] "numeric"

> y <- c("a", TRUE) ## Character
> print(y)

[1] "a" "TRUE"

> class(y)

[1] "character"

Mezclando objetos

18

Programación en R

En todos los casos anteriores hemos mezclados objetos de diferentes clases en un vector.
No obstante, recordemos que la única regla en los vectores es que no podemos mezclas
objetos de diferentes clases. Cuando esto sucede, se pone en marcha la coercio para que
cada elemento del vector seán de la misma clase.

En el ejemplo presentado hemos visto el efecto conocido como coercion implícita. Con este
mecanismo R intenta encontrar un manera de representar todos los objetos de una forma
razonable.

Mezclando objetos

19

Programación en R

Coerción explícita

El mecanismo de coercio
  • Links de descarga
http://lwp-l.com/pdf15095

Comentarios de: Programación en R (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad