Respuestas_R

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?

  1. Asignación directa: Puedes crear un objeto asignando un valor a un nombre utilizando el operador “<-”, “o”, “=”.
  2. Funciones de creación de objetos: Algunas funciones en R generan objetos directamente, como c() para vectores, matrix() para matrices, list() para listas, y data.frame() para data frames.

Manipular un objeto:

  1. Acceder a elementos: Para acceder a elementos específicos se utilizan corchetes “[ ]” o el operador “$” (para data frames y listas).

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?

  1. 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.

  2. 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.

  3. 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.

  1. Vectores:
variable_1 <- c("a","b")
variable_1 
## [1] "a" "b"
  1. Matrices
A <- matrix(c(56,45,
              25,33),
            nrow = 2,
            ncol = 2)
matrix(A)
##      [,1]
## [1,]   56
## [2,]   45
## [3,]   25
## [4,]   33
  1. Data Frames:
data("mtcars")
df<-data.frame(X<-c("mtcars")) 
Unidades <- c(2, 1, 10)
  1. Listas:
mi_lista <- list(nombre = "Juan", edad = 30, casado = TRUE)
mi_lista
## $nombre
## [1] "Juan"
## 
## $edad
## [1] 30
## 
## $casado
## [1] TRUE
  1. Funciones:

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:

  1. read.table(): Importa datos desde un archivo de texto delimitado por espacios, comas u otros caracteres.

  2. read.csv(): Importa datos desde un archivo CSV (valores separados por comas).

  3. read.delim(): Importa datos desde un archivo delimitado, generalmente por tabulaciones.

Desde archivos de Excel:

  1. read_excel() (del paquete readxl): Importa datos desde archivos de Excel (.xls y .xlsx).

  2. read.xlsx() (del paquete xlsx): Otra función para importar datos desde archivos de Excel.

Exportar datos:

  1. archivos de texto o CSV: write.table(): Exporta datos a un archivo de texto delimitado. write.csv(): Exporta datos a un archivo CSV.

  2. 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

  1. Numeric: Para números enteros o de punto flotante.

  2. Character: Para caracteres o cadenas de texto.

  3. 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>