#Taller Uno Rstudio
##Punto Uno
n=40
set.seed(1234)
edades=data.frame(id=1:n,
edad=round(runif(n=n,min=18,max=70),0)
)
str(edades)
## 'data.frame': 40 obs. of 2 variables:
## $ id : int 1 2 3 4 5 6 7 8 9 10 ...
## $ edad: num 24 50 50 50 63 51 18 30 53 45 ...
summary(edades)
## id edad
## Min. : 1.00 Min. :18.00
## 1st Qu.:10.75 1st Qu.:30.00
## Median :20.50 Median :38.00
## Mean :20.50 Mean :41.80
## 3rd Qu.:30.25 3rd Qu.:53.25
## Max. :40.00 Max. :70.00
mean(edades$edad)
## [1] 41.8
median(edades$edad)
## [1] 38
max(edades$edad)
## [1] 70
min(edades$edad)
## [1] 18
##Punto Dos
productoUno = c(1200,1800,2100,3500)
productoDos = c(2200,1800,2300,3300)
productoTres = c(1500,1400,2200,2800)
productoCuatro = c(2500,2100,2700,4000)
productoCinco = c(1900,2200,1800,3000)
ecom=(c(productoUno,productoDos,productoTres,productoCuatro,productoCinco))
matrizv=matrix(ecom,
nrow=5,
ncol=4,
byrow=TRUE)
rownames(matrizv)=c("Producto 1","Producto 2","Producto 3","Producto 4","Producto 5")
colnames(matrizv)=c("Q1","Q2","Q3","Q4")
rowSums(matrizv)
## Producto 1 Producto 2 Producto 3 Producto 4 Producto 5
## 8600 9600 7900 11300 8900
colSums(matrizv)
## Q1 Q2 Q3 Q4
## 9300 9300 11100 16600
##Punto Tres
crear_cliente=function(id,nombre,edad,ingmen,saldoact){
categoria_riesgo=ifelse(saldoact>=0,"Estable","Riesgo Alto")
cliente_lista=list(
id=id,
nombre=nombre,
edad=edad,
ingmen=ingmen,
saldoact=saldoact,
riesgo=categoria_riesgo
)
return(cliente_lista)
}
nuevo_cliente=crear_cliente(id="CLiente 1",
nombre="Victor Torres",
edad=34,
ingmen=1800,
saldoact=1200
)
print(nuevo_cliente)
## $id
## [1] "CLiente 1"
##
## $nombre
## [1] "Victor Torres"
##
## $edad
## [1] 34
##
## $ingmen
## [1] 1800
##
## $saldoact
## [1] 1200
##
## $riesgo
## [1] "Estable"
##Punto Cuatro
cl=50
set.seed(1234)
nomb=c("Victor","Diego","Susana","Hernán","Manuel")
no=sample(nomb,size=cl,replace=TRUE)
anos=round(runif(n=cl,min=16,max=70))
ing=round(rnorm(cl,mean=3000,sd=500))
estciv=c("Soltero","Casado","Divorciado","Viudo")
ec=sample(estciv,size=cl,replace=TRUE)
Tienda=data.frame(ID=1:cl,
Nombre=as.factor(no),
Edadd=anos,
Ingresoss=ing,
Estado_civ=as.factor(ec))
str(Tienda)
## 'data.frame': 50 obs. of 5 variables:
## $ ID : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Nombre : Factor w/ 5 levels "Diego","Hernán",..: 2 1 3 2 5 3 2 1 1 2 ...
## $ Edadd : num 23 22 44 32 17 33 56 18 47 31 ...
## $ Ingresoss : num 2977 3163 3083 3097 2628 ...
## $ Estado_civ: Factor w/ 4 levels "Casado","Divorciado",..: 2 4 2 1 2 4 4 2 3 2 ...
summary(Tienda)
## ID Nombre Edadd Ingresoss Estado_civ
## Min. : 1.00 Diego :10 Min. :17.00 Min. :1995 Casado :10
## 1st Qu.:13.25 Hernán:11 1st Qu.:27.25 1st Qu.:2788 Divorciado:16
## Median :25.50 Manuel: 8 Median :40.50 Median :3090 Soltero :10
## Mean :25.50 Susana:11 Mean :41.78 Mean :3125 Viudo :14
## 3rd Qu.:37.75 Victor:10 3rd Qu.:56.00 3rd Qu.:3352
## Max. :50.00 Max. :70.00 Max. :4511
###Es importante convertir los caracteres en Factor, ya qu Rstudio para realizar algoritmos o cálculos matemáticos con palabras, el Factor nos permite tener un orden lógico de las palabras, además, para el contexto nos permite calcular la cantidad de x palabra que hay en el dataframe, esto para analisis estadístico es muy importante, asimismo, como Rstudio guarda el factor como una categoria numérica, se optimiza el uso de memoria
###El resumen estadístico nos inca que hay 10 Diego, 11 Hernan, 8 Manuel, 11 Susanda y 10 Victor. Asimismo, que la edad mínima son 17 años y la edad máxima son 70 y que la media son 41,78. Para el apartado de ingreso, la persona que menos gana es 1995$ y la que mas gana es 4511, teniendo un ingreso promedio de 3125$. Además 10 personas están casadas, 16 divorciados, 10 solteros y 14 viudos.
Filtro_clientes=Tienda[Tienda$Ingresoss>3000 & Tienda$Estado_civ=="Soltero",]
clasing=c()
for(Ingresoss in Tienda$Ingresoss){
if(Ingresoss<2000){
clasing=c(clasing,"Bajo")
}else if(Ingresoss>=2000 & Ingresoss<4000){
clasing=c(clasing,"Medio")
}else{
clasing=c(clasing,"Alto")
}
}
Tienda$CategoriaIngresos=as.factor(clasing)
str(Tienda)
## 'data.frame': 50 obs. of 6 variables:
## $ ID : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Nombre : Factor w/ 5 levels "Diego","Hernán",..: 2 1 3 2 5 3 2 1 1 2 ...
## $ Edadd : num 23 22 44 32 17 33 56 18 47 31 ...
## $ Ingresoss : num 2977 3163 3083 3097 2628 ...
## $ Estado_civ : Factor w/ 4 levels "Casado","Divorciado",..: 2 4 2 1 2 4 4 2 3 2 ...
## $ CategoriaIngresos: Factor w/ 3 levels "Alto","Bajo",..: 3 3 3 3 3 3 1 1 3 3 ...
View(Tienda)
##Punto Cinco
n=100
set.seed(1234)
temp=round(runif(n=n,min=25,max=35),1)
cont=1
repeat{
lectura=temp[cont]
print(paste("Muestra",cont,":",lectura))
if(lectura>30){
print("¡PELIGRO! la temperatura es mayor a 30°, DETENER SISTEMA")
break
}
cont=cont+1
}
## [1] "Muestra 1 : 26.1"
## [1] "Muestra 2 : 31.2"
## [1] "¡PELIGRO! la temperatura es mayor a 30°, DETENER SISTEMA"