Lenguaje de Programacion R

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 117

LENGUAJE DE

PROGRAMACION R
INTRODUCCION A R
OBJETIVOS
1. Presentar el entorno de desarrollo de R, como RStudio, y cómo
configurarlo para programar de manera eficiente.

2. Configuración y taxis básica, como el manejo y análisis de datos para


la graficar y visualizarlos de los mismos.

3.
Mostrar cómo realizar estadística descriptiva basica en R,
Formularios, UserForms

Automatizar tareas con aplicaciones externas, así como


4. trabajar con datos externos.

5. Aplicar los conocimiento de R en la vida cotidiana y


laboral.
Lenguaje de programación diseñado para
realizar análisis estadísticos y crear
gráficos a partir de datos, proporcionando
unas amplias herramientas estadísticas y
gráficas.

A lo largo de los años, R se ha convertido en


una herramienta esencial en una amplia
gama de disciplinas, desde la investigación
académica hasta la toma de decisiones
empresariales.

R
INSTALACIÓN
Y
CONFIGURACIÓN
DE R
Para descargar R debes acceder a CRAN (Comprehensive R Archive Network) que es
el repositorio central de software de R. CRAN está compuesto por una serie de
servidores en todo el mundo también conocidos como sitios espejo que son utilizados
para distribuir tanto R como sus paquetes. Utilizaremos el servidor en la nube, por lo
que ya no será necesario escoger un servidor que esté cerca de nuestro lugar de
residencia, ya que lo identificará automáticamente por ti. Para ello, abre el navegador
de tu preferencia, dirígete al sitio oficial del servidor en la nube de R y haz clic en el
enlace “Download R for Windows”.

Paso 1
Selecciona el enlace “install R for the first time” en la parte superior de la
página. Selecciona el enlace “install R for the first time” en la parte superior
de la página.

Paso 2
Paso 3

Haz clic en “Download R 4.0.3 for Windows”. El número que se encuentra en seguida de R,
corresponde a la versión que instalarás en tu ordenador y ésta variará de acuerdo a sus
actualizaciones. Será suficiente con que te asegures de que se trata de alguna de las
versiones de R-4.
Selecciona
guardar archivo.

Paso 4
Guarda el archivo ejecutable en algún lugar de tu computadora. En este
Paso 5 caso lo guardaremos en el escritorio.

Haz doble clic en el archivo descargado para ejecutarlo.


Paso 6
Paso 7

En seguida te preguntará si quieres permitir que esta aplicación realice cambios en tu


dispositivo, selecciona que sí y después elige el idioma de tu preferencia. Si deseas,
puedes configurar las opciones de instalación o sólo aceptar las opciones
preestablecidas presionando “Siguiente >”.

Una vez terminado el proceso, aparecerá una ventana con el siguiente mensaje:
“Completando la instalación de R for Windows”. Por último, haz clic en “Finalizar” y
tendrás instalado R en tu computadora.
El siguiente paso es
instalar un IDE para
R, en este caso
utilizaremos
RStudio.

Paso 8
PROBLEMAS FRECUENTES DURANTE LA INSTALACIÓN DE R

Si existen problemas al intentar instalar o iniciar R, prueba las siguientes


recomendaciones:
• Desinstala R, elige manualmente una ubicación CRAN cercana a tu lugar de
residencia y descarga R de nuevo.

• Actualizaciones recientes de Windows que no se han instalado completamente


pueden causar problemas de instalación. Reinicia el ordenador e intenta instalar R
de nuevo.

• La instalación puede fallar si tienes algún programa de antivirus en funcionamiento.


Desactiva este programa e instala R otra vez.

• Se requieren permisos de administrador para poder instalar software


nuevo. Aquí más información para comprobar qué tipo de cuenta está habilitada en
tu computadora.
Paso 1
Abre de nuevo tu
navegador y dirígete al sitio
oficial de RStudio.

Haz clic en “DOWNLOAD”.


Paso 2

INSTALACION DE RSTUDIO
Paso 3
Busca la opción
“RStudio
Desktop” y
selecciona
“DOWNLOAD”.

Haz clic en “DOWNLOAD RSTUDIO FOR WINDOWS”.


Paso 4
Selecciona guardar archivo. Paso 5

Guarda el archivo ejecutable en algún lugar de tu


computadora. En este caso lo guardaremos en el escritorio.
Paso 6
Paso 7 Haz doble clic en el archivo descargado para ejecutarlo.
Paso 8

En seguida te preguntará si quieres permitir que esta aplicación realice cambios


en tu dispositivo, selecciona que sí y después presiona “Siguiente >”. Si deseas,
puedes configurar las opciones de instalación o sólo aceptar las opciones
preestablecidas haciendo clic en “Siguiente >”.

Al terminar el proceso, aparecerá una ventana con el siguiente mensaje:


“Completando el Asistente de Instalación de RStudio”. Por último, haz clic en
“Terminar” y tendrás instalado RStudio en tu computadora.
Paso 8
PROBLEMAS FRECUENTES DURANTE LA INSTALACIÓN DE RSTUDIO
Si existen problemas al intentar instalar o iniciar RStudio, prueba las siguientes
recomendaciones:

• Reinicia el ordenador y vuelve a intentarlo.

• Desinstala RStudio e instálalo de nuevo.

• Desinstala RStudio y descarga el archivo zip en lugar del archivo ejecutable de


instalación. Este archivo lo podrás encontrar aquí en la seccion de “Zip/Tarballs”:

• Desinstala RStudio y descarga de este enlace una versión anterior.

• RStudio requiere como mínimo la versión 2.11.1 de R para poder funcionar. Asegúrate
de cumplir este requisito o en caso de tener varias versiones, pulsa la tecla Ctrl al iniciar
RStudio para seleccionar la versión de R que deseas utilizar.

