Inferencia para datos cuantitativos: pendientes

Esta entrada es un resumen del curso de Khan Academy «AP statistics».

Condiciones para inferir datos en rectas de pendiente:

  • Linear: La relación ha de ser lineal entre los valores X e Y (correlación).
  • Independence: Los datos han de ser independientes, es decir que sean muestras de samples diferentes, o que no se supere el 10% del total de la población.
  • Normal: Los datos han de estar normalizados, tanto para los valores X como los valores Y.
  • Equal Variance: Han de tener una varianza similar (o también desviación estándar).
  • Random: Valores escogidos al azar.

Los grados de libertad para los coeficientes de regresión se calculan usando la tabla ANOVA donde los grados de libertad son n-(k+1), donde k es el número de variables independientes. Entonces, para un análisis de regresión simple, una variable independiente k=1 y los grados de libertad son n-2, n-(1+1).

Intervalos de confianza para pendientes

La fórmula para el cálculo de intervalo de confianza es,

Coef  \pm  t \cdot SE Coef

Ejemplo,

Pepona tomó una muestra aleatoria de 20 equipos de fútbol en toda Europa y realizó un seguimiento de la cantidad promedio de goles que marcó cada equipo por partido, y cuántos partidos en total ganó cada equipo, en 2014 - 2015. Aquí está la salida de la computadora de un análisis de regresión de mínimos cuadrados en su muestra:

Asumiendo que todas las condiciones se cumplen, calcula el intervalo de confianza porcentual del 99% para la pendiente de la línea de regresión de mínimos cuadrados.

Cogemos el valor Coef y SE_Coef de la variable independiente, Goals. Y aplicamos la fórmula:

14.02 \pm t \cdot 1.15

donde t es con DF (18, recuerda 20-2) = 2.878

14.02 \pm 2.878 \cdot 1.15

14.02 \pm 1.728

CI = (15.748, 12.291)

Hipótesis test para pendientes

Cálculo de la estadística t para la pendiente de la línea de regresión, para comprobar que la pendiente de la población es 0.

H_o \quad\beta=0

H_a \quad\beta>0

t=\frac{Coef_b}{SE_b}

Inferencia para datos cuantitativos: Medias

Esta entrada de blog es un resumen del curso en Khan Academy.

Confidence Interval

La fórmula básica para el cálculo del intérvalo de confianza es:

\overline{x} + t · \frac{S}{\sqrt{n}}

Donde

  • \overline{x} la media de la muestra
  • S es la desviación típica,
  • n el número de elementos de la muestra,
  • A diferencia que en los datos categóricos, para en encontrar el intérvalo de confianza en datos cuantitativos usamos el valor «t» en vez del valor «Z».

Condiciones para inferir en medias

Las condiciones que necesitamos para la inferencia sobre una media son

  • Aleatorio: Se debe utilizar una muestra aleatoria o un experimento aleatorio para obtener los datos.
  • Normal: La distribución muestral de \overline{x} (la media de la muestra) tiene que ser aproximadamente normal. Esto es cierto si nuestra población madre es normal o si nuestra muestra es razonablemente grande (n \geq 30) .
  • Independiente: Las observaciones individuales deben ser independientes. Si el muestreo es sin reemplazo, el tamaño de nuestra muestra no debe ser superior al 10%, por ciento de la población.

Condiciones para encontrar el valor T

