#install.packages("tidyverse")
library(tidyverse)
x <- 5
y <- 2
suma <- x + y
resta <- x - y
multiplicacion <- x * y
division <- x / y
division_entera <- x %/% y
residuo <- x %% y
potencia <- x ^ 2
potencia_2 <- x ^ 2
exponencial <- exp(x)
absoluto <- abs(x)
raiz <- sqrt(x)
#constantes
pi
## [1] 3.141593
radio <- 5
area_circulo <- pi * radio^2
#vectores
a <- c(1,2,3,4,5)
a
## [1] 1 2 3 4 5
b <- seq(1,10, by = 0.5)
b
## [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0
## [16] 8.5 9.0 9.5 10.0
nombres <- c("Juan", "Ana", "Predio", "Carla", "Zara")
nombres
## [1] "Juan" "Ana" "Predio" "Carla" "Zara"
Calificaciones <- c(100, 90, 50, 100, 65)
Calificaciones
## [1] 100 90 50 100 65
#tablas
tabla_de_calificaciones <- data.frame(nombres, Calificaciones)
tabla_de_calificaciones$estatus <- ifelse(tabla_de_calificaciones$Calificaciones >= 70, "aprobado", "reprobado")
summary(tabla_de_calificaciones)
## nombres Calificaciones estatus
## Length:5 Min. : 50 Length:5
## Class :character 1st Qu.: 65 Class :character
## Mode :character Median : 90 Mode :character
## Mean : 81
## 3rd Qu.:100
## Max. :100
str(tabla_de_calificaciones)
## 'data.frame': 5 obs. of 3 variables:
## $ nombres : chr "Juan" "Ana" "Predio" "Carla" ...
## $ Calificaciones: num 100 90 50 100 65
## $ estatus : chr "aprobado" "aprobado" "reprobado" "aprobado" ...
head(tabla_de_calificaciones) #6 por default
## nombres Calificaciones estatus
## 1 Juan 100 aprobado
## 2 Ana 90 aprobado
## 3 Predio 50 reprobado
## 4 Carla 100 aprobado
## 5 Zara 65 reprobado
tail(tabla_de_calificaciones)
## nombres Calificaciones estatus
## 1 Juan 100 aprobado
## 2 Ana 90 aprobado
## 3 Predio 50 reprobado
## 4 Carla 100 aprobado
## 5 Zara 65 reprobado
#instalar packages
#install.packages("tidyverse")
library(tidyverse)
#select para seleccionar columnas
resultados <- select(tabla_de_calificaciones, -nombres)
#filter para filtrar renglones
resultados <- filter(resultados, estatus == "aprobado")
#actividad 1. cálculo IMC
Alumno <- c("Raul", "Renata", "Sergio", "Juan", "Meme")
Peso <- c(78, 52, 78, 90, 56)
Altura <- c(1.80, 1.55, 1.75, 1.86, 1.80)
tabla_salud <- data.frame(Alumno, Peso, Altura)
tabla_salud$IMC <- tabla_salud$Peso / tabla_salud$Altura^2
tabla_salud$resultado <- ifelse(tabla_salud$IMC < 18.5, "Bajo peso", ifelse(tabla_salud$IMC < 29.9, "Alto peso", "Obesidad"))
Signo <- sign(x)
longitud <- length(a)
promedio <- mean(x)
orden_ascendente <- sort(Calificaciones)
orden_descendente <- sort(Calificaciones, decreasing = TRUE)
#Gráficas
semana <- c(1:10)
ventas <- c(150,160,170,180,190,200,210,220,230,240)
plot(semana, ventas, type= "b", main = "Ventas semanales (K USD)")
datosV <- data.frame(semana, ventas)
regresion <- lm(ventas ~ semana, data = datosV)
summary(regresion)
## Warning in summary.lm(regresion): essentially perfect fit: summary may be
## unreliable
##
## Call:
## lm(formula = ventas ~ semana, data = datosV)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.840e-14 -5.025e-15 2.619e-15 1.026e-14 2.745e-14
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.400e+02 1.456e-14 9.614e+15 <2e-16 ***
## semana 1.000e+01 2.347e-15 4.261e+15 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.132e-14 on 8 degrees of freedom
## Multiple R-squared: 1, Adjusted R-squared: 1
## F-statistic: 1.816e+31 on 1 and 8 DF, p-value: < 2.2e-16
datos_nuevos <- data.frame(semana = 11:20)
predict(regresion, datos_nuevos)
## 1 2 3 4 5 6 7 8 9 10
## 250 260 270 280 290 300 310 320 330 340
#Conclusiones R es un lenguaje de programacion util para realizar calculos, principalmente estadisticos, y forma parte de las herramientas de la big data Rsudio es el entorno donde se puede programar R y gracias a los avances aqui tambien se puede programar en phyton y su nombre sera cambiado a posito
en esta introduccion lo que llama la atencion es la constante y la aparicion de alertas o errores en la programacion los cuales encontramos principalmente a que la version no es la mas resiente y la falta de instalacion que paquetes o llamar a las librerias problemas de escritura etc.