Frequency Tables: Qualitative/Discrete Data

Frequency Tables: Qualitative/Discrete Data
Loading the math board and drawing, please wait…
2017-03-07 17:53
In collections Frequency distribution
This example demonstrates how to use frequency tables to display qualitative or discrete data. Key math concepts include data categorization, frequency statistics, and discrete data analysis. GeoGebra commands and objects used in construction are RandomElement, Zip, Take, Join, Shuffle, Element, Sort, KeepIf, Length, Max, If, Sequence, Flatten. Suitable for high school statistics introductory teaching to understand data organization and visualization.

GeoGebra Commands & Parameters

  1. RandomElement({0, 1, 2}) → dis16discusionMnima
  2. Zip("" + (dis16discusionMnima + t), t, {0, 1, 2, 3, 4}) → dis16
  3. Take(Shuffle[{"youtuber", "maestro", "veterinario", "militar", "cantante", "cocinero"}], 1, 2) → dis14segundas
  4. Take(Shuffle[{"médico", "informático", "bombero", "policía", "futbolista", "ingeniero"}], 1, 3) → dis14primeras
  5. Join({dis14primeras, dis14segundas}) → dis14
  6. Take(Shuffle[{"tenis", "escalada", "pádel", "patinaje", "parkour", "bicicleta", "crossfit", "karate", "judo", "natación"}], 1, 2) → dis10segundosDeportes
  7. Shuffle({"fútbol", "baloncesto", "running"}) → dis10primerosDeportes, {"fútbol", "running", "baloncesto"}
  8. Join({dis10primerosDeportes, dis10segundosDeportes}) → dis10
  9. Take(Shuffle[{"arroz", "cocido", "filetes", "pinchitos", "lentejas", "judías"}], 1, 2) → dis09segundasComidas
  10. Take(Shuffle[{"pizza", "hamburguesa", "espaguetti", "macarrones", "huevo frito"}], 1, 3) → dis09primerasComidas
  11. Join({dis09primerasComidas, dis09segundasComidas}) → dis09
  12. Take(Shuffle[{"Matemáticas", "Música", "Lengua", "Sociales", "Tecnolog\!ía", "Inglés"}], 1, 3) → dis06segundos
  13. Shuffle({"E.F.", "Plástica"}) → dis06primeros, {"Plástica", "E.F."}
  14. Join({dis06primeros, dis06segundos}) → dis06
  15. Element({dis01y02, dis01y02, dis03, dis04, dis05, dis06, dis07, dis08, dis09, dis10, dis11, dis12, dis13, dis14, dis15, dis16}, disNumEjercicio) → disCategorias
  16. Element({dis01prob, dis02prob, dis03prob, dis04prob, dis05prob, dis06prob, dis07prob, dis08prob, dis09prob, dis10prob, dis11prob, dis12prob, dis13prob, dis14prob, dis15prob, dis16prob}, disNumEjercicio) → disProbabilidades
  17. Sort(DatosDesordenadosDiscretos) → DatosOrdenadosDiscreto
  18. KeepIf(d ∈ disDatos, d, disCategorias) → disCategoriasUsadas
  19. Length(disCategoriasUsadas) → TotalGruposDiscreto
  20. RandomElement({4, 5}) → BarrasElementosPorSeccion
  21. RandomElement({4, 4, 5, 5}) → BarrasNumGrupos
  22. Element({T01valores, T02valores, T03valores, T04valores, T05valores, T06valores, T07valores, T08valores, T09valores, T10valores, T11valores, T12valores, T13valores, T14valores, T15valores, T16valores, T17valores, T18valores, T19valores, T20valores}, BarrasnumENUNCIADOELEGIDO) → TipoElegidoValores
  23. Element(TipoElegidoValores, 3) → ObjetivoMed
  24. Element(TipoElegidoValores, 2) → ObjetivoQ1
  25. Element(TipoElegidoValores, 4) → ObjetivoQ3
  26. Element(TipoElegidoValores, 8) → unidadMinima
  27. Max(TMinPosible, Element[TipoElegidoValores, 1]) → ObjetivoMin
  28. If(BarrasConDecimales, 10, 1) → BarrasFactor
  29. Sequence(Random[(ObjetivoQ1 * BarrasFactor), (ObjetivoMed * BarrasFactor)] / BarrasFactor, t, 1, BarrasElementosPorSeccion) → BarrasSec2, {25, 25, 27, 27, 27}
  30. Sequence(Random[(ObjetivoMed * BarrasFactor), (ObjetivoQ3 * BarrasFactor)] / BarrasFactor, t, 1, BarrasElementosPorSeccion) → BarrasSec3, {27, 28, 28, 28, 31}
  31. Element({5, 0.4, 2, 5, 4, 5, 5, 5, 5, 4, 3, 2, 2, 5, 5, 5, 5, 2, 0.5, 0.5}, BarrasnumENUNCIADOELEGIDO) → BarrasAmplitudIntervalos
  32. Sequence(Random[(BarrasMin * BarrasFactor), (ObjetivoQ1 * BarrasFactor)] / BarrasFactor, t, 1, BarrasElementosPorSeccion) → BarrasSec1, {25, 25, 25, 25, 25}
  33. Sequence(Random[(BarrasFactor * (BarrasMin + (t * BarrasAmplitudIntervalos))), (BarrasFactor * (BarrasMin + ((t + 1) * BarrasAmplitudIntervalos))) - 0.5] / BarrasFactor, t, 0, BarrasNumGrupos - 1) → SecElementoIntervalo, {28, 32, 36, 40}
  34. Sequence(Random[(ObjetivoQ3 * BarrasFactor), ((BarrasMax * BarrasFactor) * 0.99)] / BarrasFactor, t, 1, BarrasElementosPorSeccion) → BarrasSec4, {38, 36, 40, 43, 39}
  35. Shuffle(Join[{BarrasSec1, BarrasSec2, BarrasSec3, BarrasSec4}]) → DatosPrevio, {25, 28, 25, 28, 27, 27, 31, 25, 28, 25, 27, 43, 25, 25, 27, 36, 25, 38, 39, 40}
  36. Zip("" + (t), t, DatosDesordenadosContinuos) → DatosDesordenadosContinuosTexto
  37. If(estadisticaDiscreta, DatosDesordenadosDiscretos, DatosDesordenadosContinuosTexto) → DatosDesordenadosTexto
  38. Sort(DatosDesordenadosContinuos) → DatosOrdenadosContinuos
  39. Sort(datosBrutos) → datosOrdenadosContinuos
  40. Zip("" + (t), t, datosOrdenadosContinuos) → DatosOrdenadosContinuosTexto
  41. If(estadisticaDiscreta, DatosOrdenadosDiscreto, DatosOrdenadosContinuosTexto) → DatosOrdenadosTexto
  42. If(muestraOrdenados, DatosOrdenadosTexto, DatosDesordenadosTexto) → DatosMostrarPre
  43. KeepIf(BarrasMin + (2 * BarrasAmplitudIntervalos) ≤ X ∧ X < BarrasMin + (3 * BarrasAmplitudIntervalos), X, DatosOrdenadosContinuos) → BarrasTabla3Continuo
  44. KeepIf(BarrasMin + BarrasAmplitudIntervalos ≤ X ∧ X < BarrasMin + (2 * BarrasAmplitudIntervalos), X, DatosOrdenadosContinuos) → BarrasTabla2Continuo
  45. KeepIf(BarrasMin ≤ X ∧ X < BarrasMin + BarrasAmplitudIntervalos, X, DatosOrdenadosContinuos) → BarrasTabla1Continuo
  46. KeepIf(BarrasMin + (3 * BarrasAmplitudIntervalos) ≤ X ∧ X < BarrasMin + (4 * BarrasAmplitudIntervalos), X, DatosOrdenadosContinuos) → BarrasTabla4Continuo
  47. KeepIf(BarrasMin + (4 * BarrasAmplitudIntervalos) ≤ X ∧ X ≤ BarrasMin + (5 * BarrasAmplitudIntervalos), X, DatosOrdenadosContinuos) → BarrasTabla5Continuo
  48. If(Length[BarrasTabla5Continuo] ≠ 0, 5, If[Length[BarrasTabla4Continuo] ≠ 0, 4, 3]) → TotalGruposContinuo
  49. If(estadisticaDiscreta, disAbsolutas, solAbsolutasContinuas) → solAbsolutas
  50. Flatten(Zip[Sequence["\textcolor{" + (col) + "}", t, 1, sa], sa, solAbsolutas, col, {"#12BEC9", "#E497C1", "#C6D199", "brown", "blue", "#56C053", "#FFE505", "green", "blue", "brown"}]) → mascaraColorSol
  51. Join({nombresHombre, nombresMujer}) → nombres
  52. Flatten(Sequence[{"\,\,", "\,\,", "\,\,", "\,\,", "\quad "}, t, 1, 6]) → secuenciaSeparadora
  53. Length(DatosOrdenadosContinuos) → totalDatosContinuos
  54. If(estadisticaDiscreta, discretaTotal, totalDatosContinuos) → totalDatos
  55. Zip("" + (t) + (sep), sep, secuenciaSeparadora, t, DatosDesordenadosTexto) → txtdatosDesordenados
  56. If(corregido ∧ muestraOrdenados ∧ (¬cualitativoOrdinal), Zip[col + "{" + (d) + "}", d, DatosMostrarPre, col, mascaraColorSol], DatosMostrarPre) → DatosMostrar
  57. Shuffle(If[rellenaTodosLosGrupos, Join[{Take[DatosPrevio, 1, Length[DatosPrevio] - BarrasNumGrupos], SecElementoIntervalo}], DatosPrevio]) → DatosDesordenados, {27, 43, 27, 28, 27, 32, 27, 25, 28, 25, 40, 25, 28, 31, 25, 36, 25, 25, 36, 28}
  58. Sort(DatosDesordenados) → DatosOrdenadosAntiguo
  59. KeepIf(BarrasMin + (4 * BarrasAmplitudIntervalos) ≤ X ∧ X ≤ BarrasMin + (5 * BarrasAmplitudIntervalos), X, DatosOrdenadosAntiguo) → BarrasTabla5
  60. KeepIf(BarrasMin + (3 * BarrasAmplitudIntervalos) ≤ X ∧ X < BarrasMin + (4 * BarrasAmplitudIntervalos), X, DatosOrdenadosAntiguo) → BarrasTabla4
  61. If(Length[BarrasTabla5] ≠ 0, 5, If[Length[BarrasTabla4] ≠ 0, 4, 3]) → BarrasTotalGrupos
  62. Element({"la tabla de frecuencias", "el histograma", "el diagrama de sectores"}, tipoEjercicio) → txtTipoPregunta
  63. Element({"Horas", "Horas", "Equipo", "Personas", "Opinión", "Asignatura", "Suspensos", "Hermanos", "Comida", "Deporte", "Transporte", "Horas", "Mascota", "Profesión", "Nº\,días", "Veces"}, disNumEjercicio) → disVariable
  64. Midpoint(PosH5, PosH6) → Val5
  65. Midpoint(PosH4, PosH5) → Val4
  66. Midpoint(PosH3, PosH4) → Val3
  67. Midpoint(PosH2, PosH3) → Val2
  68. Midpoint(PosH1, PosH2) → Val1
  69. Sequence(Val5 + (0, (longVertical * t)), t, 0, 20) → histVerticalMarcas5
  70. Point(histVerticalMarcas5) → PH5
  71. Sequence(Val4 + (0, (longVertical * t)), t, 0, 20) → histVerticalMarcas4
  72. Point(histVerticalMarcas4) → PH4
  73. Sequence(Val3 + (0, (longVertical * t)), t, 0, 20) → histVerticalMarcas3
  74. Point(histVerticalMarcas3) → PH3
  75. Sequence(Val2 + (0, (longVertical * t)), t, 0, 20) → histVerticalMarcas2
  76. Point(histVerticalMarcas2) → PH2
  77. Sequence(Val1 + (0, (longVertical * t)), t, 0, 20) → histVerticalMarcas1
  78. Point(histVerticalMarcas1) → PH1
  79. Sequence(Rotate[CentroSectores + (1.5, 0), (((t * 360)) / numeroSectores)°, CentroSectores], t, 0, numeroSectores) → SectoresPuntos
  80. Point(SectoresPuntos) → Sec5
  81. Point(SectoresPuntos) → Sec4
  82. Point(SectoresPuntos) → Sec3
  83. Point(SectoresPuntos) → Sec2
  84. Point(SectoresPuntos) → Sec1
  85. Take({ac1, ac2, ac3, ac4, ac5}, 1, TotalGrupos) → userAcum
  86. Take({rel1, rel2, rel3, rel4, rel5, rel6}, 1, TotalGrupos + 1) → userRel
  87. Take({ab1, ab2, ab3, ab4, ab5, ab6}, 1, TotalGrupos + 1) → userAbsolutas
  88. Take({frecUser1, frecUser2, frecUser3, frecUser4, frecUser5}, 1, TotalGrupos) → respuestasHistograma
  89. Take({Sec1, Sec2, Sec3, Sec4, Sec5}, 1, TotalGrupos) → SecPuntos
  90. Zip(Element[Sort[SecPuntos, Zip[Angle[P, CentroSectores, Q], P, SecPuntos]], 2], Q, SecPuntos) → SecAnteriores
  91. Sequence(Sum[Take[solAbsolutas, 1, t]], t, 1, TotalGrupos) → solAbsolutasAcumulado
  92. Zip(s ≟ r, s, Join[{solAbsolutas, {totalDatos}}], r, userAbsolutas) → correctasAbsolutas
  93. Zip(s ≟ r, s, solAbsolutas, r, respuestasHistograma) → correctasHistogramas
  94. Zip((100 * t / totalDatos), t, solAbsolutas) → solRelativas
  95. Zip(abs(s - r) ≤ 0.9, s, Join[{solRelativas, {100}}], r, userRel) → correctasRelativas
  96. Sequence(Sum[Take[solRelativas, 1, t]], t, 1, TotalGrupos) → solRelativasAcumulado
  97. If(acumuladaConAbsoluta ≟ 1, solAbsolutasAcumulado, solRelativasAcumulado) → solAcumulado
  98. Zip(abs(s - r) ≤ 0.9, s, solAcumulado, r, userAcum) → correctasAcumulada
  99. Zip(Rotate[P, Angle[P, CentroSectores, Q] / 2, CentroSectores], Q, SecPuntos, P, SecAnteriores) → SecMediosUser
  100. Zip(Rotate[CentroSectores + (1.5, 0), (360 / 100 * s°), CentroSectores], s, solRelativasAcumulado) → solSectoresPuntos
  101. Join({{CentroSectores + (1.5, 0)}, solSectoresPuntos}) → solSectoresPuntosAnteriores
  102. Zip(Rotate[P, Angle[P, CentroSectores, Q] / 2, CentroSectores], Q, solSectoresPuntos, P, solSectoresPuntosAnteriores) → SecMediosSol
  103. If(¬corregido, 1, If[solMiRespuesta, 2, 3]) → tablaMostrar
  104. If(tablaMostrar ≟ 3, CrucesManual5, Element[solAbsolutas, 5]) → solAbs5
  105. Take({CrucesManual1, CrucesManual2, CrucesManual3, CrucesManual4, CrucesManual5}, 1, TotalGrupos) → userCruces
  106. Zip(s ≟ r, s, solAbsolutas, r, userCruces) → correctasCruces
  107. If(tablaMostrar ≟ 3, CrucesManual4, Element[solAbsolutas, 4]) → solAbs4
  108. If(tablaMostrar ≟ 3, CrucesManual3, Element[solAbsolutas, 3]) → solAbs3
  109. If(tablaMostrar ≟ 3, CrucesManual1, Element[solAbsolutas, 1]) → solAbs1
  110. If(tablaMostrar ≟ 3, CrucesManual2, Element[solAbsolutas, 2]) → solAbs2
  111. Random(3, 6) → totalEnGrupitos
  112. Element({{1}, {1, 1, 1, 2}, {1, 1, 1, 1, 1, 2, 2, 3}, {1, 1, 1, 2, 2, 3}}, totalEnGrupitos - 2) → maximoAtipicos
  113. If(ponAtipicos, RandomElement[maximoAtipicos], 0) → totalAtipicos
  114. If(atip1Derecha, ObjetivoQ3 + (unidadMinima * espacioQ3) + (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades))), ObjetivoQ1 - (unidadMinima * espacioQ1) - (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades)))) → atipico1
  115. If(atip2Derecha, ObjetivoQ3 + (unidadMinima * espacioQ3) + (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades))), ObjetivoQ1 - (unidadMinima * espacioQ1) - (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades)))) → atipico2
  116. If(atip3Derecha, ObjetivoQ3 + (unidadMinima * espacioQ3) + (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades))), ObjetivoQ1 - (unidadMinima * espacioQ1) - (unidadMinima * ceil(((1.5 * Random[11, 15] / 10) * IQRUnidades)))) → atipico3
  117. Flatten(Join[{{If[atip1Derecha ∧ totalAtipicos ≥ 1, {atipico1}, {}]}, {If[atip2Derecha ∧ totalAtipicos ≥ 2, {atipico2}, {}]}, {If[atip3Derecha ∧ totalAtipicos ≥ 3, {atipico3}, {}]}}]) → datosAtipicosDer
  118. Flatten(Join[{{If[(¬atip1Derecha) ∧ totalAtipicos ≥ 1, {atipico1}, {}]}, {If[(¬atip2Derecha) ∧ totalAtipicos ≥ 2, {atipico2}, {}]}, {If[(¬atip3Derecha) ∧ totalAtipicos ≥ 3, {atipico3}, {}]}}]) → datosAtipicosIzq
  119. Min({5, floor((anchoUnidades2 * porcentajeShift)), floor((anchoUnidades3 * porcentajeShift))}) → shift2
  120. If(imparMediana, 0, Random[0, shift2] + espacioQ2) → shiftUsado2
  121. If(imparMediana, {ObjetivoMed}, {datoRellenar2_1, datoRellenar2_2}) → datosIncluirParaMediana
  122. Min(Element[TipoElegidoValores, 5], TMaxPosible) → ObjetivoMax
  123. Min({5, floor((anchoUnidades4 * porcentajeShift)), floor((anchoUnidades3 * porcentajeShift))}) → shift3
  124. Min({5, floor((anchoUnidades1 * porcentajeShift)), floor((anchoUnidades2 * porcentajeShift))}) → shift1
  125. If(imparCuartiles, 0, Random[0, shift1] + espacioQ1) → shiftUsado1
  126. If(imparCuartiles, {ObjetivoQ1}, {datoRellenar1_1, datoRellenar1_2}) → datosIncluirParaCuartiles1
  127. If(imparCuartiles, 0, Random[0, shift3] + espacioQ3) → shiftUsado3
  128. If(imparCuartiles, {ObjetivoQ3}, {datoRellenar3_1, datoRellenar3_2}) → datosIncluirParaCuartiles3
  129. Sequence(ObjetivoMax - (unidadMinima * Random[0, anchoUnidades4 - shiftUsado3]), t, 1, totalEnGrupitos - 1 - (¬imparCuartiles) - restarDerecha) → datosTramo4_0, {35}
  130. Sequence(salidaTramo3 + (unidadMinima * Random[0, Min[anchoUnidades3 - shiftUsado2, anchoUnidades3 - shiftUsado3]]), t, 1, numDatos3) → datosTramo3, {28}
  131. Sequence(ObjetivoMin + (unidadMinima * Random[0, anchoUnidades1 - shiftUsado1]), t, 1, numDatos1) → datosTramo1_0, {23}
  132. Join({datosAtipicosIzq, {ObjetivoMin}, datosTramo1_0}) → datosTramo1
  133. Join({datosTramo4_0, {ObjetivoMax}, datosAtipicosDer}) → datosTramo4
  134. Zip("\red{\underline{\overline{" + (t) + "}}}\,\,", t, datosAtipicosDer) → txtDatosAtipicosDer
  135. Zip("\red{\underline{\overline{" + (t) + "}}}\,\,", t, datosAtipicosIzq) → txtDatosAtipicosIzq
  136. Zip("\orange{" + (t) + "}\,\,", t, datosTramo4_0) → txtdatosTramo4_0
  137. Join({txtdatosTramo4_0, {"\bold{\orange{" + ObjetivoMax + "}}\,\,"}, txtDatosAtipicosDer}) → txtdatosTramo4
  138. If(imparCuartiles, {"\bold{\crimson{|\underline{\overline{" + ObjetivoQ3 + "}}|}}\,\,"}, {"\crimson{" + datoRellenar3_1 + "}\,\brown{{\stackrel{\small{" + ObjetivoQ3 + "}}{✂}}}\,", "\orange{" + datoRellenar3_2 + "}\,\,"}) → txtdatosIncluirParaCuartiles3
  139. Zip("\orange{" + (t) + "}\,\,", t, datosTramo1_0) → txtdatosTramo1_0
  140. Join({txtDatosAtipicosIzq, {"\bold{\orange{" + ObjetivoMin + "}}\,\,"}, txtdatosTramo1_0}) → txtdatosTramo1
  141. If(imparCuartiles, {"\bold{\crimson{|\underline{\overline{" + ObjetivoQ1 + "}}|}}\,\,"}, {"\orange{" + datoRellenar1_1 + "}\,\brown{{\stackrel{\small{" + ObjetivoQ1 + "}}{✂}}}\,", "\crimson{" + datoRellenar1_2 + "}\,\,"}) → txtdatosIncluirParaCuartiles1
  142. If(imparMediana, {"{\bold{\crimson{|\underline{\overline{" + ObjetivoMed + "}}|}}}\,\,"}, {"\crimson{" + datoRellenar2_1 + "}\,\brown{{\stackrel{\small{" + ObjetivoMed + "}}{✂}}}\,", "\crimson{" + datoRellenar2_2 + "}\,\,"}) → txtdatosIncluirParaMediana
  143. Zip("" + (If[corregido, col, "\blue"]) + "{" + (t) + "}" + (sep), sep, secuenciaSeparadora, t, DatosOrdenadosTexto, col, mascaraColorSol) → txtListaDatosOrdenados
  144. Zip("\crimson{" + (t) + "}\,\,", t, datosTramo3) → txtdatosTramo3
  145. If(imparCuartiles, {ObjetivoQ1, ObjetivoQ3}, {datoRellenar1_1, datoRellenar1_2, datoRellenar3_1, datoRellenar3_2}) → datosIncluirParaCuartiles
  146. Join({datosIncluirParaCuartiles, datosIncluirParaMediana}) → datosIncluir
  147. Line(P21, P22) → r2
  148. Line(P11, P12) → r1
  149. Intersect(ejeSuperior, r1) → S1
  150. Intersect(ejeSuperior, r2) → S2
  151. Line(P31, P32) → r3
  152. Line(P41, P42) → r4
  153. Line(P51, P52) → r5
  154. Intersect(ejeSuperior, r3) → S3
  155. Intersect(ejeSuperior, r4) → S4
  156. Intersect(ejeSuperior, r5) → S5
  157. Sort({x(S1), x(S2), x(S3), x(S4), x(S5)}) → listaValoresX
  158. Element(listaValoresX, 1) → xMin
  159. Element(listaValoresX, 5) → xMax
  160. Element(listaValoresX, 3) → xMed
  161. Element(listaValoresX, 2) → xQ1
  162. Element(listaValoresX, 4) → xQ3
  163. Segment((xMin, posMedia), (xQ1, posMedia)) → sBigote1
  164. Segment((xMax, posMedia), (xQ3, posMedia)) → sBigote2
  165. Segment((xMin, posBaja), (xMin, posAlta)) → s1
  166. Segment((xMax, posBaja), (xMax, posAlta)) → s5
  167. Segment((xQ1, posBaja), (xQ1, posAlta)) → s2
  168. Segment((xMed, posBaja), (xMed, posAlta)) → s3
  169. Segment((xQ3, posBaja), (xQ3, posAlta)) → s4
  170. Segment((xQ1, posBaja), (xQ3, posBaja)) → sCaja1
  171. Segment((xQ1, posAlta), (xQ3, posAlta)) → sCaja2
  172. Line((0, 0), (10, 0)) → lineaBase
  173. Element(TipoElegidoValores, 6) → minEje
  174. Element(TipoElegidoValores, 7) → maxEje
  175. Sequence(((t * 12 / 4), 0), t, 0, 4) → listaCirculos
  176. Textfield(listaOutliersUser) → CasillaAtipicos
  177. Zip((valorGrafico(t), posMedia), t, listaOutliersUser) → listaOutliersGrafico
  178. If(imparCuartiles, {"\bold{\crimson{" + ObjetivoQ1 + "}}\,\,"}, {"\crimson{" + datoRellenar1_1 + "}\,\,", "\crimson{" + datoRellenar1_2 + "}\,\,"}) → lista1
  179. Length(enunciados) → totalEnunciados
  180. Element(TipoElegidoValores, 1) → a
  181. Element(TipoElegidoValores, 1) → TMin
  182. Segment((valorGrafico(ObjetivoMin), posMedia), (valorGrafico(ObjetivoQ1), posMedia)) → solsBigote1
  183. Segment((valorGrafico(ObjetivoMax), posMedia), (valorGrafico(ObjetivoQ3), posMedia)) → solsBigote2
  184. Segment((valorGrafico(ObjetivoMin), posBaja), (valorGrafico(ObjetivoMin), posAlta)) → sols1
  185. Segment((valorGrafico(ObjetivoMax), posBaja), (valorGrafico(ObjetivoMax), posAlta)) → sols5
  186. Segment((valorGrafico(ObjetivoQ1), posBaja), (valorGrafico(ObjetivoQ1), posAlta)) → sols2
  187. Segment((valorGrafico(ObjetivoQ3), posBaja), (valorGrafico(ObjetivoQ3), posAlta)) → sols4
  188. Segment((valorGrafico(ObjetivoQ1), posBaja), (valorGrafico(ObjetivoQ3), posBaja)) → solsCaja1
  189. Segment((valorGrafico(ObjetivoQ1), posAlta), (valorGrafico(ObjetivoQ3), posAlta)) → solsCaja2
  190. Segment((valorGrafico(ObjetivoMed), posBaja), (valorGrafico(ObjetivoMed), posAlta)) → sols3
  191. If(corregido, {{txtUnidades + "^{\phantom{|}}", If[muestraOrdenados, txtDatosOrdenados, txtDatos] + "_{\phantom{|}}"}}, {{If[muestraOrdenados, "Ordenados", "\bold{" + txtUnidades + "}"], "^{\phantom{|}}" + (If[muestraOrdenados, txtDatosOrdenados, txtDatos]) + "_{\phantom{|}}"}}) → listaDatosMostrados
  192. Line(A, B) → f
  193. Line(A, B) → separador1
  194. Sequence(Segment[((t * 12 / 60), -0.05), ((t * 12 / 60), 0.05)], t, -10, 80) → listaGradaciones
  195. Join({datosAtipicosDer, datosAtipicosIzq}) → datosAtipicosValores
  196. Zip((valorGrafico(t), posMedia), t, datosAtipicosValores) → datosAtipicosGrafico
  197. TableText(listaDatosMostrados, "lch|_") → tablaConDatos
  198. Join({{"\brown{Relativa\,{\scriptsize{(%)}}\,}"}, Zip["" + (If[abs(s - u) ≤ 0.9, "\green", "\red"]) + "{" + (s) + "{\small{%}}}", u, userRel, s, Join[{solRelativas, {100}}]]}) → BarrasColumnaRelativa
  199. Sum(Sequence["0", t, 1, TotalGrupos - 1]) → TotalCeros
  200. Segment((x(PosXb1), y(OrigenX)) - (0.5, 0.3), (x(PosXb1) + (TotalGrupos * despX), y(OrigenX)) - (0.3, 0.3)) → segmentoX
  201. Join({{"\brown{Acumulada}\," + txtTipoAcumulada}, Zip["" + (If[abs(s - u) ≤ 0.9, "\green", "\red"]) + "{" + (s) + "}", u, userAcum, s, solAcumulado], {""}}) → BarrasColumnaAcumulada
  202. Textfield(txtab1) → Entradaab1
  203. Textfield(txtab2) → Entradaab2
  204. Textfield(txtab3) → Entradaab3
  205. Textfield(txtab4) → Entradaab4
  206. Textfield(txtab5) → Entradaab5
  207. Textfield(txtab6) → Entradaab6
  208. Textfield(txtrel1) → Entradarel1
  209. Textfield(txtrel2) → Entradarel2
  210. Textfield(txtrel3) → Entradarel3
  211. Textfield(txtrel4) → Entradarel4
  212. Textfield(txtrel5) → Entradarel5
  213. Textfield(txtrel6) → Entradarel6
  214. Textfield(txtac1) → Entradaac1
  215. Textfield(txtac2) → Entradaac2
  216. Textfield(txtac3) → Entradaac3
  217. Textfield(txtac4) → Entradaac4
  218. Textfield(txtac5) → Entradaac5
  219. Join({{"\brown{Absoluta}"}, Zip["" + (If[s ≟ u, "\green", "\red"]) + "{" + (u) + "}", u, userAbsolutas, s, Join[{solAbsolutas, {totalDatos}}]]}) → BarrasColumnaAbsolutasUser
  220. Join({{"\brown{Relativa\,{\scriptsize{(%)}}\,}"}, Zip["" + (If[abs(s - u) ≤ 0.9, "\green", "\red"]) + "{" + (u) + "{\small{%}}}", u, userRel, s, Join[{solRelativas, {100}}]]}) → BarrasColumnaRelativaUser
  221. Segment(PosH0, PosHFin) → histHorizontal
  222. Segment(PosH0, PosH0 + (0, (longVertical * 15))) → histVertical
  223. Sequence(PosH0 + (0, (longVertical * t)), t, 1, 15) → histVerticalMarcas
  224. Polygon({PosH1, PosH2, (x(PosH2), y(PH1)), (x(PosH1), y(PH1))}) → rec1
  225. Polygon({PosH2, PosH3, (x(PosH3), y(PH2)), (x(PosH2), y(PH2))}) → rec2
  226. Polygon({PosH3, PosH4, (x(PosH4), y(PH3)), (x(PosH3), y(PH3))}) → rec3
  227. Polygon({PosH4, PosH5, (x(PosH5), y(PH4)), (x(PosH4), y(PH4))}) → rec4
  228. Polygon({PosH5, PosH6, (x(PosH6), y(PH5)), (x(PosH5), y(PH5))}) → rec5
  229. PolyLine(Take[{PH1, PH2, PH3, PH4, PH5}, 1, TotalGrupos]) → polFrecuencias
  230. PolyLine(Zip[Midpoint[(x(eDer), y(PosH1) + (s * longVertical)), (x(eIz), y(PosH1) + (s * longVertical))], s, solAbsolutas, eIz, Take[{PosH1, PosH2, PosH3, PosH4, PosH5}, 1, TotalGrupos], eDer, {PosH2, PosH3, PosH4, PosH5, PosH6}]) → PolFrecSolucion
  231. Element(Sort[SecPuntos, Zip[Angle[P, CentroSectores, Sec1], P, SecPuntos]], 2) → Anterior1
  232. CircleSector(CentroSectores, Element[SecAnteriores, 1], Sec1) → Sector1
  233. CircleSector(CentroSectores, Element[SecAnteriores, 2], Sec2) → Sector2
  234. CircleSector(CentroSectores, Element[SecAnteriores, 3], Sec3) → Sector3
  235. CircleSector(CentroSectores, Element[SecAnteriores, 4], Sec4) → Sector4
  236. If(solMiRespuesta ∧ corregido, SecMediosSol, SecMediosUser) → SecMedios
  237. CircleSector(CentroSectores, Element[SecAnteriores, 5], Sec5) → Sector5
  238. Sequence(If[t ≤ TotalGrupos, Element[SecMedios, t], CentroSectores], t, 1, 5) → SecPosCartel
  239. Sequence(If[t ≤ TotalGrupos, Element[SecMedios, t], CentroSectores], t, 1, 5) → secPosCartel
  240. CircleSector(CentroSectores, Element[solSectoresPuntosAnteriores, 1], Element[solSectoresPuntos, 1]) → solSectores1
  241. CircleSector(CentroSectores, Element[solSectoresPuntosAnteriores, 2], Element[solSectoresPuntos, 2]) → solSectores2
  242. CircleSector(CentroSectores, Element[solSectoresPuntosAnteriores, 3], Element[solSectoresPuntos, 3]) → solSectores3
  243. CircleSector(CentroSectores, Element[solSectoresPuntosAnteriores, 4], Element[solSectoresPuntos, 4]) → solSectores4
  244. CircleSector(CentroSectores, Element[solSectoresPuntosAnteriores, 5], Element[solSectoresPuntos, 5]) → solSectores5
  245. Polygon({PosH1_1, PosH1_2, (x(PosH1_2), y(PH1)), (x(PosH1_1), y(PH1))}) → rec1discreta
  246. Polygon({PosH2_1, PosH2_2, (x(PosH2_2), y(PH2)), (x(PosH2_1), y(PH2))}) → rec2discreta
  247. Polygon({PosH3_1, PosH3_2, (x(PosH3_2), y(PH3)), (x(PosH3_1), y(PH3))}) → rec3discreta
  248. Polygon({PosH4_1, PosH4_2, (x(PosH4_2), y(PH4)), (x(PosH4_1), y(PH4))}) → rec4discreta
  249. Polygon({PosH5_1, PosH5_2, (x(PosH5_2), y(PH5)), (x(PosH5_1), y(PH5))}) → rec5discreta
  250. KeepIf(BarrasMin ≤ X ∧ X < BarrasMin + BarrasAmplitudIntervalos, X, DatosOrdenadosAntiguo) → BarrasTabla1
  251. KeepIf(BarrasMin + BarrasAmplitudIntervalos ≤ X ∧ X < BarrasMin + (2 * BarrasAmplitudIntervalos), X, DatosOrdenadosAntiguo) → BarrasTabla2
  252. If(estadisticaDiscreta, NombreIntervalosDiscretos, NombreIntervalosContinuos) → NombreIntervalos
  253. KeepIf(BarrasMin + (2 * BarrasAmplitudIntervalos) ≤ X ∧ X < BarrasMin + (3 * BarrasAmplitudIntervalos), X, DatosOrdenadosAntiguo) → BarrasTabla3
  254. Join({{"\brown{" + txtUnidades + "}"}, NombreIntervalos, {"\phantom{XX}\crimson{Total\!:}\phantom{XX\left[\right)\!\!\!\!]}"}}) → BarrasTextosIntervalos
  255. Join({{"\brown{Absoluta}"}, Zip["" + (If[s ≟ u, "\green", "\red"]) + "{" + (s) + "}", u, userAbsolutas, s, Join[{solAbsolutas, {totalDatos}}]]}) → BarrasColumnaAbsolutas
  256. Zip(Angle[P, CentroSectores, Q], Q, SecPuntos, P, SecAnteriores) → SecAngulos
  257. Zip((100 / 360 * ang / °), ang, SecAngulos) → SecPorcentajesUser
  258. TableText({{"" + disVariable, DatosDosColumnas}}, "h_|") → cualitativostxt
  259. If(solMiRespuesta ∧ corregido, solRelativas, SecPorcentajesUser) → SecPorcentajes
  260. Join({{"\brown{Acumulada}\," + txtTipoAcumulada}, Zip["" + (If[abs(s - u) ≤ 0.9, "\green", "\red"]) + "{" + (u) + "}", u, userAcum, s, solAcumulado], {""}}) → BarrasColumnaAcumuladaUser
  261. Zip(Polygon[P], P, recSolucionContinuaPtos) → recSolucionContinua
  262. Circle(CentroSectores, 1.5) → CircSectores
  263. Min(tiposHechos) → menorTipoHecho
  264. KeepIf(Element[tiposHechos, n] ≤ menorTipoHecho, n, 1…If[usaDiscretaYContinua, 6, 3]) → tiposPosibles
  265. Zip(Length[KeepIf[t ≟ d, d, disDatos]], t, disCategoriasUsadas) → disAbsolutasDinamico
  266. Shuffle(If[rellenaTodosLosGrupos, Join[{Take[DatosPrevio, 1, Length[DatosPrevio] - BarrasNumGrupos], SecElementoIntervalo}], DatosPrevio]) → DatosDesordenadosContinuosDinamico, {28, 40, 36, 36, 25, 25, 27, 25, 27, 25, 27, 43, 25, 28, 27, 28, 28, 25, 31, 32}
  267. Join({Take[disCategorias, 1, 4], Sequence[Element[disCategorias, RandomElement[disProbabilidades]], t, 1, discretaTotal - 4]}) → disDatosDinamico
  268. Take({Length[BarrasTabla1Continuo], Length[BarrasTabla2Continuo], Length[BarrasTabla3Continuo], Length[BarrasTabla4Continuo], Length[BarrasTabla5Continuo]}, 1, TotalGrupos) → solAbsolutasContinuasDinamico
  269. Zip("\phantom{[)}" + (n), n, disCategoriasUsadas) → NombreIntervalosDiscretosDinamico
  270. Sequence("\left[" + (BarrasMin + (t * BarrasAmplitudIntervalos)) + "," + (BarrasMin + ((t + 1) * BarrasAmplitudIntervalos)) + "\right" + (If[BarrasCerrarConCorchete ∧ t ≟ BarrasTotalGrupos - 1, "]", ")"]), t, 0, BarrasTotalGrupos - 1) → NombreIntervalosContinuosDinamico
  271. Zip(Polygon[P], P, recSolucionDiscretaPtos) → recSolucionDiscreta