Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lab introductorio de la probabilidad #241

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
166 changes: 140 additions & 26 deletions lab-intro-probability.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,16 @@
"Welcome to this Intro to Probability lab, where we explore decision-making scenarios through the lens of probability and strategic analysis. In the business world, making informed decisions is crucial, especially when faced with uncertainties. This lab focuses on scenarios where probabilistic outcomes play a significant role in shaping strategies and outcomes. Students will engage in exercises that require assessing and choosing optimal paths based on data-driven insights. The goal is to enhance your skills by applying probability concepts to solve real-world problems."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
"import scipy.stats as stats\n",
"import numpy as np"
]
},
{
"cell_type": "markdown",
"metadata": {},
Expand All @@ -38,11 +48,25 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 16,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de perder el Iron Plane es de 0.30666666666666664\n"
]
}
],
"source": [
"#code here"
"# Voy a hacer una regla de 3 para resolverlo. \n",
"plane = 450\n",
"chance0 = 0.3\n",
"iron_plane = 460\n",
"\n",
"chance1 = (iron_plane * chance0) / plane\n",
"print(f\"La probabilidad de perder el Iron Plane es de {chance1}\")\n"
]
},
{
Expand Down Expand Up @@ -72,11 +96,23 @@
},
{
"cell_type": "code",
"execution_count": 5,
"execution_count": 17,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que te resuelvan una queja en menos de 3 intentos es de 0.48999999999999994\n"
]
}
],
"source": [
"#code here"
"#code here\n",
"prob_acierto = 1 - 0.3\n",
"prob_menos_3_intentos = prob_acierto * prob_acierto\n",
"\n",
"print(f\"La probabilidad de que te resuelvan una queja en menos de 3 intentos es de {prob_menos_3_intentos}\")\n"
]
},
{
Expand Down Expand Up @@ -107,11 +143,21 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 18,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que la web caiga es de 0.9090909090909091\n"
]
}
],
"source": [
"#code here"
"#code here\n",
"prob_colapso = 500 / 550\n",
"print(f\"La probabilidad de que la web caiga es de {prob_colapso}\")\n"
]
},
{
Expand All @@ -123,11 +169,21 @@
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 19,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que la página se caiga durante el día es de 21.818181818181817\n"
]
}
],
"source": [
"#code here"
"#code here\n",
"prob_diaria = prob_colapso * 24\n",
"print(f\"La probabilidad de que la página se caiga durante el día es de {prob_diaria}\")"
]
},
{
Expand Down Expand Up @@ -157,26 +213,52 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": []
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que alguien llegue en los siguientes 5 minutos es 0.3934693402873666\n"
]
}
],
"source": [
"pers_10_min = 1 / 10 \n",
"five_min = 5 \n",
"\n",
"prob_prox_5_min = stats.expon.cdf(five_min, scale=1/pers_10_min)\n",
"print(f\"La probabilidad de que alguien llegue en los siguientes 5 minutos es {prob_prox_5_min}\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If there is no customer for 15minutes, employees can that a 5minutes break.\n",
"If there is no customer for 15 minutes, employees can that a 5 minutes break.\n",
"\n",
"What is the probability an employee taking a break?"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": []
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que los usuarios descansen es de 0.22313016014842982\n"
]
}
],
"source": [
"t_sin_comprador = 15\n",
"prob_descanso = np.exp(-pers_10_min * t_sin_comprador)\n",
"print(f\"La probabilidad de que los usuarios descansen es de {prob_descanso}\")"
]
},
{
"cell_type": "markdown",
Expand All @@ -196,11 +278,29 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 33,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que un pajaro tenga un peso entre 140 y 160 es de 0.3413447460685429\n"
]
}
],
"source": [
"#code here"
"#code here\n",
"media = 150\n",
"des_estan = 10\n",
"redondeo_abajo = 140\n",
"redondeo_arriba = 150\n",
"\n",
"puntuacion_z_abajo = (redondeo_abajo - media) / des_estan\n",
"puntuacion_z_arriba = (redondeo_arriba - media) / des_estan\n",
"\n",
"prob_peso_pipo = stats.norm.cdf(puntuacion_z_arriba) - stats.norm.cdf(puntuacion_z_abajo)\n",
"print(f\"La probabilidad de que un pajaro tenga un peso entre 140 y 160 es de {prob_peso_pipo}\")\n"
]
},
{
Expand All @@ -219,11 +319,25 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 34,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La probabilidad de que falle un electrodomestico nuevo en sus primeras 30h de funcionamiento es de 0.4511883639059735\n"
]
}
],
"source": [
"#code here"
"#code here\n",
"media_duracion = 1 / 50\n",
"tiempo = 30\n",
"\n",
"prob_peta_en_30h = 1 - np.exp( -media_duracion * tiempo)\n",
"\n",
"print(f\"La probabilidad de que falle un electrodomestico nuevo en sus primeras 30h de funcionamiento es de {prob_peta_en_30h}\")"
]
}
],
Expand All @@ -243,7 +357,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.9"
"version": "3.12.5"
}
},
"nbformat": 4,
Expand Down