if(!require(VennDiagram)) install.packages(“VennDiagram”)
if(!require(VennDiagram)) install.packages("VennDiagram")
## Loading required package: VennDiagram
## Loading required package: grid
## Loading required package: futile.logger
library(VennDiagram)
library(grid)
# Configuración de colores
color_A <- "#FF6B6B" # Rojo pastel
color_B <- "#4ECDC4" # Turquesa
color_union <- "#FFE66D" # Amarillo para resaltar
color_texto <- "#333333"
# Crear diagrama
grid.newpage()
venn_union <- draw.pairwise.venn(
area1 = 40, area2 = 30, cross.area = 20,
category = c("A", "B"),
fill = c(color_A, color_B),
alpha = c(0.7, 0.7),
col = c("black", "black"),
label.col = c(color_texto, color_texto, color_texto),
cex = 1.8,
cat.cex = 1.5,
cat.col = c(color_texto, color_texto)
)
# Resaltar la unión
grid.text("Unión: A ∪ B", x = 0.5, y = 0.95, gp = gpar(fontsize = 16, fontface = "bold"))
# Leyenda
grid.text("Área total coloreada: Unión (A ∪ B)",
x = 0.5, y = 0.1,
gp = gpar(fontsize = 12, col = color_texto, fontface = "bold"))
grid.draw(venn_union)
# parte 2 un ejempl clasico ## ** problema##
** Una caja contiene 8 bolas rojas, 3 blancas y 9 azules. Si se extraen 3 bolas aleatoriamente sin reemplazamiento, determinar la probabilidad de que: + las tres bolas sean rojas. + las tres bolas sean blancas. + dos sean rojas y una blanca. + al menos 1 sea blanca + se extraiga una de cada color. las bolas sean + + extraídas en el orden rojo, blanco, azul.
Claro, aquí tienes el problema resuelto en formato
Markdown con expresiones matemáticas utilizando
peso ($...$) y doble peso
($$...$$) para una mejor presentación matemática:
Una caja contiene:
Total de bolas:
\[ 8 + 3 + 9 = 20 \]
Se extraen 3 bolas aleatoriamente sin reemplazamiento. Calculemos las siguientes probabilidades:
Número de formas de elegir 3 bolas rojas de 8:
\[ \binom{8}{3} \]
Número total de formas de elegir 3 bolas de 20:
\[ \binom{20}{3} \]
Entonces, la probabilidad es:
\[ P(\text{3 rojas}) = \frac{\binom{8}{3}}{\binom{20}{3}} = \frac{56}{1140} \approx 0.0491 \]
\[ P(\text{3 blancas}) = \frac{\binom{3}{3}}{\binom{20}{3}} = \frac{1}{1140} \approx 0.000877 \]
Formas de elegir 2 rojas de 8: $ = 28$ Formas de elegir 1 blanca de 3: $ = 3$ Total combinaciones favorables: $28 = 84$
\[ P(2\ \text{rojas y}\ 1\ \text{blanca}) = \frac{84}{\binom{20}{3}} = \frac{84}{1140} = 0.0737 \]
Primero calculamos la probabilidad complementaria: que ninguna sea blanca.
Bolas no blancas: $8 + 9 = 17$ Formas de elegir 3 bolas sin blancas: $$
\[ P(\text{ninguna blanca}) = \frac{\binom{17}{3}}{\binom{20}{3}} = \frac{680}{1140} \]
Entonces:
\[ P(\text{al menos 1 blanca}) = 1 - \frac{680}{1140} = \frac{460}{1140} \approx 0.4035 \]
Elegir 1 bola roja: $ = 8$ Elegir 1 bola blanca: $ = 3$ Elegir 1 bola azul: $ = 9$ Total combinaciones favorables: $8 = 216$
Como el orden no importa, dividimos entre las permutaciones de 3 elementos:
\[ \frac{216}{\binom{20}{3}} = \frac{216}{1140} \approx 0.1895 \]
Primera extracción roja: $$ Segunda extracción blanca (queda 19 bolas): $$ Tercera extracción azul (queda 18 bolas): $$
\[ P(\text{rojo, blanco, azul}) = \frac{8}{20} \cdot \frac{3}{19} \cdot \frac{9}{18} = \frac{216}{6840} \approx 0.0316 \]
Perfecto, a continuación te muestro cada cálculo acompañado con su código en R para que puedas verificar los resultados o modificarlos si es necesario.
# Cantidad de bolas por color
rojas <- 8
blancas <- 3
azules <- 9
total <- rojas + blancas + azules
prob_3_rojas <- choose(rojas, 3) / choose(total, 3)
prob_3_rojas
prob_3_blancas <- choose(blancas, 3) / choose(total, 3)
prob_3_blancas
formas_2_rojas_1_blanca <- choose(rojas, 2) * choose(blancas, 1)
prob_2_rojas_1_blanca <- formas_2_rojas_1_blanca / choose(total, 3)
prob_2_rojas_1_blanca
no_blancas <- rojas + azules
prob_sin_blancas <- choose(no_blancas, 3) / choose(total, 3)
prob_al_menos_1_blanca <- 1 - prob_sin_blancas
prob_al_menos_1_blanca
formas_1_cada_color <- choose(rojas, 1) * choose(blancas, 1) * choose(azules, 1)
prob_1_cada_color <- formas_1_cada_color / choose(total, 3)
prob_1_cada_color
prob_orden_rba <- (rojas / total) * (blancas / (total - 1)) * (azules / (total - 2))
prob_orden_rba
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
library(readxl)
datos2025 <- read_excel("dato202450excelUA.xlsx")
datos2025
## # A tibble: 76 × 11
## CURSO `PARCIAL 1` PROGRAMA EDAD URBANO PESO ESTATURA TRANSPORTE SEXO
## <chr> <dbl> <chr> <dbl> <chr> <dbl> <dbl> <chr> <chr>
## 1 ESTADISTIC… 36 PSICOLO… 19 SI 45 163 Mototaxi Feme…
## 2 PROBABILID… 39 FINANZAS 18 SI 56 160 Particular Feme…
## 3 PROBABILID… 9 FINANZAS 18 SI 67 173 Transcari… Feme…
## 4 PROBABILID… 29 FINANZAS 21 SI 69 180 Taxi Masc…
## 5 PROBABILID… 20 FINANZAS 18 SI 50 158 Taxi Feme…
## 6 PROBABILID… 37 FINANZAS 18 SI 61 163 Particular Feme…
## 7 ESTADISTIC… 9 COMUNIC… 18 NO 50 178 Transcari… Masc…
## 8 ESTADISTIC… 37 COMUNIC… 17 SI 59 160 Transcari… Feme…
## 9 PROBABILID… 30 MECATRO… 18 SI 70 175 bus Masc…
## 10 PROBABILID… 38 FINANZAS 22 SI 73 180 Mototaxi Masc…
## # ℹ 66 more rows
## # ℹ 2 more variables: ESTRATO <chr>, GR_SANGUINEO <chr>
table_sexo<-table(datos2025$SEXO)
table_sexo
##
## Femenino Masculino
## 44 32
pie_1<-pie(table_sexo, col=c("lightblue","pink"),
main="Estudio de Pastel.\n Distribución por sexos.", labels = table_sexo)
barp<-barplot(table_sexo, col = rainbow(5), border = "darkred",main = "Gráfico de Barras",sub = "UTB karol puello",xlab = "SEXO", ylab = "Conteo")
text(barp, table_sexo-20, labels = table_sexo)
table_sexo2<-round(table(datos2025$SEXO)/121*100)
table_sexo2
##
## Femenino Masculino
## 36 26
barp2<-barplot(table_sexo2, col = rainbow(5), border = "darkred",main = "Gráfico de Barras",sub = "UTB",xlab = "SEXO", ylab = "Porcentaje")
text(barp2, table_sexo2-30, labels = table_sexo2)
pie_1<-pie(table_sexo2, col=c("lightblue","pink"),
main="Estudio de Pastel.\n Distribución por sexos.", labels = table_sexo2)
table_3<-table(datos2025$SEXO, datos2025$CURSO)
table_3
##
## ESTADISTICA I PROBABILIDAD
## Femenino 18 26
## Masculino 11 21
barp3<-barplot(table_3,
main = "Gráfico de barras CURSO vs SEXO",
xlab = "CURSO", ylab = "Frecuencia",
col = c("pink", "blue"),
legend.text = rownames(table_3),
beside = TRUE) # Barras agrupadas
text(barp3, table_3-5, labels = table_3)
table_5<-table(datos2025$ESTRATO, datos2025$CURSO)
table_5
##
## ESTADISTICA I PROBABILIDAD
## I 6 9
## II 8 19
## III 9 9
## IV 6 5
## V 0 5
table_6<-table(datos2025$ESTRATO, datos2025$SEXO)
table_6
##
## Femenino Masculino
## I 8 7
## II 18 9
## III 10 8
## IV 5 6
## V 3 2