• Desinstala R y RStudio. Después reinstala ambos.


SINTAXIS BÁSICA DE R
Etapa 3
NORMAS BÁSICAS QUE DEFINEN R se divide en cinco clases básicas que
LA SINTAXIS DE R son bloques de construcción o
elementos que conforman a los objetos

– Numérica o doble
– No se toman en cuenta los espacios en
blanco – Entero
– Se distinguen las mayúsculas y minúsculas – Complejo
– Se pueden incluir comentarios – Lógico
– No es necesario terminar cada sentencia – De carácter
con el carácter de punto y coma (;)
– Lenguaje orientado a objetos (todo en R son
objetos, las variables, datos, funciones y
resultados, son objetos estos se modifican o
manipulan con operadores o funciones) CLASES BÁSICAS O ATÓMICAS
SINTAXIS DE NORMAS
Podemos o no dejar Podemos crear
espacios para que el diferentes variables
código se pueda alternando mayúsculas
ordenar. y minúsculas.

Los comentarios se
utilizan para añadir
información en el código.
CLASES
NUMERICA ENTERO COMPLEJO
representan son los números naturales, son números que combinan un
números continuos como el que se usan para numero real
peso o la altura de una contar elementos de un y uno imaginario denotado por
persona. conjunto. la letra i

Indican una condición


DE Colección
de carácteres entre
LOGICO falso o verdadero. CARACTER comillas.
INSTRUCCIONES DE
ASIGNACIÓN
EXPRESIONES Y
ASIGNACIÓN

CONSTRUCCIONES PARA
AGRUPAR EXPRESIONES LLAVES

SEPARANDO EXPRESIONES
PARÉNTESIS
CON PUNTO Y COMA
MANEJO DE DATOS
EN R
IMPORTACIÓN Y EXPORTACIÓN DE DATOS
La importación se refiere al proceso de
traer datos desde fuentes externas,
como archivos CSV, Excel, bases de
datos, hojas de cálculo, páginas web u
otras fuentes, y cargarlos en un objeto
de datos en R para su posterior
análisis.

La exportación de datos se refiere al proceso de transferir información o registros


desde una fuente de datos, como una aplicación, una base de datos o una hoja de
cálculo, a un formato o ubicación diferente.

Esto puede hacerse por varias razones, como respaldar datos, compartir información
con otros sistemas o usuarios, analizar datos en otra herramienta o simplemente para
mantener una copia de seguridad de los datos en un formato específico.
ARCHIVO CSV #EXPORTAR
# Creamos una lista de nombre y edades
nombres <- c("Juan", "María", "Luis", "Ana", "Carlos")
edades <- c(28, 32, 45, 22, 39)
#IMPORTAR
#Importar datos desde un archivo CSV
# Combinar los datos en un marco de datos (data frame)
datos<- read.csv("archive.csv")
datos <- data.frame(Nombre = nombres, Edad = edades)
#Mostrar los primeros datos del conjunto de
# Escribir los datos en un archivo CSV
datos
nombre_archivo <- "nombres_edades.csv"
head(datos)
write.csv(datos, file = nombre_archivo, row.names = FALSE)

# Verificar si el archivo se ha creado con éxito

if (file.exists(nombre_archivo)) {
cat("El archivo CSV se ha creado con éxito.\n")
} else {
cat("Hubo un problema al crear el archivo CSV.\n")
}
ARCHIVO EXCEL
#IMPORTAR #EXPORTAR

#Instalar la biblioteca readxl # Instala y carga la biblioteca writexl


Install.packages(“readxl”) install.packages("writexl")
library(writexl)
# Importar la biblioteca readxl
library(readxl) # Crea un conjunto de datos de ejemplo
data <- data.frame(
# Especifica la ubicación del archivo Excel Nombre = c("Juan", "María", "Carlos"),
archivo_excel<-"archivo.xlsx" Edad = c(25, 30, 22),
) ) Ciudad = c("Barcelona", "Madrid", "Valencia")
)
# Importar datos desde el archivo Excel
datos_excel <- read_excel(archivo_excel) # Especifica el nombre del archivo Excel
nombre_archivo <- "datos.xlsx"
#Visualizar los primeros registros del conjunto
de datos # Exporta los datos a un archivo Excel utilizando
head(datos_excel) writexl
write_xlsx(data, nombre_archivo)
URL
#EXPORTAR
#IMPORTAR library(httr)
# Especifica la URL del archivo CSV
url <- "https://www.ejemplo.com/archivo.csv" #Datos a exportar
datos <- data.frame(
Ciudad = c("Nueva York", "Los Ángeles", "Chicago"),
) # Importar datos directamente desde la URL Población = c(8398748, 3990456, 2705994),
datos <- read.csv(url)
Área = c(468.9, 1302.0, 606.1)
)
# Visualizar los primeros registros del conjunto de
datos # URL de destino
head(datos) url_destino<-"https://mi-servicio-web.com/api/guardar-datos"
# Exportar datos a la URL
) respuesta <- POST(
url_destino,
body = list(datos = toJSON(datos)),
encode = "json",
verbose()
)
# Verificar el resultado de la exportación
if (http_status(respuesta)$status == 200) {
cat("Datos exportados con éxito.\n")
} else {
cat("Error al exportar datos.\n")
}
MANIPULACIÓN DE DATOS
FILTRADO
Es una operación fundamental en el análisis de datos y la manipulación de datos en R, ya
que te permite trabajar con datos relevantes para tu análisis o tarea específica. El filtrado se
utiliza compuesto para extraer, subconjuntar o reducir un conjunto de datos a un grupo más
pequeño que cumpla con ciertos requisitos.

En R, el filtrado se puede realizar en diferentes tipos de objetos de datos, como dataframes,


vectores y listas, utilizando diversas funciones y operadores condicionales. Ejemplos de
cómo realizar filtrado en R:

1. USANDO EL OPERADOR DE SUBCONJUNTO [ ]


Si tienes un dataframe llamado datos y quieres seleccionar las filas donde el valor en la
columna edad sea mayor o igual a 18, puedes hacerlo de la siguiente manera:
datos_filtrados <- datos[datos$edad >= 18, ]
2. FUNCIÓN SUBSET( )
Para seleccionar todas las filas donde la edad sea mayor o igual a 18 y solo las columnas
nombre y edad:

datos_filtrados <- subset(datos, edad >= 18, select = c(nombre, edad))

3. FUNCIÓN FILTER( )
library(dplyr)
datos_filtrados <- datos %>% filter(edad >= 18)

4. COMBINANDO MÚLTIPLES CONDICIONES


Para seleccionar filas donde la edad sea mayor o igual a 18 y el género sea "Femenino":
datos_filtrados <- datos[datos$edad >= 18 & datos$genero == "Femenino", ]
ORDENAMIENTO
En R, puedes ordenar vectores, matrices y marcos de datos utilizando varias funciones. Las
funciones más comunes para realizar ordenamientos son `sort()`, `order()`, para ordenar
marcos de datos.

#Obtener indices de ordenación de un vector


indices_orden <- order(vector)

#Ordenar un dataframe por una columna específica en


#Ordenar un vector en orden ascendente
orden ascendente
vector_ordenado <- sort(vector) sort()
order() dataframe_ordenado<-
dataframe[order(dataframe$columna), ]
#Ordenar un vector en orden descendente
vector_ordenado_desc<-sort(vector, decreasing =
#ordenar un marco de datos por múltiples columnas en
TRUE)
orden ascendente
dataframe_ordenado<-
dataframe[order(dataframe$columna1,
dataframe$columna2), ]
AGREGACIÓN
La agregación en R se refiere al proceso de resumir o condensar datos en un conjunto de
datos más pequeño y manejable. Esto generalmente implica calcular estadísticas resumen,
como sumas, promedios, medianas, máximos, mínimos, desviaciones estándar, etc., para
una o más variables en función de ciertas condiciones o categorías.

Algunas de las funciones y técnicas más comunes para la agregación en R son las siguientes:

1. aggregate():
Esta función permite agregar datos en función de factores o variables categóricas. Puedes
especificar la variable que deseas agregar y la variable o variables por las que deseas
agrupar.
#Agregar la columna 'valor' por la columna 'categoria'
resultados <- aggregate(valor ~ categoria, data = datos, FUN = sum)
2. tapply( ):
Esta función se utiliza para aplicar una función específica a subconjuntos de datos basados
en una o varias variables categóricas.
#Calcular la suma de 'valor' para cada 'categoria'
resultados <- tapply(datos$valor, datos$categoria, FUN = sum)

3. by( ):
La función by() divide un conjunto de datos en subconjuntos basados en una o varias
variables y luego aplica una función a cada subconjunto.

# Calcular la suma de 'valor' para cada 'categoria'


resultados <- by(datos$valor, datos$categoria, sum)
PAQUETES Y BIBLIOTECAS ÚTILES
ata.table: Ofrece una forma eficiente de realizar
manipulaciones de datos en grandes conjuntos de datos.

lubridate: Facilita la manipulación y cálculos con fechas y


horas.

stringr: Ayuda en la manipulación de cadenas de texto.

caret: Proporciona herramientas para el entrenamiento y


evaluación de modelos de aprendizaje automático.

tidytext: Para el análisis de texto, incluyendo el análisis de


sentimientos y la tokenización.

Shiny: Permite crear aplicaciones web interactivas en R.


GRÁFICOS Y VISUALIZACIÓN DE DATOS
VISUALIZACIÓN DE DATOS
Existen paquetes especializados
para la visualización de datos
como ggplot2 que permiten
realizar multitud de gráficos de
La visualización de datos es una de manera más estructurada,
las etapas fundamentales en el con una sintáxis unificada. Una de
análisis de datos porque se las funciones más fuertes de R es
relaciona con la comunicación de la habilidad para producir un
los resultados. amplio rango de gráficas para
visualizar datos fácilmente y
Una buena visualización permite: rápidamente.
• Condensar mucha información
• Evidenciar nuestro punto de vista
• Contar historias con datos
GRÁFICOS EN R

Los gráficos en el lenguaje de programación R se utilizan para


representar y comprender mejor los datos con los que se está
trabajando. R dispone de múltiples funciones diseñadas para la
representación gráfica de datos. Estas funciones se dividen en dos
grandes grupos: funciones gráficas de alto nivel y de bajo nivel.

Las funciones de alto nivel son las que generan gráficos completos,
mientras que las de bajo nivel se limitan a añadir elementos a un
gráfico existente.

Las tres formas más habituales de crear gráficos con R son usar las
funciones de R base, usar la librería ggplot2 o el paquete lattice
1.
El paquete graphics es un paquete base para la construcción de
gráficos, la función plot es la función más básica para crear
gráficos en R.

2. En el paquete ggplot2 los gráficos se crean mediante una estructura


de capas que permite añadir más elementos al gráfico empleando
una sintaxis sencilla.

3. La librería lattice nace como alternativa a las herramientras gráficas


de R base, este paquete es de especial relevancia a representaciones
de datos multivariantes.
Tipos de Gráficos

BARRAS
Es adecuado para variables
dependientes agrupadas
por tratamientos.

DISPERSIÓN
Gráfico de dispersión de las dos
variables enfrentadas coloreadas en
función del tratamiento.

HISTOGRAMA
Ayudan a entender la distribución de los
datos con los que estás trabajando.
Tiene frecuencias para cada variable
DE DENSIDAD
Forma alternativa de ver la distribución de
nuestros datos. Visualmente es más fácil
ver si los datos siguen una distribución
normal.