El valor t se basa en dos aspectos:

  • Degrees of freedom (df) o grados de libertard: Que es igual a n-1.
  • Probabilidad del intervalo de confianza: (recuerda que si es por ejemplo 95%, será 0.975 debido a que el valor t lo obtenemos solo sobre un lado del gráfico.

Intervalo de confianza para una media con datos emparejados (paired t-test)

  • Realizar la diferencia entre el primer valor y el segundo por cada elemento de la muestra.
  • Chequear que se cumplen las condiciones para inferir
    • Aleatorio
    • Normal o n \geq 30
    • Independiente (muestra no debe ser superior al 10%)
  • Calcular la media \overline{x}_{diff} y desviación estándar S_{diff} de la diferencia de los valores.
  • Aplicar la fórmula del intervalo de confianza \overline{x} + t · \frac{S}{\sqrt{n}}

Ejemplo de cálculo de la estadística t para una prueba sobre una media

Rory sospecha que los profesores de su distrito escolar tienen menos de cinco años <5de experiencia por término medio. Decide poner a prueba su hipótesis nula de que la media de años de experiencia es de cinco años y su hipótesis alternativa de que la verdadera media de años de experiencia es inferior a cinco años, utilizando una muestra de 25 profesores.

  • H_o: \mu = 5
  • H_a:\mu < 5

La media de la muestra es de cuatro años y la desviación típica de la muestra es de dos años.

  • \overline{x} = 4
  • S_x=2
  • n=25

Rory quiere utilizar estos datos de la muestra para realizar una prueba t sobre la media. Suponga que se cumplen todas las condiciones para la inferencia. Calcule el estadístico de la prueba de Rory.

La fórmula para calcular el valor

    \[t = \frac{\overline{x}-\mu_o}{\frac{S_x}{\sqrt{n}}}\]

Nota: Usaremos el valor Z si conocemos la desviación estándar de toda la población, Z = \frac{\overline{x}-\mu_o}{\sigma_{\overline{x}}}, donde \sigma_{\overline{x} = \frac{\sigma}{\sqrt{n}}

Procedemos a realizar los cálculos y obtenemos que

    \[t = \frac{4-5}{\frac{2}{\sqrt{25}}} = -2.5\]

Usar excel para obtener el valor p-value

Sobre el ejemplo anterior, vamos a obtener el valor p que nos servirá para determinar si aceptamos o rechazamos la hipótesis nula.

  • Valor t, es el valor obtenido en la formula t.
  • df, grados de libertad que seran n-1

Valor obtenido de 0.0098,

Comparación del valor P del estadístico t con el nivel de significación

Llegados a este punto, vamos a determinar un valor de significancia de \alpha=0.05 (un 95% de certeza), dado que

  • H_o: \mu = 5
  • H_a:\mu < 5

Formulamos la hipótesis, si el p-value es inferior a 0.05, rechazaremos la hipotesis nula y por tanto indicaremos que hay fuertes evidencias que el valor medo es inferior a 5. Si el p-value es superior a 0.05, fallaremos en rechar la hipótesis nula y por tanto indicaremos que no hay evidencias fuertes que la media sea inferior a 5.

El valor obtenido en p ha sido 0.0098,

Por tanto rechazamos la hipótesis nula, ya que hay evidencias fuertes que la media es inferior a 5.

Inferencia para la diferencia de medias (Confidence interval)

Condiciones para poder realizar la inferencia en diferencia de medias

Chequear que se cumplen las condiciones para inferir

  • Aleatorio
  • Normal o n_1 \geq 30 y n_2 \geq 30
  • Independiente (muestra en ambas poblaciones no debe ser superior al 10%)

Fórmula para calcular intervalo de confianza para la la diferencia entre las medias

(\overline{x_1}-\overline{x_2} ) + t · \sqrt{\frac{S_1^2}{n_1}+\frac{S_2^2}{n_2}}

Recuerda que \sigma_{\overline{x_1}-\overline{x_2} } = \sqrt{\frac{S_1^2}{n_1}+\frac{S_2^2}{n_2}}

Two-sample t test for difference of means (Prueba t de dos muestras para la diferencia de medias)

La fórmula para obtener el valor t de la diferencia de dos muestras,

t = \frac{\overline{x_A}-\overline{x_B}}{\sqrt{\frac{S_A^2}{n_A}+\frac{S_B^2}{n_B}}}

Si no disponemos de un software para realizar el cálculo para los grados de libertad, usaremos el (valor n más pequeño – 1) o , min((n_A-1),(n_B-1))

Inferencia para «Categorical data» (resumen)

Este es un resumen de la unidad «Inference for categorical data: Proportions» de Khan Academy.

Confidence Interval

Aquí un simulador de Intervalos de Confianza

Condiciones para un Intervalo de Confianza válido (MUY IMPORTANTE):

  • Random Sample: Los datos deben proceder de una muestra aleatoria o de un ensayo aleatorio.
  • Normal condition: La distribución del muestreo ha de ser aproximadamente normal. n\hat{P}\geq 10 y n(1-\hat{P})\geq 10 (ambas probabilidades).
  • Independence condition: Las observaciones individuales deben ser independientes. Si el muestreo es sin reemplazo, el tamaño de nuestra muestra ha de ser n<10\% .

Para utilizar la fórmula de la desviación estándar de

σp^=P(1P)n

necesitamos que las observaciones individuales sean independientes.

Si no disponemos de la P global, podemos usar el de la muestra, pero entonces lo llamaremos Error Estandar (Standar Error).

SE_\hat{P}=\sqrt{\frac{\hat{P}(1-\hat{P})}{n}}

Valor crítico Z dado el valor de un intérvalo de confianza

Para cálcular el intervalo de confianza será

\hat{P}\pm \space (Z \cdot {SE_\hat{P}})

Donde Z lo obtenemos de la inversa (tabla valor Z) sobre el intérvalo de confianza que queremos obtener.

Por ejemplo, un CI (Confidence Interval) de 95%, seria el valor Z de 97.5%. Por qué? Mira el video de Khan Academy.

Yo uso el truquillo de \frac{(100-CI)}{2}+CI

\frac{(100-95)}{2}+95 = 97.5

También uso la función de la calculadora Casio, «Dis. n. acum. inv» que me devuelve el valor. O para excel puedes usar «=INV.NORM(0,95;0;1)» (donde 0,95 es el CI).

Determinar el tamaño mínimo de una muestra en base a un CI y margen de error

El valor ideal es cuando \hat{P}=0.5 , por tanto si sabemos que queremos un CI de 99% con un margen de error inferior al 2% (por poner une ejemplo). Primero obtendremos la inversa de Z para 99,5% que es 2.576 aprox. A partir de aquí sabemos que:

Z \cdot \sqrt{\frac{\hat{P}(1-\hat{P})}{n}} \leq 2\%

2.576 \cdot \frac{0.5}{\sqrt{n}} \leq 0.02

aislamos la n

\frac{(0.5) \cdot (2.576)} {0.02}\leq  \sqrt{n}

64.4^2 \leq n

4147 \leq n

Hipótesis Test

  • Definir H_o y H_a.
  • Fijar un nivel de significancia \alpha = x.xx (puede ser 0.05, 0.10, etc…)
  • Tomar un sample. Recuerda que,
    • Random Sample: Los datos deben proceder de una muestra aleatoria o de un ensayo aleatorio.
    • Normal condition: La distribución del muestreo ha de ser aproximadamente normal. n\hat{P}\geq 10 y n(1-\hat{P})\geq 10 (ambas probabilidades).
    • Independence condition: Las observaciones individuales deben ser independientes. Si el muestreo es sin reemplazo, el tamaño de nuestra muestra ha de ser n<10\%
  • Calcular p-value, a partir de cálcular el valor Z.
    • Z=\frac{\hat{P}-P_o}{\sqrt{\frac{P_o (1-P_o)}{n}}} = \frac{\hat{P}-P_o}{\sigma_\hat{P}}
    • Una vez obtenido el valor Z, obtener el valor % para disponer de p-value.
  • Si p-value < \alpha rechazar H_o a favor de H_a
  • Si p-value \geq \alpha no rechazar H_o, pero eso no significa que la aceptemos.

Errores potenciales cuando se realizan hypotesis test

Un error de tipo I es cuando rechazamos una hipótesis nula verdadera. Los valores más bajos de \alpha hacen que sea más difícil rechazar la hipótesis nula, por lo que la elección de valores más bajos para \alpha puede reducir la probabilidad de un error de tipo I. La consecuencia es que si la hipótesis nula es falsa, puede ser más difícil de rechazar utilizando un valor bajo de \alpha. Así que el uso de valores más bajos de \alpha puede aumentar la probabilidad de un error de tipo II.
Un error de tipo II es cuando no se rechaza una hipótesis nula falsa. Los valores más altos de \alpha facilitan el rechazo de la hipótesis nula, por lo que la elección de valores más altos para \alpha puede reducir la probabilidad de un error de tipo II. La consecuencia aquí es que si la hipótesis nula es verdadera, aumentar \alpha hace más probable que cometamos un error de Tipo I (rechazar una hipótesis nula verdadera).

p-value\space < \alpha \leftarrow reject Ho
p-value\space \geq \alpha \leftarrow fail to reject Ho

H_o TrueH_o False
reject H_oType I errorcorrect conclusion
fail to reject H_ocorrect conclusiónType II error
Info extraida del curso de Khan Academy

Si \alpha aumenta:

  • Power aumenta
  • Probabilidad de Type I error aumenta

Intervalos de confianza para la diferencia de dos proporciones

Recuerda que:

  • Random
  • Distribución normal
  • Independencia de los datos (<10% sin reemplazo)

Y el truquillo de \frac{(100-CI)}{2}+CI (CI = Intervalo de confianza deseado)

Entonces, el CI para la diferencia entre dos proporciones es,

Confidence Interval for P_1 - P_2 =({\hat{P}_1 - \hat{P}_2}) \space\pm \space Z \cdot \sigma_{\hat{P}_1 - \hat{P}_2}

Donde,

\sigma_{\hat{P}_1 - \hat{P}_2} = \sqrt{{\frac{\hat{P_1}(1-\hat{P_1})}{n}}+{\frac{\hat{P_2}(1-\hat{P_2})}{n}}}

Prueba de hipótesis para la diferencia de proporciones

Los pasos son los mismos que en hipotesis test normal, pero teniendo en cuenta que,

Z = \frac{\hat{P}_A - \hat{P}_B}{\sigma_{\hat{P}_A - \hat{P}_B}}

Donde,

    \[\sigma_{\hat{P}_A - \hat{P}_B} = \sqrt{{\frac{\hat{P_C}(1-\hat{P_C})}{n_{A}}}+{\frac{\hat{P_C}(1-\hat{P_C})}{n_{B}}}}\]

\hat{P}_C es el promedio de las sumas \hat{P}_A y \hat{P}_B (sumar subtotales, dividir por suma de totales).

Variables aleatorias discretas «Cheat Sheet»

Fuente: https://www.khanacademy.org/math/ap-statistics/random-variables-ap

Valor esperado en una variable aleatoria discreta es el resultado promedio a largo plazo. Donde sumamos los productos del valor por la probabilidad de cada evento.

$$E(X)=\mu_x=x_1p_1+x_2p_2+…+x_np_n$$

$$=\sum x_i p_i$$

Pepe vende pollos a l’ast en una bodega, este registra el número de pollos que vende cada día. En la siguiente tabla mostramos la distribución de probabilidad de P=pollos vendidos en un día seleccionado aleatoriamente.

P=#pollos vendidos0102030
Probabilidad0.30.50.150.05

Calcular la media de P.

$$\mu_P=(0·0.3)+(10·0.5)+(20·0.15)+(30·0.05)=9.5\space pollos$$

La desviación estandar nos indica cuanto varía cada resultado de la media.

$$Var(X)=\sigma ^2_X$$

$$=(x_1-\mu_x)^2p_1+(x_2-\mu_x)^2p_2+…+(x_n-\mu_x)^2p_n$$

$$=\sum (x_i- \mu _x)^2 p_i$$

Vamos a calcular la desviación estándar de los pollos

$$\sigma_P = \sqrt{(0-9.5)^2·0.3+(10-9.5)^2·0.5+(20-9.5)^2·0.15+(30-9.5)^2·0.05 }= \sqrt{64.75} \approx 8.04$$

Calcular las probabilidades a partir de curvas de densidad:

$$Z = \frac {(X-\mu)}{\sigma}$$

Para obtener el valor estadístico, aplicar tabla Z.

Combinar variables aleatorias normalizadas

Si tenemos dos variables que son idependientes entre ellas, entonces podemos combinarlas para crear nuevas distribuciones que combinadas facilitan el cálculo estadístico. Vamos al ejemplo,

MediaVarianza
Suma: $$T=X+YT$$$$\mu_T=\mu_X + \mu_Y​$$$$\sigma^2_T=\sigma^2_X + \sigma^2_Y$$​
Diferencia: $$T=X-YT$$$$\mu_T=\mu_X – \mu_Y​$$$$\sigma^2_T=\sigma^2_X + \sigma^2_Y$$​

Manolo vende pepinos en paquetes de 4. Las masas individuales de cada pepino son normalizadas con una media de 175g, y una desviación estandar de 15g. Asumiendo que los pesos de los pepinos son independientes entre ellos.

Siendo T = a 4 pepinos seleccionados aleatoriamente.

Encuentra la probabilidad que el peso total de los pepinos sea superior a 685g.

$$P(T<685)≈$$

Calculamos la media de T que es el peso de 4 pepinos de 175g = 700.

Calculamos la desviación estándard T, que será $$\sqrt{15^2+15^2+15^2+15^2} = 30$$

Calculamos Z, $$Z= \frac{(685-700)}{30}=-0,5$$

Buscamos valor en la tabla Z y nos da 0.30854, que es un 30,80% de probabilidades.

Este ejemplo recoge el caso cuando la densidad es «< que». Cuando la densidad es «> que», hemos de restar 1, cuando está entre dos valores, hemos de calcular la diferencia.

Z-table — Tabla Z

A continuación muestro una tabla Z para que puedas hacer la consulta de valores. Debajo de la tabla encontrarás un enlace para descargar la tabla en formato PDF. Si no sabes cómo usar la tabla Z, hay múltiples tutoriales por internet.

Z 0,00 -0,01 -0,02 -0,03 -0,04 -0,05 -0,06 -0,07 -0,08 -0,09
-3.9 0.00005 0.00005 0.00004 0.00004 0.00004 0.00004 0.00004 0.00004 0.00003 0.00003
-3.8 0.00007 0.00007 0.00007 0.00006 0.00006 0.00006 0.00006 0.00005 0.00005 0.00005
-3.7 0.00011 0.0001 0.0001 0.0001 0.00009 0.00009 0.00008 0.00008 0.00008 0.00008
-3.6 0.00016 0.00015 0.00015 0.00014 0.00014 0.00013 0.00013 0.00012 0.00012 0.00011
-3.5 0.00023 0.00022 0.00022 0.00021 0.0002 0.00019 0.00019 0.00018 0.00017 0.00017
-3.4 0.00034 0.00032 0.00031 0.0003 0.00029 0.00028 0.00027 0.00026 0.00025 0.00024
-3.3 0.00048 0.00047 0.00045 0.00043 0.00042 0.0004 0.00039 0.00038 0.00036 0.00035
-3.2 0.00069 0.00066 0.00064 0.00062 0.0006 0.00058 0.00056 0.00054 0.00052 0.0005
-3.1 0.00097 0.00094 0.0009 0.00087 0.00084 0.00082 0.00079 0.00076 0.00074 0.00071
-3 0.00135 0.00131 0.00126 0.00122 0.00118 0.00114 0.00111 0.00107 0.00104 0.001
-2.9 0.00187 0.00181 0.00175 0.00169 0.00164 0.00159 0.00154 0.00149 0.00144 0.00139
-2.8 0.00256 0.00248 0.0024 0.00233 0.00226 0.00219 0.00212 0.00205 0.00199 0.00193
-2.7 0.00347 0.00336 0.00326 0.00317 0.00307 0.00298 0.00289 0.0028 0.00272 0.00264
-2.6 0.00466 0.00453 0.0044 0.00427 0.00415 0.00402 0.00391 0.00379 0.00368 0.00357
-2.5 0.00621 0.00604 0.00587 0.0057 0.00554 0.00539 0.00523 0.00508 0.00494 0.0048
-2.4 0.0082 0.00798 0.00776 0.00755 0.00734 0.00714 0.00695 0.00676 0.00657 0.00639
-2.3 0.01072 0.01044 0.01017 0.0099 0.00964 0.00939 0.00914 0.00889 0.00866 0.00842
-2.2 0.0139 0.01355 0.01321 0.01287 0.01255 0.01222 0.01191 0.0116 0.0113 0.01101
-2.1 0.01786 0.01743 0.017 0.01659 0.01618 0.01578 0.01539 0.015 0.01463 0.01426
-2 0.02275 0.02222 0.02169 0.02118 0.02068 0.02018 0.0197 0.01923 0.01876 0.01831
-1.9 0.02872 0.02807 0.02743 0.0268 0.02619 0.02559 0.025 0.02442 0.02385 0.0233
-1.8 0.03593 0.03515 0.03438 0.03362 0.03288 0.03216 0.03144 0.03074 0.03005 0.02938
-1.7 0.04457 0.04363 0.04272 0.04182 0.04093 0.04006 0.0392 0.03836 0.03754 0.03673
-1.6 0.0548 0.0537 0.05262 0.05155 0.0505 0.04947 0.04846 0.04746 0.04648 0.04551
-1.5 0.06681 0.06552 0.06426 0.06301 0.06178 0.06057 0.05938 0.05821 0.05705 0.05592
-1.4 0.08076 0.07927 0.0778 0.07636 0.07493 0.07353 0.07215 0.07078 0.06944 0.06811
-1.3 0.0968 0.0951 0.09342 0.09176 0.09012 0.08851 0.08691 0.08534 0.08379 0.08226
-1.2 0.11507 0.11314 0.11123 0.10935 0.10749 0.10565 0.10383 0.10204 0.10027 0.09853
-1.1 0.13567 0.1335 0.13136 0.12924 0.12714 0.12507 0.12302 0.121 0.119 0.11702
-1 0.15866 0.15625 0.15386 0.15151 0.14917 0.14686 0.14457 0.14231 0.14007 0.13786
-0.9 0.18406 0.18141 0.17879 0.17619 0.17361 0.17106 0.16853 0.16602 0.16354 0.16109
-0.8 0.21186 0.20897 0.20611 0.20327 0.20045 0.19766 0.19489 0.19215 0.18943 0.18673
-0.7 0.24196 0.23885 0.23576 0.2327 0.22965 0.22663 0.22363 0.22065 0.2177 0.21476
-0.6 0.27425 0.27093 0.26763 0.26435 0.26109 0.25785 0.25463 0.25143 0.24825 0.2451
-0.5 0.30854 0.30503 0.30153 0.29806 0.2946 0.29116 0.28774 0.28434 0.28096 0.2776
-0.4 0.34458 0.3409 0.33724 0.3336 0.32997 0.32636 0.32276 0.31918 0.31561 0.31207
-0.3 0.38209 0.37828 0.37448 0.3707 0.36693 0.36317 0.35942 0.35569 0.35197 0.34827
-0.2 0.42074 0.41683 0.41294 0.40905 0.40517 0.40129 0.39743 0.39358 0.38974 0.38591
-0.1 0.46017 0.4562 0.45224 0.44828 0.44433 0.44038 0.43644 0.43251 0.42858 0.42465
0 0.5 0.49601 0.49202 0.48803 0.48405 0.48006 0.47608 0.4721 0.46812 0.46414

 

Z 0,00 0,01 0,02 0,03 0,04 0,05 0,06 0,07 0,08 0,09
0 0.5 0.50399 0.50798 0.51197 0.51595 0.51994 0.52392 0.5279 0.53188 0.53586
0.1 0.53983 0.5438 0.54776 0.55172 0.55567 0.55962 0.56356 0.56749 0.57142 0.57535
0.2 0.57926 0.58317 0.58706 0.59095 0.59483 0.59871 0.60257 0.60642 0.61026 0.61409
0.3 0.61791 0.62172 0.62552 0.6293 0.63307 0.63683 0.64058 0.64431 0.64803 0.65173
0.4 0.65542 0.6591 0.66276 0.6664 0.67003 0.67364 0.67724 0.68082 0.68439 0.68793
0.5 0.69146 0.69497 0.69847 0.70194 0.7054 0.70884 0.71226 0.71566 0.71904 0.7224
0.6 0.72575 0.72907 0.73237 0.73565 0.73891 0.74215 0.74537 0.74857 0.75175 0.7549
0.7 0.75804 0.76115 0.76424 0.7673 0.77035 0.77337 0.77637 0.77935 0.7823 0.78524
0.8 0.78814 0.79103 0.79389 0.79673 0.79955 0.80234 0.80511 0.80785 0.81057 0.81327
0.9 0.81594 0.81859 0.82121 0.82381 0.82639 0.82894 0.83147 0.83398 0.83646 0.83891
1 0.84134 0.84375 0.84614 0.84849 0.85083 0.85314 0.85543 0.85769 0.85993 0.86214
1.1 0.86433 0.8665 0.86864 0.87076 0.87286 0.87493 0.87698 0.879 0.881 0.88298
1.2 0.88493 0.88686 0.88877 0.89065 0.89251 0.89435 0.89617 0.89796 0.89973 0.90147
1.3 0.9032 0.9049 0.90658 0.90824 0.90988 0.91149 0.91309 0.91466 0.91621 0.91774
1.4 0.91924 0.92073 0.9222 0.92364 0.92507 0.92647 0.92785 0.92922 0.93056 0.93189
1.5 0.93319 0.93448 0.93574 0.93699 0.93822 0.93943 0.94062 0.94179 0.94295 0.94408
1.6 0.9452 0.9463 0.94738 0.94845 0.9495 0.95053 0.95154 0.95254 0.95352 0.95449
1.7 0.95543 0.95637 0.95728 0.95818 0.95907 0.95994 0.9608 0.96164 0.96246 0.96327
1.8 0.96407 0.96485 0.96562 0.96638 0.96712 0.96784 0.96856 0.96926 0.96995 0.97062
1.9 0.97128 0.97193 0.97257 0.9732 0.97381 0.97441 0.975 0.97558 0.97615 0.9767
2.0 0.97725 0.97778 0.97831 0.97882 0.97932 0.97982 0.9803 0.98077 0.98124 0.98169
2.1 0.98214 0.98257 0.983 0.98341 0.98382 0.98422 0.98461 0.985 0.98537 0.98574
2.2 0.9861 0.98645 0.98679 0.98713 0.98745 0.98778 0.98809 0.9884 0.9887 0.98899
2.3 0.98928 0.98956 0.98983 0.9901 0.99036 0.99061 0.99086 0.99111 0.99134 0.99158
2.4 0.9918 0.99202 0.99224 0.99245 0.99266 0.99286 0.99305 0.99324 0.99343 0.99361
2.5 0.99379 0.99396 0.99413 0.9943 0.99446 0.99461 0.99477 0.99492 0.99506 0.9952
2.6 0.99534 0.99547 0.9956 0.99573 0.99585 0.99598 0.99609 0.99621 0.99632 0.99643
2.7 0.99653 0.99664 0.99674 0.99683 0.99693 0.99702 0.99711 0.9972 0.99728 0.99736
2.8 0.99744 0.99752 0.9976 0.99767 0.99774 0.99781 0.99788 0.99795 0.99801 0.99807
2.9 0.99813 0.99819 0.99825 0.99831 0.99836 0.99841 0.99846 0.99851 0.99856 0.99861
3.0 0.99865 0.99869 0.99874 0.99878 0.99882 0.99886 0.99889 0.99893 0.99896 0.999
3.1 0.99903 0.99906 0.9991 0.99913 0.99916 0.99918 0.99921 0.99924 0.99926 0.99929
3.2 0.99931 0.99934 0.99936 0.99938 0.9994 0.99942 0.99944 0.99946 0.99948 0.9995
3.3 0.99952 0.99953 0.99955 0.99957 0.99958 0.9996 0.99961 0.99962 0.99964 0.99965
3.4 0.99966 0.99968 0.99969 0.9997 0.99971 0.99972 0.99973 0.99974 0.99975 0.99976
3.5 0.99977 0.99978 0.99978 0.99979 0.9998 0.99981 0.99981 0.99982 0.99983 0.99983
3.6 0.99984 0.99985 0.99985 0.99986 0.99986 0.99987 0.99987 0.99988 0.99988 0.99989
3.7 0.99989 0.9999 0.9999 0.9999 0.99991 0.99991 0.99992 0.99992 0.99992 0.99992
3.8 0.99993 0.99993 0.99993 0.99994 0.99994 0.99994 0.99994 0.99995 0.99995 0.99995
3.9 0.99995 0.99995 0.99996 0.99996 0.99996 0.99996 0.99996 0.99996 0.99997 0.99997

Puedes descargar una versión en PDF de tabla Z

Habilitar Jupyter Notebook en formato server

Cómo activar el jupyter notebook como servidor y para que arranque en el systemd en Ubuntu 20.04. Todo esto a través de CLI.

Jupyter Notebook suele ejecutarse por defecto como localhost y para poder activarlo para acceso remoto es necesario antes hacer unos ajustes.

Antes de nada partimos de tener instalado los paquetes necesarios de jupyter. En mi caso he usado miniconda y he creado un entorno con python 3.9. Una vez instalado, ejecutamos el comando

$ jupyter notebook --generate-config

Este comando genera la carpeta y fichero de configuración necesarios para poder activar el servicio servidor, llamado jupyter_notebook_config.py

Una vez creado, he decidido usar el acceso solo con contraseña, ya que voy a ser el usuario único de Jupyter.

Antes de entrar en el fichero de configuración necesitaremos preparar dos cosas importantes para tener una seguridad mínima:

  • Un password hasheado (hashed)
  • Un certificado autofirmado

Hashed password

Ejecuto el siguiente código en una libreta que haya creado previamente o en el terminal con python:

from notebook.auth import passwd
passwd()

Pide un password y una contraseña que devuelve un SHA1. Este SHA1, tiene un formato algo así

'argon2:$argon2id$v=19$m=10240,t=10,p=8$0POp0vMjQPyPtjqCr0AYKQ$lyVtO5DUW5XpNQBUcGluWGZbgMP/TiW4xL1jgDn17jo'

Lo guardamos para cuando toquemos el fichero de configuración.

Certificado SSL

Lo siguiente es generar los certificados SSL autofirmado, lo hago via terminal con el siguiente comando:

$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mykey.key -out mycert.pem

Puedes poner el nombre que necesites para la .key y para el .pem

Copia los ficheros de .pem en /etc/ssl y la .key guardadita en otro folder.

Configurar Jupyter en formato server

Con esto ya estamos listos para configurar el fichero de configuración, que se encuentra en la ruta

sudo nano /home/user/.jupyter/jupyter_notebook_config.py

Donde user es el nombre de tu usuario. Una vez dentro, configuramos los siguientes campos.

  • certfile: ruta donde has puesto el .pem
  • .ip: deja asterisko para que coja la ip del server.
  • keyfile: ruta donde has puesto el .key
  • openbrowser: pon False para que al arrancar no abra una ventana, esto sirve para luego en el systemd.
  • password: pues el password que has generado antes, copia el troncho entero entre comillas.
  • port: por si quieres cambiar el puerto por defecto.

Para que no te pierdas:

c.NotebookApp.certfile = ‘/etc/ssl/mycert.pem’

c.NotebookApp.ip = ‘*’

c.NotebookApp.keyfile = ‘/home/user/Documents/mykey.key’

c.NotebookApp.open_browser = False

c.NotebookApp.password = ‘argon2:$argon2id$v=19$m=10240,t=10,p=8$0POp0vMjQPyPtjqCr0AYKQ$lyVtO5DUW5XpNQBUcGluWGZbgMP/TiW4xL1jgDn17jo’

c.NotebookApp.port = 8888

h3. Configurar el firewall

The firewall must also allow connections from 127.0.0.1 (localhost) on ports from 49152 to 65535. These ports are used by the server to communicate with the notebook kernels.

No te olvides abrir el firewall al mundo exterior:

sudo ufw allow 8888/tcp

h3. Activar el systemd

Ya queda poco, ahora a configurar el systemd.

Accedemos a /etc/systemd/system

Creamos un fichero llamado jupyter.service

sudo nano jupyter.service

Copiamos el troncho de a continuación, peeero importante el «ExecStart» ya que es la ruta donde ejecutaremos el software que queremos arrancar con el systemd.

[Unit]
Description=Jupyter Notebook

[Service]
Type=simple
PIDFile=/run/jupyter.pid
ExecStart= /home/user/miniconda3/envs/p39/bin/jupyter-notebook –notebook-dir=/home/user
User=tususuario
Group=tusuario
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Aquí el tema tiene miga, porque si has creado un entorno y quieres que se abra la libreta con ese entorno, tienes que buscar la ruta del «environment» (en mi caso yo he creado uno llamado p39, de python 3.9) y finalmente jupyter-notebook como ejecutable.

Luego el –notebook-dir= es la ruta de donde querras que arranque tu libreta.

Luego User y Group, escribe el nombre del user que arrancará el servicio.

Y con todo esto ya está listo para arrancar el servicio. Ejecuta el siguiente comando:

sudo systemctl daemon-reload
sudo systemctl enable jupyter
sudo systemctl start jupyter
sudo systemctl status jupyter

Y ha disfrutar…

Ah, una última cosa, no te olvides de poner https:// porque sin ella el servicio no te arrancará.

Fuentes:

Visita al jardí botànic de Mar i Murtra (Blanes)

Al jardí botànic, amb una visita guida al novembre de 2019

Planta de Cardamomo

Marquesa, planta de fulles tropicals de tamany.

Ficus Benjamí
Ficus Benjamí
Or i Argent, magnífica per decorar jardins i de baix manteniment.

Sicra Reboluta, de baix creixement. Aquesta deu tenir més de 80 anys.

Bananers, es com una canya gegant, el fruit només surt una vegada per cada tija.

Monstera deliciosa, perquè deliciosa?

Perquè fa uns fruits madurs de color verd per fora i grocs per dins similars a una pinya.

Hotel de insectes, per atraura a inquilins beneficiosos per el nostre hort.

«Borraja» (como el agua de borrajas), en català borratxas. Per repelir insectes no beneficiosos del nostre jardí.

Palmera blava, de creixement extremadament lent. Aquesta va ser plantada per Carles Faust, el fundador del jardí

Pi blanc, són monoics.

Murtra, fa flor blanca molt maca i després els murtrons es poden fer licors. Es un símbol de prosperitat en les cultures mediterrànees. Poc coneguda a Catalunya.

Fals pebrer, el fruit es de color rosa

Macadàmia, a la imatge s’aprecien els fruits.

Canya de sucre

Araucaria, conifera que viu a l’hemisferi sud (són de la familia dels pins de l’altre hemisferi).

Expresiones regulares, direcciones de interés:

Expresiones regulares en Python

Documentación oficial expresiones regulares en Python 3

Consejos y tutoriales para la limpieza de datos en Python

Limpieza de datos con expresiones regulares (muy buen ejemplo)

Pasos para limpiar texto de forma efectiva con expresiones regulares

Limpieza de datos para Natural Language Processing

Limpieza de datos para Machine Learning

Scraping de datos de PDF usando expresiones regulares

19/10/2019 Actualización:

Conceptos básicos estadística

Tipos de datos

  • Variables Cuantitativas: Una variable cuantitativa es simplemente una cantidad cuantificable numérica en la que las operaciones aritméticas a menudo tienen sentido. Clasificamos en dos tipos:
    • Variable cuantitativa continua (Quantitative Continuous): Puede tomar cualquier valor dentro de un intervalo y puede tener muchos valores posibles. Por ejemplo medir la massa corporal de una población, o el tiempo que lleva ir de un punto a otro, el tiempo de espera en una cola, etc…
    • Variable cuantitativa discreta (Quantitative Discrete): Conjunto finito de números contables. Por ejemplo número de alumnos en una clase.
  • Variable Categórica (o cuantitativa): Clasifica a los individuos o artículos en diferentes grupos. Clasificamos en dos tipos:
    • Variable categórica ordinal (Categorical Ordinal): De ordinal, orden, es decir clasifica en función de un orden. Simplemente tiene algún tipo de orden o clasificación asociada a ella. Por ejemplo, los cursos de universidad, primero, segundo, tercero, etc…
    • Variable categórica nominal (Categorical Nominal). Que nombran pero no ordenan. Por ejemplo, païses, raza, sexo, etc…

Pregunta:

La edad de los individuos de una población que tipo de data es?
Cuantitativa continua.

Si clasificamos por mayores de edad (>18) marcando como 0 no y 1 sí, que tipode dato es?
Categórica nominal

Mejores herramientas para representar tipos de datos

Datos categóricos (categorical data):

  • Gráficos de barras (verticales, horizontales)
  • Tablas de frecuencia de datos.
    • Datos absolutos: representando por el valor numérico
    • Datos relativos: representado por % vs el total.

Datos cuantitativos (cuantitative data):

  • Histogramas
    • Forma del histograma (shape)
    • Centro o punto medio del histograma (center)
    • Rango de datos (min-maximo)
    • Valores atípicos (outlier)