CONCEPTUALIZACIÓN E INTERFAZ DE R
1. ¿Qué es un objeto en R? un objeto es una estructura de datos que puede contener información de diferentes tipos, como números, texto, vectores, matrices, listas, data frames, entre otros.
¿Cómo se crea y se manipula un objeto?
Manipular un objeto:
2. ¿Cuál es la diferencia entre una variable y un objeto?
En R Studio, una variable es un espacio de almacenamiento que se utiliza para guardar datos, como números, texto o valores lógicos. Por otro lado, un objeto en R Studio es una estructura de datos más compleja que puede contener múltiples variables y otros objetos.
3. ¿Qué es un script en R?Es un archivo que contiene código R que se ejecuta secuencialmente para realizar análisis de datos y otras tareas en el entorno de R Studio.
4. Explica cómo se ejecuta un script y cuál es su utilidad. Para ejecutar un script en R, sigue estos pasos:
Abrir R Studio:Inicia R Studio en tu computadora.
Abrir el script: Abre el archivo de script que deseas ejecutar.
Haz clic en "Archivo" en la barra de menú de R Studio, selecciona "Abrir archivo" y elige el archivo de script.
Ejecutar el script:
Haz clic en el botón "Ejecutar" (con forma de flecha verde) que se encuentra junto a la línea de código que deseas ejecutar.
Selecciona el código que deseas ejecutar y presiona Ctrl + Enter (Cmd + Enter en Mac) para ejecutar la selección.
Para ejecutar todo el script, puedes hacer clic en "Editar" en la barra de menú y luego seleccionar "Ejecutar todo" o utilizar el atajo de teclado Ctrl + Shift + Enter (Cmd + Shift + Enter en Mac).
Ejecutar un script en R es una práctica fundamental para automatizar tareas, garantizar la reproducibilidad de los resultados, organizar el código de manera efectiva, documentar el proceso y facilitar la depuración de errores.
5. Describe la función de la ventana de comandos en el entorno de R.
Es una herramienta poderosa que te permite ejecutar comandos de R de forma interactiva, acceder al historial de comandos, utilizar funciones de autocompletado, ver mensajes y resultados, depurar errores y trabajar con scripts de manera eficiente.
6. ¿Cuáles son las ventajas de usar la ventana de comandos frente a un script?
Interactividad y Pruebas Rápidas: la interactividad y la capacidad de realizar pruebas rápidas son esenciales para la exploración de datos, la experimentación con diferentes enfoques de análisis, la corrección de errores y la toma de decisiones informadas en el desarrollo de código en R.
Retroalimentación Inmediata: Permite identificar errores, depurar eficientemente tu código, verificar la validez de los resultados, experimentar de manera flexible y optimizar el rendimiento del código, todo en tiempo real.
Flexibilidad y Exploración: La ventana de comandos permite una mayor flexibilidad para realizar análisis ad hoc, probar diferentes enfoques y explorar datos de forma interactiva sin la necesidad de estructurar un script completo.
7. Nombra al menos cinco tipos de objetos que existen en R. Describe las características y usos de cada uno.
variable_1 <- c("a","b")
variable_1
## [1] "a" "b"
A <- matrix(c(56,45,
25,33),
nrow = 2,
ncol = 2)
matrix(A)
## [,1]
## [1,] 56
## [2,] 45
## [3,] 25
## [4,] 33
data("mtcars")
df<-data.frame(X<-c("mtcars"))
Unidades <- c(2, 1, 10)
mi_lista <- list(nombre = "Juan", edad = 30, casado = TRUE)
mi_lista
## $nombre
## [1] "Juan"
##
## $edad
## [1] 30
##
## $casado
## [1] TRUE
Son objetos especiales en R que encapsulan un conjunto de instrucciones y pueden ser invocadas por su nombre. Las funciones son fundamentales para la programación en R y permiten reutilizar código.
8. ¿Qué tipo de objeto se debe utilizar para almacenar datos categóricos?
Para almacenar datos categóricos en R, se recomienda utilizar objetos de tipo factor.
9. ¿Cuáles son las funciones básicas de R para importar y exportar datos?
Importar datos:
Desde archivos de texto:
read.table(): Importa datos desde un archivo de texto delimitado por espacios, comas u otros caracteres.
read.csv(): Importa datos desde un archivo CSV (valores separados por comas).
read.delim(): Importa datos desde un archivo delimitado, generalmente por tabulaciones.
Desde archivos de Excel:
read_excel() (del paquete readxl): Importa datos desde archivos de Excel (.xls y .xlsx).
read.xlsx() (del paquete xlsx): Otra función para importar datos desde archivos de Excel.
Exportar datos:
archivos de texto o CSV: write.table(): Exporta datos a un archivo de texto delimitado. write.csv(): Exporta datos a un archivo CSV.
archivos de Excel: write.xlsx() (del paquete openxlsx): Exporta datos a un archivo de Excel (.xlsx).
10. Menciona al menos tres funciones que se utilizan comúnmente para manipular datos en R
grep()
sort()
rbind()
11. ¿Cómo se define la clase de un objeto en R? ¿Cuáles son
algunos ejemplos de las posibles clases que un objeto puede
tener?
En R, la clase de un objeto se define mediante la función class().
Ejemplos
Numeric: Para números enteros o de punto flotante.
Character: Para caracteres o cadenas de texto.
Logical: Para valores lógicos TRUE o FALSE.
MANEJO DE DATOS BÁSICOS:
name1=c("Samara", "Soley", "Juan", "Javier", "Santiago")
name1
## [1] "Samara" "Soley" "Juan" "Javier" "Santiago"
age1=c(22,18,16,28,20)
age1
## [1] 22 18 16 28 20
city1=c("Neiva", "Espinal", "Rivera", "Neiva", "Cali")
city1
## [1] "Neiva" "Espinal" "Rivera" "Neiva" "Cali"
data=data.frame(name1,age1,city1)
data
## name1 age1 city1
## 1 Samara 22 Neiva
## 2 Soley 18 Espinal
## 3 Juan 16 Rivera
## 4 Javier 28 Neiva
## 5 Santiago 20 Cali
data=data[order(data$age1), ]
age1[+c(which(age1>30))]
## numeric(0)
age1
## [1] 22 18 16 28 20
mayor_thirty=data[data$age1>30, ]
mayor_thirty
## [1] name1 age1 city1
## <0 rows> (or 0-length row.names)
MANIPULACIÓN DE DATOS:
name1=c("Samara", "Soley", "Juan", "Javier", "Santiago")
name1
## [1] "Samara" "Soley" "Juan" "Javier" "Santiago"
age1=c(22,18,16,28,20)
age1
## [1] 22 18 16 28 20
city1=c("Neiva", "Espinal", "Rivera", "Neiva", "Cali")
city1
## [1] "Neiva" "Espinal" "Rivera" "Neiva" "Cali"
data=data.frame(name1,age1,city1)
data
## name1 age1 city1
## 1 Samara 22 Neiva
## 2 Soley 18 Espinal
## 3 Juan 16 Rivera
## 4 Javier 28 Neiva
## 5 Santiago 20 Cali
exp1=c(4,2,5,3,1)
exp1
## [1] 4 2 5 3 1
data <- cbind(data,exp1)
data
## name1 age1 city1 exp1
## 1 Samara 22 Neiva 4
## 2 Soley 18 Espinal 2
## 3 Juan 16 Rivera 5
## 4 Javier 28 Neiva 3
## 5 Santiago 20 Cali 1
data$city1[data$city1 == "Neiva"] <- "Cali"
data <- subset(data, name1 != "Samara")
data
## name1 age1 city1 exp1
## 2 Soley 18 Espinal 2
## 3 Juan 16 Rivera 5
## 4 Javier 28 Cali 3
## 5 Santiago 20 Cali 1
data <- subset(data, name1 != "Ángel")
data
## name1 age1 city1 exp1
## 2 Soley 18 Espinal 2
## 3 Juan 16 Rivera 5
## 4 Javier 28 Cali 3
## 5 Santiago 20 Cali 1
new<- data.frame (name1=c("Liz", "Juan", "Samu"),
age1=c(16,18,20),
city1=c("Neiva", "Cali", "Ibague"),
exp1=c(2,3,6))
new
## name1 age1 city1 exp1
## 1 Liz 16 Neiva 2
## 2 Juan 18 Cali 3
## 3 Samu 20 Ibague 6
VISUALIZACIÓN DE DATOS:
counter <- table(data$city1)
counter
##
## Cali Espinal Rivera
## 2 1 1
df_counter <- as.data.frame(counter)
df_counter
## Var1 Freq
## 1 Cali 2
## 2 Espinal 1
## 3 Rivera 1
colnames(df_counter) <- c("City1", "Amount")
colnames(df_counter)
## [1] "City1" "Amount"
GRAFICO
new<- data.frame (name1=c("Liz", "Juan", "Samu"),
age1=c(16,18,20),
city1=c("Neiva", "Cali", "Ibague"),
exp1=c(2,3,6))
new
## name1 age1 city1 exp1
## 1 Liz 16 Neiva 2
## 2 Juan 18 Cali 3
## 3 Samu 20 Ibague 6
ggplot2::aes(x=city1,y=exp1)
## Aesthetic mapping:
## * `x` -> `city1`
## * `y` -> `exp1`
ANÁLISIS ESTADÍSTICO BÁSICO mtcars
library(datasets)
datos<-mtcars
datos$gear
## [1] 4 4 4 3 3 3 3 4 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 3 3 4 5 5 5 5 5 4
summary(mtcars)
## mpg cyl disp hp
## Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0
## 1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5
## Median :19.20 Median :6.000 Median :196.3 Median :123.0
## Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7
## 3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0
## Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0
## drat wt qsec vs
## Min. :2.760 Min. :1.513 Min. :14.50 Min. :0.0000
## 1st Qu.:3.080 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000
## Median :3.695 Median :3.325 Median :17.71 Median :0.0000
## Mean :3.597 Mean :3.217 Mean :17.85 Mean :0.4375
## 3rd Qu.:3.920 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000
## Max. :4.930 Max. :5.424 Max. :22.90 Max. :1.0000
## am gear carb
## Min. :0.0000 Min. :3.000 Min. :1.000
## 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000
## Median :0.0000 Median :4.000 Median :2.000
## Mean :0.4062 Mean :3.688 Mean :2.812
## 3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :1.0000 Max. :5.000 Max. :8.000
summary
## function (object, ...)
## UseMethod("summary")
## <bytecode: 0x000001f0f86b2d70>
## <environment: namespace:base>
hist(mtcars$mpg)
hist
## function (x, ...)
## UseMethod("hist")
## <bytecode: 0x000001f0f3b704f0>
## <environment: namespace:graphics>
plot(mtcars$mpg, mtcars$mpg)
plot
## function (x, y, ...)
## UseMethod("plot")
## <bytecode: 0x000001f0f70ece78>
## <environment: namespace:base>