DE CA JA Y BIGOTES
Se utilizan para representar
características de los datos, como la
dispersión o la asimetría

TRIDIMENSIONALES
Persp() esta función realiza
representaciones de superficies.
ESTADÍSTICA
DESCRIPTIVAS EN R
ESTADÍSTICA DESCRIPTIVAS

Área de la estadística que busca


describir la información que se
contiene en una base de datos.

Esta descripción debe ser de manera


resumida y se puede realizar
mediante medidas estadísticas,
tablas o gráficas.
1. CARGAR DATOS EN R datos <- read.csv("tu_archivo.csv")

RESUMEN BÁSICO CON LA summary(datos)

FUNCIÓN ‘SUMMARY( )’
2. Descargar Rtools
PAQUETE SUMMARYTOOLS install.packages("summarytools")

PARA UN RESUMEN
library(summarytools)
COMPLETO
create_report(datos)

CÁLCULO DE ESTADÍSTICAS DESCRIPTIVAS


FUNCIÓN ‘SUMMARY( )’
Min Mínimo- Valor más bajo del conjunto de datos.

1er Cuartil – Valor que separa el 25% inferior de los datos


1st Qu. ordenados de manera ascendente
Media - valor que se obtiene al dividir la suma de un
Mean conglomerado de números entre la cantidad de ellos.

Mediana - valor de la variable de posición central en un


Median conjunto de datos ordenados. (50%)

3er Cuartil – Valor que separa el 75% inferior de los datos


3rd Qu. ordenados de manera ascendente.

Max Máximo- Valor más alto del conjunto de datos.


Desviación Absoluta Media- mide la dispersión promedio de
MAD los datos con respecto a su media

Rango Intercuartílico - diferencia entre el tercer cuartil (Q3) y


IQR el primer cuartil (Q1)
Desviación Estándar - medida de la variabilidad relativa de
CV los datos en relación con su media
Asimetría - Indica si los valores de una distribución están más
Skewness concentrados en un lado (izquierdo o derecho) del valor central

PAQUETE
SUMMARYTOOLS
ESTADÍSTICAS
Varianza
ESPECÍFICAS
var(datos$Columna)

Mínimo min(datos$Columna) Máximo max(datos$Columna)

Media mean(datos$Columna)
1er Cuartil
quantile(datos, probs =
0.25)

Desviación sd(datos$Columna)
Mediana median(datos$Columna)
Estándar
apply permite ejecutar una función a través
de las filas o las columnas. Para esto tenemos
apply(as.matrix(datos[,2:4]), 2, sd)
que tener en cuenta dos cosas:

• los datos deben estar en formato matriz. ## A B C


## 11.3 5.43 2 106.163
• Una matriz no puede contener variables
cualitativas

lapply permite aplicar la función sin necesidad de unlist(lapply(datos[,2:4], median))


transformar nuestros datos a matriz.
## A B C
unlist para no verlo como lista ## 12 94 43
HISTOGRAMAS Y DISTRIBUCIONES DE DATOS
DE LA ESTADÍSTICA DESCRIPTIVAS EN R

En R, puedes crear
histogramas y visualizar
distribuciones de datos para
explorar la forma y la
estructura de tus datos. Esto es
útil en estadísticas descriptivas
para comprender cómo se
distribuyen los valores en una
variable
PASOS
1. CREAR UN HISTOGRAMA
Puedes crear un histograma utilizando la hist(datos,
main = "Histograma de Datos",
función hist(). Esta función divide tus
xlab = “Distancia",
datos en intervalos (bins) y cuenta ylab = "Frecuencia")
cuántos valores caen en cada intervalo.

hist(datos, 2. PERSONALIZAR EL HISTOGRAMA


main = "Histograma de Datos",
xlab = “Distancia", Puedes personalizar el histograma
ylab = "Frecuencia",
col = "blue",
agregando etiquetas de título y ejes,
border = "black", cambiando el número de intervalos
breaks = 10) (bins) y otros aspectos.
Histograma de Datos
3. AÑADIR UNA CURVA DE
DISTRIBUCIÓN
Para visualizar la distribución
teórica de tus datos, puedes
superponer una curva de densidad
sobre el histograma utilizando la
función lines().

