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