x <- seq(min(distancia), max(distancia),


length = 40)
f <- dnorm(x, mean = mean(distancia),
sd = sd(distancia))
lines(x, f, col = “red", lwd = 2)
INTERPRETACIÓN DE RESULTADOS

Valor promedio de tus datos, representa el punto de equilibrio de la


MEDIA distribución y tiene influencia de los valores extremos

Valor central en tus datos cuando están ordenados. Si es igual a la media, tu


MEDIANA distribución puede ser simétrica. Si es diferente, podría indicar que tus
datos tienen valores atípicos o una distribución asimétrica.​

DESVIACIÓN Medidas te indican cuánto varían tus datos en relación con la media. Una
ESTÁNDAR Y desviación estándar alta significa que tus datos están dispersos, mientras
que una baja significa que están agrupados cerca de la media.
VARIANZA
INTERPRETACIÓN DE RESULTADOS

CUARTELES (Q1, Q3) Y RANGO


HISTOGRAMA
INTERCUARTÍLICO (IQR)

Muestra la forma de la distribución


Los cuarteles y el IQR te indican la
de datos. Puedes interpretar si es
dispersión en la mitad central de tus
simétrica o asimétrica, si tiene
datos. Puedes usarlos para detectar
múltiples modas (picos), y si hay
valores atípicos.
valores atípicos en las colas.
ANÁLISIS DE DATOS EN R
ANÁLISIS PREDICTIVO
Análisis de datos es el
proceso de examinar,
limpiar, transformar y
modelar datos con el fin
de descubrir información
útil, obtener conocimiento
y comprender mejor los
patrones presentes en los
datos.
TÉCNICAS DE ANÁLISIS
• Minería de datos. implica el uso de algoritmos sofisticados que buscan patrones o
relaciones entre variables ocultas en estos datos que pueden ser útiles para la toma de
decisiones.

• Modelado predictivo. análisis estadístico que busca predecir resultados futuros basados
en los datos pasados y presentes.

• Big Data Analytics. procesamiento masivo y complejo de información no estructurada


para descubrir patrones y tendencias interesantes en ellas.

• Análisis Textual. extracción automatizada del contenido relevante del texto. Esta técnica
es muy útil para descubrir opiniones sobre productos o temas concretos a partir del
contenido generado por los usuarios.

• Visualización Avanzada. extraer conjuntos de datos mediante gráficos interactivos e


interactivamente modificables como mapas geográficos o diagramas circulares.
ANÁLISIS PREDICTIVO
El análisis predictivo en R es una de las aplicaciones más comunes del modelado de
datos. Con R, puedes utilizar diferentes técnicas de modelado, como regresión lineal,
regresión logística, árboles de decisión, y más, para predecir valores futuros o
clasificar datos en diferentes categorías.
FUNCIONES

• lm(): Esta función se utiliza para ajustar modelos de regresión lineal.


• glm(): Esta función se utiliza para ajustar modelos de regresión logística.
• tree(): Esta función se utiliza para ajustar modelos de árboles de decisión.
• randomForest(): Esta función se utiliza para ajustar modelos de bosques
aleatorios.
• caret(): Esta función se utiliza para realizar validación cruzada y selección de
modelos.
REGRESIÓN LINEAL
Supongamos que tenemos un
conjunto de datos que
representa la cantidad de horas
de estudio y las calificaciones
obtenidas por un grupo de
estudiantes. Podemos utilizar la
función lm() para ajustar un
modelo de regresión lineal y
predecir las calificaciones en
función de las horas de estudio.
REGRESIÓN LÓGISTICA
Supongamos que tenemos un
conjunto de datos que
representa si un correo
electrónico es spam o no, y
queremos predecir si un nuevo
correo electrónico es spam o no.
Podemos utilizar la
función glm() para ajustar un
modelo de regresión logística y
realizar la predicción.
REGRESIÓN LINEAL
Es una técnica estadística que nos ayuda a predecir el valor de una variable con
los valores de otra.

Ejemplos:

• Predicción de ventas basadas en la publicidad


• Temperatura y consumo de helados
• Relación entre el tiempo de estudio y las calificaciones
• Predicción de precio de una casa en base a metros cuadrados
• Estimación de la producción de cultivos en base a la cantidad de lluvia
• Consumo de calorías en función de la cantidad de ejercicio
Objetivo: Predecir la variable "edad" utilizando la variable "altura" como predictor.

regresion: objeto de almacén para los resultados del modelo de regresión lineal.

lm(): función para ajustar modelos de regresión lineal.

edad ~ altura: relación


"edad" es tu variable dependiente, y que está relacionada con "altura".

data = datos: especifica donde se encuentran las variables que estás utilizando en el
modelo.
• Coefficients: valores estimados para conseguir esa predicción o regresión.

Y=b+m*x

Y = b0 + b1 * x

Edad = (-11.2397) + 0.1527 * altura


• Multiple R-squared: mide el nivel de
ajuste del modelo comprendido en el
intervalo [0-1]
1 indica un ajuste perfecto
0 que no existe ajuste

• p-value: es un valor que no permite


medir el nivel de significación del
estudio.
Los estudios suelen realizarse bajo un
nivel de confianza del 95%, o lo que es lo
mismo, un nivel de significación del 0,05.

• Pr(>|t|): representa el valor p de


cada una de las variables. Este valor
lo veremos mejor cuando estemos
realizando una regresión múltiple,
pero básicamente viene a decirnos si
la variable independiente (en este
caso ALTURA) es válida para predecir
la variable dependiente (en este caso
EDAD).
PROGRAMACIÓN EN R
Definición de Funciones

En R, puedes definir funciones utilizando la palabra clave function. Una función es un


conjunto de instrucciones que realiza una tarea específica, acepta argumentos como
entrada y puede devolver resultados como salida.

Ejemplo de suma de dos números:

sumar <- function(a, b) {


resultado <- a + b
return(resultado)
}

# Llamando a la función
resultado_suma <- sumar(5, 3)
cat("La suma es:", resultado_suma) # Imprime:
La suma es: 8
Estructura de datos avanzadas

1. Listas
• Una lista es una estructura de datos que puede contener elementos de
diferentes tipos (números, caracteres, vectores, data frames, etc.).
• Puedes crear listas utilizando la función list().
• Accedes a los elementos de una lista utilizando corchetes [].

mi_lista <- list(nombre = "Juan", edad = 30, notas


= c(85, 90, 78))
primer_nombre <- mi_lista$nombre
2. Data Frames
• Un data frame es una estructura de datos tabular similar a una hoja de
cálculo de Excel.
• Contiene columnas que pueden ser de diferentes tipos, como numéricas, de
caracteres o factores.
• Puedes crear data frames con la función data.frame().
• Accedes a los datos en un data frame usando el operador $ o corchetes [].
estudiantes <- data.frame(nombre = c("Juan", "Ana",
"Luis"),
edad = c(30, 25, 28),
calificaciones = c(85, 90, 78))
notas_juan <- estudiantes$calificaciones[1]
Ciclos y Bucles

1. For
• Se utiliza para iterar sobre una secuencia de valores o elementos.
• Sintaxis:

for (variable in secuencia) {


# Instrucciones que se repiten en cada iteración
}

• Ejemplo:

for (i in 1:5) {
cat("Iteración:", i, "\n")
}
2. While
• Se utiliza para repetir un conjunto de instrucciones mientras una
condición sea verdadera.
• Sintaxis:
while (condición) {
# Instrucciones que se repiten mientras la condición sea
verdadera
}

• Ejemplo:

x <- 1
while (x <= 5) {
cat("Valor de x:", x, "\n")
x <- x + 1
}
PUBLICACIÓN Y COMPARTICIÓN
DE RESULTADOS
RMARKDOWN

R Markdown es un formato que permite una fácil creación de documentos,


presentaciones dinámicas y informes de R. Markdown es un formato de sintaxis
simple para crear documentos en HTML, PDF, y Word.

El R Markdown es un lenguaje marcado ligero que nos permite escribir informes que
contengan código R. El lenguaje Markdown suge con el objetivo de aligerar las marcas
en los lenguajes Markup, principalmente el HTML, pero tambien el LaTeX. Cualquiera
debería poder leer y entender un documento Markdown visualizado en un editor de
texto (sin procesar).
Si no se
cumple, pues
no y ya, te
quedas sin
markdown
El R Markdown permite la introducción
de tozos (chunks) de código RR que se
pueden ejecutar dentro de la propia
libreta, o en la salida en un
documento .pdf, .html o .doc.

Es además capaz de interpretar


correctamente
comandos HTML y LaTeX. Se pueden
crear (de un modo sencillo)
presentaciones, informes, libros web.
RQUERIMENTS
Los archivos R Markdown nos permiten
• La versión mas reciente de R.
combinar código, resultados y texto.
• RStudio.
• Instalar el paquete knitr, rmarkdown.
• Conocimientos en markdown.
OBJETIVO
El objetivo de esta clase es aprender a trabajar bajo dicho entorno para facilitar 3
aplicaciones:

Documentar el trabajo que realizamos, incluyendo


comentarios sobre los procedimientos.

Compartir código y resultados con gente que también


trabaja en R.

Compartir resultados con gente que no trabaja en R, y


simplemente necesita enfocarse en las conclusiones.
INSTALACION Y EJECUCION DE RMARKDOWN
El encabezado YAML

Necesitamos instalar y cargar el


paquete rmarkdown, pero por lo
general no hace falta hacerlo .
Se trata de un archivo de
extensión .Rmd. Contiene en su
estructura tres tipos importantes de
BLOQUE DE CODIGO EN R
contenido:
Un encabezado YAML (“Yet another
markup lenguage”) rodeado de - - -
Bloques de código de R rodeado de
```.
Cuando abrimos un archivo .Rmd,
obtenemos una interfaz de notebook donde
el código y el output se encuentran
intercalados (en lugar de aparecer el output
sólo en la consola, panel de Plots y/o
modificaciones en el entorno de trabajo).

Asi al aplicar los tres tipos de contenido en


para el archivo .Rmd se tiene el formateo
de texto.

TEXTO CON FORMATO


FORMATEO DE TEXTO Encabezado YAML

La prosa en los archivos .Rmd está escrita


en Markdown, una colección simple de Texto
convenciones para dar formato a archivos
de texto plano. Markdown está diseñado
para ser fácil de leer y fácil de escribir,
siendo también muy fácil de aprender.
Codigo en R

Eey eey ey
Entonces, ¿eso
es Markdown? Texto
BASICAMENTE SI
PERO ES LA BASE PARA
GENERAR EL INFORME
GENERAR UN INFORME
Para crear un informe en RStudio solo hay
que elegir la opción “File”+“New File”+“R
Markdown”. Podemos elegir el destino del
informe: una página web que se podrá ver
con un navegador, un documento Word o
un PDF.

Esto abrirá un fichero que incluye ya


contenido de texto y de lenguaje
RMarkdown (para ello se supone que ya
escribiste el codigo en R listo para
exportar).
Una vez seleccionado el formato de salida
del informe, aparecerá en el panel
de guiones o
scripts, el fichero que acabamos de crear.E
ste contiene una cabecera,
con el título, autor, fecha y formato de salid
a del informe. En este caso he seleccionado
como formato de salida una página Web p
or lo que pone “html_document”.
Es recomendable utilizar ese informe como pl
antilla,
y editar el fichero cambiando el contenido res
petando la estructura del fichero, en cuanto a
que hay partes de texto y hay partes
de comandos.
Los comandos se ejecutarán cada vez que
se quiera generar la salida del informe (PDF,
Word o HTML), para lo que
se usarán las opciones de menú “Code”+“Run”
(o el botón dedicado que hay en el panel de
scripts).
Asi queda a la decision de cada ususario de
modificar la plantilla de salida del codigo en r.
PUNTOS IMPORTANTES PARA LA
CREACION DEL ARCHIVO
Para el uso de graficos (imagenes, tablas, etc)

En el mismo codigo utilizado para generar el


rmarkdown se integran las imagenes de tu
dispositivo, llamandolas al script con el comando
con el que se escribio el origen de la imagen.

Asi exportanto el archivo simplificado, la imagen


sale como recurso visual en lugar de codigo,
gracias a la ejecucion de Rmardown en el script.

Una alternativa opcional es mostrar ciertas lineas


de codigo y cuales no (las lineas que son visibles
y las de ejecucion) y tambien las que no son de
relevancia en el script
COMO USAR RMARKDOWN
Para poder comenzar a usarlo
simplemente se insalan los
paquetes iniciales que son
"htmltools" y "htmlwidgets" en
un scrip inicial desde la
consola, se instalan y se activan
para la creacion de los
informes en html (como lo son
para le caso de los paquetes)
Lo necesario para comenzar
con la creacion del informe es
un codigo inicial y procedemos
a generar el archivo, ya sea en
html, pdf o word.
Posteriormente ya teniendo nuestro
codigo listo para ser exportado,
escogeriamos la ruta donde se guarda
el documento y el tipo de documento
que se requiere para ser exportado a la
seccion de archivos del usuario y listo
para su visualizacion.

Al visualizar el ejemplo notamos que el


archivo fue guardado correctamente y
estructurado adecuadamente segun su
codigo base, este ejemplo esta
exportado en un archivo html, donde
no es editable a simple manipulacion de
externos.
Y asi se obtiene
el informe en
Rmarkdown 
PTT. Es el mismo procedimiento en
mac
PRACTICA Y
EJERCICIOS
EJERCICIO I
Un profesor quiere conocer la media, mediana, calificación máxima y mínima
de su grupo que presentaron el primer parcial.
Además, quiere un grafica para conocer la distribución de las calificaciones.
Las calificaciones son las siguientes:

70 95 80 73 100

55 90 85 65 50

60 90 90 48 16
# Crear un vector para almacenar las calificaciones de los estudiantes
calificaciones <- c()

# Solicitar al usuario que ingrese las calificaciones una por una


for (i in 1:15) {
cat("Ingresa la calificación del estudiante", i, ": ")
calificacion <- as.numeric(readline())

# Verificar que la calificación ingresada sea válida (por ejemplo, entre 0 y 100)
if (calificacion >= 0 && calificacion <= 100) {
calificaciones <- c(calificaciones, calificacion)
} else {
cat("La calificación ingresada no es válida. Por favor, ingresa una calificación entre 0 y 100.\n")
i <- i - 1 # Reintentar la entrada para el mismo estudiante
}
}
# Calcular estadísticas
promedio <- mean(calificaciones)
mediana <- median(calificaciones)
calificacion_minima <- min(calificaciones)
calificacion_maxima <- max(calificaciones)

# Imprimir las estadísticas


cat("Promedio de calificaciones:", promedio, "\n")
cat("Mediana de calificaciones:", mediana, "\n")
cat("Calificación mínima:", calificacion_minima, "\n")
cat("Calificación máxima:", calificacion_maxima, "\n")

# Crear un gráfico de distribución de calificaciones


hist(calificaciones, main="Distribución de Calificaciones",
xlab="Calificaciones", ylab="Frecuencia",
col="lightblue", border="black")

# Mostrar el gráfico
EJERCICIO II

Un estudiante tiene una exposición sobre los países con mayor capital, de
una base de datos quiere graficar el top 15 de países con mayor PIB en el
2012.
El link de la base de datos es la siguientes:

"https://raw.githubusercontent.com/jimmyzac/Contexto-FCFM-UANL/main/
datos_bancomundial.csv"
#Descargar las librerías necesarias
library(tidyverse)
install.packages("viridis")
library(viridis)

# Importar la base de datos


mundo <- read.csv("https://raw.githubusercontent.com/jimmyzac/Contexto-
FCFM-UANL/main/datos_bancomundial.csv")

# Filtrar la base de datos


PIB12 <- mundo %>% filter (year == 2012) %>% select(country,PIB_2015)

#Ordenar y obtener el top 15


PIB12 <- PIB12 %>% arrange(-PIB_2015)
Top15PIB12 <- PIB12 %>% top_n(15)
#Crear la grafica
ggpib12 <- ggplot(Top15PIB12, aes(x=reorder(country,PIB_2015), y=PIB_2015,
fill=PIB_2015)) + geom_bar(stat = 'identity') +
scale_y_continuous(expand = c(0,0))+
ggtitle('Top 15 países con mayor PIB en 2012') +
theme_classic() +
theme(axis.text.x = element_text(angle = 45, hjust = 1)) +
xlab("paises") +
ylab('PIB') +
scale_fill_viridis_c(option= "turbo", direction = 1)

#Mostrar al grafica
ggpib12
RECURSOS ADICIONALES
Aprendizajes
adicionales para R
Según un artículo publicado por forbes en 2016, cerca del 80% del tiempo de un proyecto
relacionado con datos se dedica a la obtención y preparación de los datos. A la vez, es la
parte que menos disfrutan los científicos de datos. Cuando comienzan el proyecto
seguramente sabes lo que hay que hacer una vez que tengas la data perfecta. Sin
embargo, quedan tres retos:
1. Obtener la data
2. Data wrangling
3. Poner en código lo que sabes que hay que hacer

Me huele a novato

Por todo esto, es crucial que tus habilidades de data wrangling sean las mejores, para que
puedas dedicar más tiempo al modelado de los datos. Aquí algunos aprendizaje para
fortalecer tu aprendizaje en R
Aprender ingles
Saber inglés implica acceso
más rápido a más
información, especialmente
en StackOverflow. Otra
ventaja es que puedes
escribir código en inglés, lo
que hará que todo el código
esté en un solo idioma y sea
más legible. StackOverflow
es una plataforma de ayuda
mundial en el entorno
informatico
Aprende a usar El análisis exploratorio y la presentación de
resultados son claves en tu proyecto. Por eso
ggplot2 necesitas graficar bien y rápido, y lo mejor
para eso es ggplot2. La sintaxis es
consistente, legible y los gráficos se ven muy
bien. Una vez que lo aprendas, no vas a
querer usar más nada. Cuando utilices las
funciones de gráficos de R base (o peor aún,
matplotlib en python) te vas a sentir como
Morty después de experimentar un suelo
nivelado por Rick. Para ahorrar tiempo en
búsquedas, usa la chuleta de RStudio (Data
Visualization Cheat Sheet) y consigue el libro
R Graphics Cookbook.
Lo que más delata a un novato en R es
Aprende a usar usar bucles for. Esto bucles son lentos y
además reducen la legibilidad del código.
purrr La mejor alternativa es usar las funciones
de purrr, que es el paquete que aprovecha
que la mayoría de los bucles, sobre todo los
relacionados con procesamiento de datos,
siguen el patrón dividir-aplicar-combinar, o
split-apply-combine. La curva de
aprendizaje de purrr puede ser un poco
lenta.
Crea un paquete en
R
Crear un paquete es más fácil de
lo crees y te va a enseñar
muchas cosas, como
documentar tus funciones y
organizar tu código, pero lo más
importante es que aprenderás
test-driven development, una
metodología de programación en
la que te pruebas que tu código
hace lo que debería hacer de
una manera automatizada
Introducción a Data Science:
Programación Estadística con R
Una de las maneras más convenientes para aprovechar el lenguaje r y la
disponibilidad de tiempo para la exploración de nuestras habilidades es
adentrándonos a la ciencia de datos enfocado en la estadística con la
programación en r.
El Data Science se encarga de estudiar de dónde viene la información, qué
representa y cómo se puede convertir en un recurso valioso en la creación
de negocios y estrategias. Para ello, busca extraer grandes cantidades de
datos para identificar patrones para ayudar a una organización a controlar
los costes, aumentar la eficiencia, reconocer nuevas oportunidades de
mercado y aumentar la ventaja competitiva de la organización.
Curso sobre data sciencie.
Introducción a Data Science:
Programación Estadística con R

Este curso te proporcionará las bases del


lenguaje de programación estadística R, la
lengua franca de la estadística, el cual te
permitirá escribir programas que lean, manipulen
y analicen datos cuantitativos. Te explicaremos
la instalación del lenguaje; también verás una
introducción a los sistemas base de gráficos y al
paquete para graficar ggplot2, para visualizar
estos datos. Además también abordarás la
utilización de uno de los IDEs más populares
entre la comunidad de usuarios de R, llamado
RStudio.

https://www.coursera.org/learn/intro-data-science-programacion-estadistica-r?action=enroll
Introduccion a la
probabilidad y datos con R
Este curso le presenta el muestreo y la
exploración de datos, así como la teoría
básica de la probabilidad y la regla de
Bayes. Examinará varios tipos de métodos
de muestreo y discutirá cómo dichos
métodos pueden afectar el alcance de la
inferencia. Se cubrirá una variedad de
técnicas exploratorias de análisis de datos,
incluidas estadísticas resumidas numéricas
y visualización de datos básicos. Se le
guiará en la instalación y el uso de R y
https://www.coursera.org/learn/probability-intro
RStudio (software estadístico gratuito) y
utilizará este software para ejercicios de
laboratorio y un proyecto final.
CONCLUSIONES
El lenguaje de programación R es una herramienta poderosa y versátil que se ha
convertido en una opción popular entre los científicos de datos, estadísticos y analistas
debido a sus capacidades estadísticas y de análisis de datos. Algunas conclusiones sobre el
lenguaje de programación R son:

• Especialización en estadísticas y análisis de datos: R se ha desarrollado


específicamente para estadísticas y análisis de datos, lo que lo convierte en una opción
excelente para tareas relacionadas con la estadística, la minería de datos y la
visualización de datos.
• Amplia comunidad de usuarios y paquetes: R cuenta con una comunidad activa de
usuarios que contribuyen con paquetes y bibliotecas, lo que amplía su funcionalidad y
facilita la resolución de problemas específicos en diferentes áreas.

• Gráficos de alta calidad: R es conocido por su capacidad para generar gráficos de alta
calidad y personalizables. Esto es especialmente valioso para la visualización de datos
en investigaciones científicas y presentaciones.

• Integración con otras herramientas: R se integra bien con otros lenguajes de


programación como Python, SQL y herramientas de BI como Tableau y Power BI, lo que
permite a los usuarios combinar diferentes herramientas según sus necesidades.
• Actualizaciones y desarrollo continuo: La comunidad de R está en constante evolución, lo
que significa que el lenguaje sigue desarrollándose y mejorando con el tiempo. Esto garantiza
que se mantenga relevante en un entorno de análisis de datos en constante cambio.

• Licencia de código abierto: R es un software de código abierto, lo que significa que es


gratuito y tiene una comunidad activa de desarrolladores que contribuyen al código y a la
documentación.

• Recomendado para profesionales de datos: R es especialmente adecuado para


profesionales de datos y analistas que trabajan en proyectos de análisis de datos y
estadísticas, pero puede requerir complementarse con otros lenguajes o herramientas para
tareas específicas.
• Aprendizaje inicial desafiante: Para los principiantes, R puede tener una curva de
aprendizaje pronunciada debido a su sintaxis única y a la necesidad de comprender
conceptos estadísticos.

• Disponibilidad de IDEs: RStudio es un entorno de desarrollo integrado (IDE) ampliamente


utilizado para programar en R, que facilita la escritura de código, la visualización de
resultados y la gestión de proyectos.

• Aplicaciones en campos diversos: R se utiliza en una variedad de campos, como la


bioinformática, la epidemiología, la economía, la investigación social y más. Su versatilidad lo
hace adecuado para una amplia gama de aplicaciones.
En resumen, el lenguaje de programación R es una herramienta valiosa en el ámbito de la
estadística y el análisis de datos, con una comunidad activa, una amplia gama de paquetes
disponibles y una capacidad sólida de generación de gráficos. Si bien puede tener una curva
de aprendizaje pronunciada, su especialización en análisis estadístico lo convierte en una
opción importante para profesionales de datos y científicos.
BIBLIOGRAFIAS
• https://datacritica.org/2021/03/18/instalacion-de-r-y-rstudio-en-windows/

• Phobos. (s. f.). Sintaxis de r.


http://rstadistica.blogspot.com/2015/11/sintaxis-de-r.html#:~:text=La%20sintaxis%20en%20R%20
es,forma%20adecuada%20y%20poder%20entenderse
.

• https://r-coder.com/histograma-r/

También podría gustarte