Vous êtes sur la page 1sur 87

Estadsticas con lenguaje R

Jose L. Romero P.
Universidad Nacional Abierta

2009
ii
Indice general

Introduccion V

1. Un primer encuentro con R 1


1.1. Porque el R? . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Como conseguir e instalar el R? . . . . . . . . . . . . . . . . 5
1.3. La primera sesion y los fundamentos de R . . . . . . . . . . . 7
1.4. Preguntas de la Unidad . . . . . . . . . . . . . . . . . . . . . . 22

2. Sobre los datos y la muestra 25


2.1. Enunciado del problema de investigacion y datos presentados . 25
2.2. Sobre las variables y los tipos de variables . . . . . . . . . . . 26
2.3. Como cargar los datos de la muestra en R . . . . . . . . . . . 30
2.4. Preguntas de la Unidad . . . . . . . . . . . . . . . . . . . . . . 34

3. Estadstica Descriptiva Univariante 35


3.1. Exploracion de datos . . . . . . . . . . . . . . . . . . . . . . . 35
3.2. Medidas de dispersion y de tendencia central . . . . . . . . . . 36
3.3. Datos extremos o aislados . . . . . . . . . . . . . . . . . . . . 45
3.4. Graficas estadsticas en R . . . . . . . . . . . . . . . . . . . . 48
3.5. ... y de vuelta nuevamente a la exploracion de datos . . . . . . 62
3.6. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . 74

A. Tabla de datos 75

Bibliografa 79

iii
iv INDICE GENERAL
Introduccion

El proposito de este texto es principalmente el de servir de gua para la elabo-


racion de los trabajos practicos correspondientes a las materias de inferencia
estadstica que se cursan en distintas carreras de la Universidad Nacional
Abierta. Como punto de partida se considera los objetivos evaluables corres-
pondientes a estos trabajos practicos, los cuales se transcriben a continuacion
sin indicar las asignaturas en particular en cuyos planes de curso figuran es-
tos:

Realizar un resumen de un conjunto de datos estadsticos, cualitativos


o cuantitativos, para su presentacion y explicacion.

Inferir sobre parametros poblacionales mediante el modelo de regresion


multiple, interpretar los resultados y pronosticar valores de la variable
dependiente. Analizar modelos de regresion lineal, en parametros, para
determinar cual ajusta mejor a un conjunto de datos correspondientes
a dos o mas variables.

Aplicar el contraste 2 en la prueba de bondad de ajuste y en la prueba


de independencia.

Aplicar el analisis de varianza y analizar los diversos modelos de clasi-


ficacion.

Al leer entre lneas el enunciado de estos objetivos, se puede entrever que


lo que se busca es que el estudiante sea capaz de explorar un conjunto de
datos correspondientes a un fenomeno real para buscar relaciones entre los
elementos constituyentes de ese fenomeno, responder a ciertas inquietudes o
verificar sus suposiciones sobre dicho fenomeno. En fin, lo que se busca es que

v
vi INTRODUCCION

el estudiante sea capaz de construir un modelo matematico (o probabilstico


en todo caso) de la realidad y lo pueda aplicar a la toma de decisiones pa-
ra extraer informacion significativa hasta entonces oculta. Huelga mencionar
las implicaciones practicas de esto o decir cuan relevante puede ser para la
formacion de profesionales en las areas de conocimiento de la ingeniera, la
administracion y la educacion. No obstante, es menester senalar que aparen-
temente existe una brecha enorme entre el conocimiento teorico estadstico
y la pericia necesaria para aplicar de forma practica este conocimiento al
estudio de la realidad. Esta brecha se manifiesta en la carencia de material
instruccional que ejemplifique, a partir del estudio de casos reales, como in-
terpretar, validar y darle sentido a los resultados de los analisis estadsticos
descriptivos o inferenciales. Tambien se requiere aprender sobre el manejo de
herramientas computacionales idoneas para este tipo de estudios.
Existen varias aplicaciones o paquetes de software orientados hacia la
estadstica, as como tambien programas de proposito general que pudiesen
ser aplicados a la estadstica- verbigracia Microsoft Excel. En la eleccion de
un software para desarrollar los ejemplos en este texto, privan los siguientes
criterios:
Potencia, precision y velocidad del motor numerico El analisis esta-
dstico comporta una cantidad importante de calculo numerico. Si se
tiene que analizar a una gran cantidad de datos, es importante que
el motor numerico (el componente con el cual el programa realiza los
computos) sea rapido y confiable.

Versatilidad Es necesario contar con las herramientas necesarias para apli-


car una gran variedad de procedimientos estadsticos a los datos. En
la investigacion estadstica de datos, es frecuente que al aplicar deter-
minado analisis estadstico para atender a una determinada inquietud,
surjan posteriormente otras inquietudes que no estaban previstas al
inicio de la investigacion. La herramienta computacional tiene que ser
lo suficientemente versatil como para no limitar la curiosidad del inves-
tigador. Otro punto importante aqu es el referente a las capacidades
del programa para construir graficas estadsticas.

Disponibilidad Bajo este criterio se engloba todo lo referente a la platafor-


ma del equipo sobre el cual se instala el software as como tambien el
tema de los costos de la licencia al usuario. Es deseable que el progra-
ma sea portable a la mayora de los equipos (con sistemas operativos
vii

y perfiles de hardware distintos) y que su licencia de uso sea lo menos


costosa posible.

Facilidad de uso Cuan facil de usar es un software estadstico? Cuan


alta es la curva de aprendizaje necesario para aprender a manejar el
software con un mnimo de destreza? Como es el sistema de ayuda
al usuario de la aplicacion (manuales, ayuda en lnea u otro tipo de
soporte como foros o canales de chat)?

Se ha escogido, en base a los criterios antes mencionados, el R como el


entorno computacional con el cual se desarrollaran los contenidos y ejemplos
de este texto, las razones de ello se exponen en la primera unidad. En la
primera unidad se indica ademas como conseguir e instalar el R y se da un
pequeno paseo guiado para introducir al estudiante en su uso. En la segunda
unidad se expone la problematica que se abordara como ejemplo en el resto
del texto. Aqu se formulan las interrogantes que motivan el analisis estads-
tico del problema y se hacen algunas consideraciones generales sobre el tipo
de datos, la muestra, con la que se trabajara , as como otras consideraciones
para motivar el uso de las herramientas que se emplearan posteriormente.
La tercera unidad esta dedicada a la estadstica descriptiva y su aplicacion
a los datos muestrales presentados. La cuarta, quinta y sexta unidad versan
sobre la inferencia estadstica, los modelos de regresion lineal y el ANOVA
respectivamente.
viii INTRODUCCION
Unidad 1

Un primer encuentro con R

1.1. Porque el R?

R es a la vez una aplicacion y un entorno de programacion orientado


principalmente al analisis estadstico. En cuanto a la parte de aplicacion de
lo antes dicho, cabe resaltar que R posee muchas funcionalidades comunes
a otros programas como SPSS, SAS, Minitab y otros similares para realizar
analisis estadsticos. Hasta aqu su parecido con estos ultimos, pues mien-
tras que en estos el usuario realiza una accion (como cargar datos o efectuar
un determinado analisis estadstico a ellos) mediante la seleccion de algun
elemento de menu de un GUI1 , en R el analista realiza todas las acciones
mediante la entrada de comandos en una consola. Este tipo de interfaz de
usuario se conoce como CLI2 . Los comandos o una particular secuencia de
ellos se conoce en el argot computacional como un script y su sintaxis y es-
tructura se conforman a las normas de lo que se conoce como lenguaje de
1 GUI (Graphical User Interphase) es una interfaz grafica de usuario. La facilidad de
uso que supone un GUI lo hace un elemento caracterstico de aplicaciones populares como
Windows u Office, donde el usuario interactua con el software mediante ventanas, iconos
y senalando cosas mediante el puntero del raton.
2 CLI (Command Line Interphase) es una interfaz de usuario basada en la entrada de

lneas de comando en una consola.

1
2 UNIDAD 1. UN PRIMER ENCUENTRO CON R

programacion, que en este caso es el lenguaje R. A esto ultimo (y a otras


cosas mas) se refiere la frase entorno de programacion con la cual comien-
za este capitulo. Esta cualidad del R de ser un entorno o de programacion
parece como una seria desventaja frente a las otras aplicaciones estadsticas
mencionadas, pues exige de parte del usuario un esfuerzo para familiarizarse
con un lenguaje de programacion3 . Pero esta aparente desventaja es en reali-
dad la gran fortaleza del R como aplicacion orientada al analisis estadstico
de datos y el esfuerzo invertido al incursionar en su uso bien vale la pena.
Hasta este punto el R luce negativamente en cuanto a su facilidad de
uso, que era uno de los criterios para la eleccion de un software de trabajo
estadstico que formulamos en la introduccion. Ante todo cabe resaltar que
existen algunos suplementos 4 para el R que lo convierten en una aplicacion
tipo GUI como otras tantas o en el mercado; ironicamente esta cualidad del
R de poder ser suplementado se debe justamente a que es tambien un entorno
de programacion. Sin embargo, dado el enfoque propuesto para este texto, he
decidido no entrar mucho en detalles con respecto a los suplementos, y esto
es porque ademas, el entorno de programacion con un lenguaje interpretado
se adapta mejor al trabajo del analisis estadstico de datos.
Cuando un investigador se enfrenta a un conjunto de datos al cual se
le pretende hacer un estudio estadstico, generalmente, aunque no siempre,
existe una inquietud que motiva y justifica tal estudio: seran las ventas
de una sucursal significativamente mayor que las de otra? De que manera
influye el ingreso familiar sobre el rendimiento academico de un estudiante?,
etc. Sin embargo, en el transcurso de la investigacion, y a medida que el
investigador se va familiarizando con los datos o va dando respuesta a las
interrogantes iniciales, surgen otras interrogantes. El entorno computacional
debe ser lo suficientemente flexible como para no restringir la curiosidad
sino mas bien alentar las interrogantes. Esto no se logra de igual manera
con una aplicacion tipo GUI porque, entre otras cosas, es engorroso realizar
acciones con los datos que no estan previstas en el conjunto predeterminado
de herramientas de la aplicacion. Ejemplos de esto se encuentran cuando uno
quiere pre-procesar los datos, realizar conversiones de variables o filtrar los
3 Sobreeste tipo de programas, se dice que tienen una alta curva de aprendizaje por el
esfuerzo que se debe invertir para aprender a usarlos.
4 Entre estos suplementos estan el R-Commander y ahora, muy recientemente, uno

llamado a Deducer, el cual esta orientado principalmente para estudiantes de estadstica.


Por lo reciente de este ultimo, el autor no ha tenido tiempo de evaluarlo.
1.1. PORQUE EL R? 3

datos de alguna forma no usual. Por otro lado, si por ejemplo se realiza un
analisis de regresion en una aplicacion tipo GUI, la salida es un solamente un
extenso informe. En cambio, en una aplicacion como R, que posee un entorno
de programacion orientado a objetos, la salida en tal caso es una instancia de
un objeto de clase regresion, a la cual el programador/usuario puede aplicar
posteriormente otros metodos o invocar otras funciones que admitan como
entrada un objeto de esa clase, tal como realizar un analisis de varianza o de
residuos posterior, graficar o generar informes a la medida, etc.
Desde el punto de vista pedagogico, es mas interesante aprender a traba-
jar bajo un entorno tipo CLI porque ello obliga al estudiante saber realmente
lo que esta haciendo[5] y le inculca buenos habitos en el analisis de datos. En
contraposicion, un principiante frente a un GUI (como el proverbial mono
con hojilla de alta peligrosidad) puede hacer clic sobre iconos y siempre ob-
tendra resultados, pero estos resultados no siempre seran utiles, o siquiera
coherentes.
En definitiva, dada la naturaleza del trabajo del investigador estadstico,
la flexibilidad que se gana al trabajar con una aplicacion estadstica que es a
la vez entorno de programacion es una compensacion justa para tomarse la
molestia de aprender a trabajar con un entorno de programacion, lo cual por
otra parte no es tan difcil, como se vera. Inclusive, a la larga puede resultar
hasta mas facil, como senala Crawley [4][11] con respecto a S-PLUS, una
version comercial de R con GUI y consola:

Si le gusta perder el tiempo, puede desplegar menus y hacer clic


sobre cajas de dialogo cuantas veces quiera. Sin embargo, esto
consume 5 a 10 veces mas tiempo que escribir en la consola de
comandos. La vida es corta. Utilice la consola de comandos.

Mas aun, como el proyecto R es un entorno de programacion y un software


abierto, se hace posible que colaboradores de este proyecto desarrollen cons-
tantemente libreras o paquetes con las funcionalidades mas variadas para el
analisis5 . Como consecuencia, el desarrollo de este software es muy dinamico
5 Ejemplos de esto: paquetes para la simulacion de dinamica de sistemas (muy usado en
estudios ecologicos), paquetes con funciones de econometra, para el trabajo de datos de
SIG (Sistemas de Informacion Geograficos), analisis de patrones y redes neuronales, libre-
ras para investigacion agrcola, redes Bayesianas, herramientas para medicina y bioanalisis
y un largo etcetera.
4 UNIDAD 1. UN PRIMER ENCUENTRO CON R

y a la vez, por tratarse de un software de codigo abierto, las libreras contri-


buidas son sometidas a un riguroso escrutinio de parte de los responsables del
proyecto o de cualquier colaborador, lo cual garantiza la optimalidad de su
desempeno y su conformidad al cuerpo de la teora estadstica/matematica.
El usuario cuenta entonces con un conjunto de herramientas probadas y muy
actualizadas.
Del hecho de que R es un software abierto se deriva otra consecuencia
importante: la licencia bajo la cual se distribuye R (una licencia GNU-GPL)
permite la distribucion e instalacion gratis de este software, amen de su mo-
dificacion o adaptacion bajo ciertas condiciones. Esto hace del R un software
muy atractivo para las instituciones educativas, pues contribuye a reducir
los costos operativos incurridos en tener que comprar un numero indeter-
minado de licencias y permite a los estudiantes utilizar el mismo software
que la institucion legalmente sin tener que comprar una licencia para ello.
De su condicion de ser software libre se deriva otra ventaja: el sistema de
ayuda en lnea para R a traves de foros, listas de correos y chats es extenso
y no es exclusivo para aquellos usuarios que pagan la licencia. En la pagina
web oficial del proyecto R, http://cran.r-project.org/, se indica como
suscribirse a una lista de correos (un mailing list) de ayuda para R. Cuan-
do uno se inscribe a una lista de correos, puede hacer preguntas que seran
respondidas (si estan debidamente formuladas) por alguien de la comunidad
de usuarios o por los mismos creadores de R y recibir un correo diario con
el resumen de todas las preguntas y respuestas. Personalmente, esta lista de
correos me ha sido de mucha utilidad para comprender algunos aspectos del
lenguaje, con la ventaja adicional de poder hacer preguntas orientadas mas
al ambito de la teora estadstica, pues los usuarios mas experimentados de
R generalmente la conocen muy bien. Se puede tambien obtener ayuda ins-
tantanea a traves del chat. Para esto, debe disponer de un programa cliente
de IRC, el cual, si utiliza el navegador Mozilla Firefox (otro software libre
muy recomendado), se puede descargar como un complemento llamado Chat-
zilla. Una vez instalado el Chatzilla, este se invoca seleccionandolo a traves
del menu de Herramientas. Una vez iniciado, se hace clic sobre el servidor
freenode en la lista de servidores disponibles desplegada en la parte inferior
de la consola, luego de lo cual se ingresa el comando /join R en la lnea de
comandos e ingresara al canal de ayuda de R en el servidor freenode de IRC
(irc://freenode/R). Y desde luego, hay una extensa coleccion de manuales
y documentacion disponible gratuitamente a traves de la pagina de la CRAN
1.2. COMO CONSEGUIR E INSTALAR EL R? 5

antes mencionada.
Todo lo expuesto hasta ahora justifica la eleccion de R en base a los
criterios de versatilidad, disponibilidad y facilidad de uso mencionados en
la introduccion. Para completar esta exposicion de motivos debo mencionar
adicionalmente que el R es un software completamente portable, con versio-
nes para los principales sistemas operativos (Linux, Windows y MacOS). Con
respecto a la potencia y velocidad de su motor numerico, el R tiene un desem-
peno semejante, sino superior, a otras aplicaciones numericas como Matlab u
Octave. A traves de paquetes o libreras como snow y snowfall, es posible
aprovechar las capacidades de las nuevas arquitecturas de multiprocesadores
(los denominados procesadores dualcore o quad-core).

1.2. Como conseguir e instalar el R?

Se ha justificado ampliamente la seleccion del R como herramienta de


trabajo. Es el momento ahora de instalarlo y probar como funciona. Como
se dijo anteriormente, R es ejecutable bajo una variedad de plataformas y
arquitecturas. Por ser un software de codigo abierto, hay dos alternativas
para instalarlo- se puede descargar el codigo fuente y compilarlo uno mismo6
, o descargar un instalador que al ejecutarse, instala automaticamente el
software en su computador. La ultima opcion es por supuesto la mas sencilla,
y es la adecuada si uno trabaja con Windows, MacOS o ciertas distribuciones
populares de Linux. En lo sucesivo asumire que mis lectores son usuarios de
Windows, que seguramente, es el caso mas usual7 . Nuevamente, la direccion
de la pagina principal del proyecto R (CRAN) desde donde se descargara
el programa de instalacion es http://cran.r-project.org/- se reproduce
una captura de pantalla seguidamente para poder hacer referencia a ella a
continuacion.
Como se puede ver en la grafica de arriba, la pagina del CRAN tiene unos
enlaces en el recuadro superior a la derecha para descargar los programas de
6 Esto sera lo mas conveniente si el hardware y/o el sistema operativo que se esta
usando es poco convencional.
7 Justifico este proceder haciendo otra suposicion: Los usuarios de sistemas operativos

distintos a Windows generalmente tienen mas pericia informatica, por lo cual no necesitan
tantas indicaciones.
6 UNIDAD 1. UN PRIMER ENCUENTRO CON R

Figura 1.1: Captura de pantalla de la pagina del CRAN

instalacion del R para los tres sistemas operativos mas populares (abajo de
Download and Install R). Al hacer clic sobre el enlace de Windows (me
viene a la mente la siguiente pregunta: porque colocaron a Windows por
debajo de los demas sistemas operativos? humm), aparece otro recuadro a la
derecha titulado a R for Windows. En este recuadro aparecen dos enlaces-
base y contrib que se corresponden a los ejecutables de instalacion para la
aplicacion base y los paquetes (libreras) contribuidas respectivamente. Hace-
mos clic sobre el enlace base y luego sobre el enlace Download R 2.9.1 for
Windows8 . Se le pedira si desea guardar o ejecutar directamente el programa
de instalacion; le recomiendo o que lo guarde. Luego sientese a esperar porque
son mas de 30MB de descarga. Finalmente, ejecute el programa de instalacion
y siga las instrucciones que se proporcionan. Observese que en la pagina don-
de aparece el enlace de descarga de R, aparecen otros enlaces para suministrar
instrucciones de instalacion, por si acaso tiene dificultades. Una ultima nota
sobre el proceso de instalacion. Como el R es un entorno de programacion y
en el vamos a hacer las cosas mediante la entrada de comandos en una con-
sola, es de gran utilidad disponer de un buen sistema de ayuda por si acaso
se nos olvida la sintaxis de algun comando. El R dispone de un buen sistema

8 Para el momento en que escribo estas notas, la ultima version disponible de R es la


2.9.1.
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 7

de ayuda que funciona a traves del programa navegador de su computado-


ra, pero para poder utilizar el motor de busqueda de este sistema de ayuda,
su computador debe tener habilitado lo que se conoce como maquina Java
virtual. En la pagina http://www.java.com/es/download/manual.jsp se
puede descargar el instalador de la maquina virtual Java para su sistema
operativo o verificar si ya lo tiene a instalado (que es lo recomendado antes
de instalarlo).

1.3. La primera sesion y los fundamentos de


R

Ya hemos instalado R y estamos ansiosos de probarlo. Al ejecutar el


programa (desde el menu de Inicio o haciendo clic sobre el icono de acceso
rapido dependiendo de las opciones que selecciono en la instalacion), aparece
la pantalla que se indica en la Figura 1.2. Esta es la famosa consola de R
ejecutandose bajo Windows9 . En primera apariencia, no debera de parecer
un programa muy extrano para los usuarios de Windows. Despues de todo,
tiene la usual barra de menu en la parte superior (con las opciones Archivo,
Editar, Visualizar, Misc, Paquetes, Ventana y Ayuda) y subven-
tanas que se pueden maximizar, minimizar o cerrar en la parte inferior. La
unica subventana visible en este momento es justamente la consola (R Con-
sole), la cual contiene un > . Este smbolo (el >) se conoce como caracter de
peticion; su funcion es indicarle al usuario que el interprete R esta a la espera
de un comando.
El primer comando que vamos a escribir es demo(graphics), seguido de
la tecla de retorno ENTER , que por supuesto hace efectiva la orden. Este
comando invoca una pequena demostracion de algunos graficos que se pueden
generar en R- debe presionar ENTER continuamente tal como se le indica
para visualizar cada grafico sucesivamente. Observese que aparecen boxplots,
histogramas de frecuencia y graficas de torta. Mas adelante veremos como
generar estos graficos y otros que no figuran en la demostracion y que seran
necesarios para elaborar o a los trabajos de estadstica. Por cierto, este es
tan solo un pequeno repertorio de la gran variedad de graficos distintos que
9 Aclaro que bajo otros sistemas operativos, tiene un aspecto distinto.
8 UNIDAD 1. UN PRIMER ENCUENTRO CON R

Figura 1.2: Captura de pantalla de la consola de R bajo Windows

se pueden generar en R. De hecho, la graficacion es uno de los fuertes de este


lenguaje. Ahora vamos a comenzar a aprender los rudimentos del lenguaje en
una especie de tutorial guiado. En lo que sigue se especificaran los comandos
que el usuario debe ingresar en la consola (precedido del caracter de peticion)
y la salida que da el interprete R a estos comandos. Le recomiendo que teclee
estos comandos y experimente haciendo luego variantes de las instrucciones
y viendo que sucede. La curiosidad es el principal incentivo del aprendizaje.
Experimente sin temor- nada de lo que haga en la consola va a danar su
computador.

> 2 + 3

[1] 5

> 2/3 + 1

[1] 1.666667
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 9

> 2/(3 + 1)

[1] 0.5

> -2^2

[1] -4

> (-2)^2

[1] 4

En los ejemplos precedentes estamos aparentemente usando al R como


una simple calculadora. En realidad estamos familiarizandonos con uno de
los tipos elementales de datos- el numerico. Observese que al ingresar una
expresion numerica, el interprete de R la evalua y devuelve, si puede, un
resultado (mas adelante se aclarara el asunto del uno entre corchetes ([1]).
Notese ademas que valen las reglas de precedencia en el calculo, de modo que
la forma en que se colocan a los parentesis afecta el resultado: primero se
calculan las potenciaciones, divisiones y multiplicaciones antes que la suma,
la resta o el cambio de signo, a menos de que se indique lo contrario con los
parentesis.

> pi

[1] 3.141593

> sqrt(2)

[1] 1.414214

> exp(1)
10 UNIDAD 1. UN PRIMER ENCUENTRO CON R

[1] 2.718282

> Inf - 1e+07

[1] Inf

> Inf - Inf

[1] NaN

> 0/0

[1] NaN

En las primeras tres ordenes trabajamos con una constante predefinida


() y con funciones. Las funciones van seguidas de parentesis entre los cuales
colocaremos el o los argumentos y devuelven objetos segun estos. En este tex-
to, vamos a trabajar
extensamente con funciones. As, por ejemplo, sqrt(2)
es equivalente a 2 y exp(1) es la exponenciacion de 1. Se puede forzar a
que R genere numeros de mayor precision decimal, pero para los fines que
nos proponemos en la gua, esto no sera necesario. Los ejemplos de las ul-
timas lneas contienen algunos detalles que quizas sean novedosos para los
usuarios de otros lenguajes. Se define a una cantidad llamada infinito que
se corresponde al smbolo matematico . Inf goza de todas las propiedades
del infinito- si le restamos un numero muy grande al infinito, por ejemplo,
seguimos teniendo infinito. Otro detalle de interes es el NaN, que obtenemos
cuando una expresion numerica es indeterminada (NaN significa Not a Num-
ber ). Esta claro que en la investigacion estadstica se trabaja extensamente
con datos numericos, por lo cual es bueno saber que R cuenta con herramien-
tas para su uso, pero tambien es necesario a veces trabajar con otros tipos de
datos elementales, como lo son las cadenas (secuencias de texto alfa-numerico
o datos tipo string) y los valores logicos, o booleanos.

> "jose"
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 11

[1] "jose"

> paste("Hoy es", date())

[1] "Hoy es Fri Mar 19 11:17:19 2010"

> 2 < 3

[1] TRUE

> 2 + 2 == 4

[1] TRUE

> 2 != 2

[1] FALSE

> (1e+05 < Inf) & (2 != 2)

[1] FALSE

Las primeras dos ordenes trabajan con cadenas, que se indican encerrando
caracteres alfa-numericos entre comillas. La funcion paste toma dos o mas
cadenas y las concatena, como en la segunda orden, donde tambien hacemos
uso de una funcion llamada date() que devuelve la fecha y hora actual
Las siguientes ordenes o trabajan con expresiones logicas. Observese el uso
de operadores relacionales (< es menor que,== igual a, != no igual a, <=
menor o igual que, etc.) y de conectores logicos (& se corresponde a y, | se
corresponde a o, etc.). Para buscar mas informacion sobre esto, ingrese la
orden help(Logic).
12 UNIDAD 1. UN PRIMER ENCUENTRO CON R

Una caracterstica importante de cualquier lenguaje de programacion es


la capacidad de manejar variables10 . Las variables son importantes porque
muchas veces queremos almacenar el resultado de un computo para usarlo
posteriormente o como entrada para otra instruccion o funcion. En el len-
guaje R, los nombres de las variables (tambien llamados identificadores) se
designan mediante secuencias de letras, numeros y algunos caracteres espe-
ciales permitidos (. y ). Cuando se trabaja con variables, se deben nombrar
de modo que los identificadores sean significativos para el programador, pero
existen algunas restricciones: 1. El identificador no debe comenzar por un
caracter de piso ( ), un numero, o un punto (.) seguido de un numero. As
por ejemplo, resultado, A1, b2, .total.anterior son ejemplos de identi-
ficadores validos. 2. Evite el uso de identificadores asociados a funciones u
objetos existentes en el lenguaje R, como por ejemplo paste, sqrt, pi y otros.
Esto puede crear ambiguedad. 3. Tenga presente que en lenguaje R, se dis-
tingue entre mayuscula y minuscula. As, por ejemplo, jose y Jose son dos
identificadores distintos. El operador de asignacion en R es <- (un signo de
menor que seguido de un guion), con lo cual se le asigna a una variable o
identificada con el nombre a la izquierda de este operador el valor o resultado
de la expresion a la derecha. Veamos algunos ejemplos:

> pi.medio <- pi/2


> sin(pi.medio)

[1] 1

> a <- pi
> b <- a >= 3
> c <- a <= 4
> b

[1] TRUE

> c
10 O
instancias de clases de objetos para usar el argot de la programacion orientada a
objetos.
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 13

[1] TRUE

En el ejemplo anterior se puede observar otro detalle: es posible escribir


varias ordenes en una sola lnea separando cada orden mediante un ;. Las
ultimas tres lineas de ordenes se corresponden a la verificacion de 3 4.
Hasta ahora hemos visto tres tipos elementales de datos (el numerico, la ca-
dena y el logico) y la asignacion de valores a variables. No obstante, para ser
realmente util, el R debe soportar estructuras de datos mas complejas que
sean aplicables en una gran diversidad de situaciones, particularmente aque-
llas asociadas a la investigacion estadstica. De hecho, este es el caso, ya que
R es lo que se conoce en computacion como un lenguaje de programacion de
alto nivel. Considerando que la estadstica involucra muestras, se ha pensado
en los objetos tipo vector. Un vector es una coleccion ordenada de datos del
mismo tipo, que se correspondera (aunque no necesariamente), a lo que en
estadstica se llama muestra. Por ejemplo, si seleccionamos 10 estudiantes
de una universidad al azar y registramos sus edades, tendramos un vector
de 100 elementos numericos. Para aquellos que han trabajado con otros len-
guajes de programacion, esto podra sonar similar al tipo de datos arreglo.
Sin embargo, los vectores tienen caractersticas y operaciones definidas so-
bre ellos de mas alto nivel. Por ejemplo, en PASCAL, los arreglos deben ser
declarados previamente especificando la cantidad maxima de elementos (su
dimension). En R, un vector puede crecer en tamano dinamicamente (conca-
tenandole mas elementos) o decrecer (eliminando elementos) sin necesidad de
fijar su dimension. Por otra parte, la indexacion (referencia a algun elemento
identificando su orden en el vector) es de mas alto nivel en R y permite por
ejemplo extraer aquellos elementos del vector-muestra de 10 edades que sean
mayores que 21.

> edades <- c(17, 19, 18, 20, 24, 18, 17, 22, 25, 23)
> edades

[1] 17 19 18 20 24 18 17 22 25 23

> mean(edades)

[1] 20.3
14 UNIDAD 1. UN PRIMER ENCUENTRO CON R

> sum(edades)/length(edades)

[1] 20.3

> var(edades)

[1] 8.9

> sd(edades)

[1] 2.983287

> (edades - mean(edades))^2

[1] 10.89 1.69 5.29 0.09 13.69 5.29 10.89 2.89 22.09 7.29

> sum((edades - mean(edades))^2)/(length(edades) -


+ 1)

[1] 8.9

Aqu se comienza a evidenciar de que manera el lenguaje R esta orientado


hacia la estadstica (aunque como se dijo anteriormente, es un lenguaje de
proposito general). La funcion c(...) en la primera lnea de ordenes cons-
truye vectores concatenando elementos (que deben ser elementos del mismo
tipo o vectores, todos con elementos del mismo tipo). Es de notar que hay
muchas funciones que toman como argumento vectores: mean devuelve el
promedio de los elementos numericos de un vector, el cual, como se sabe, se
calcula sumando los elementos (sum) y dividiendo la suma entre la cantidad
de elementos (length); var y sd calculan la varianza y la desviacion estan-
dar respectivamente. La penultima expresion ((edades-mean(edades))^2)
genera otro vector a partir de restarle la media a cada elemento y elevar cada
una de estas diferencias al cuadrado. Como sabemos, la varianza muestral
es justamente la suma de todas estas diferencias cuadraticas dividida entre
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 15

la cantidad n de elementos de la muestra menos 1, lo cual se verifica en la


ultima expresion. Matematicamente:

n 2
Xi X
2 i=1
Sn1 =
n1
Desde luego, existen muchas otras funciones vectoriales- funciones para
calcular la mediana o algun percentil, funciones para ordenar (ascendente-
mente o descendentemente) los elementos de un vector, etc. Sin embargo,
para mantener este recuento breve, pasaremos al tema de la indexacion, que
como dijimos, es el proceso de hacer referencia a elementos especficos de un
vector.

> edades <- c(17, 19, 18, 20, 24, 18, 17, 22, 25, 23)
> edades[4]

[1] 20

> 4:8

[1] 4 5 6 7 8

En R, la indexacion de vectores se hace colocando una expresion entre


corchetes ([...]) despues del identificador del vector. La expresion edades[4]
devuelve el cuarto elemento del vector edades (en R el primer elemento de un
arreglo es el 1 y no el 0 como en otros lenguajes). Por cierto, con respecto al [1]
que aparece en las lineas de salida, ahora podemos entender que el elemento
que esta a su derecha se corresponde al elemento numero 1 del vector; si el
vector tuviese mas elementos de los que caben en una lnea, se vera algo as
como esto:

> 1:50

[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[21] 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
[41] 41 42 43 44 45 46 47 48 49 50
16 UNIDAD 1. UN PRIMER ENCUENTRO CON R

La razon por la cual aparece un [1] en las lineas de salida correspondien-


tes a expresiones escalares11 es que estas expresiones son en realidad vectores
con un solo elemento (numerico, cadena o logico). De modo tal que los vecto-
res generalizan estas clases de datos. Otro punto es que en R existen lo que se
llaman secuencias, de las cuales las expresiones 4:8 y 1:50 son ejemplos. Las
secuencias son en realidad vectores tambien, solo que se caracterizan porque
sus elementos son generados automaticamente de acuerdo a cierto orden
o esquema. En R, las a secuencias se generan con : como vimos arriba o,
de manera mas general, mediante la funcion seq, la cual puede buscar en la
ayuda para consultar sobre su o sintaxis. Continuando con la indexacion de
elementos de vectores, consideremos o los ejemplos siguientes:

> edades[4:8]

[1] 20 24 18 17 22

> edades[c(1, 4:8)]

[1] 17 20 24 18 17 22

> edades[-c(1, 4:8)]

[1] 19 18 25 23

> edades[edades >= 21]

[1] 24 22 25 23

> which(edades >= 21)

[1] 5 8 9 10
11 Aqu escalar denota algunas de las tres clases mas elementales (numerico, cadena o
logico).
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 17

En la expresion entre corchetes podemos colocar expresiones mas genera-


les. Concretamente, podemos colocar vectores de ndices o vectores logicos.
De este modo edades[4:8] devuelve los elementos del 4to al 8avo de ese vec-
tor y edades[c(1,4:8)] es similar pero adicionalmente le antepone el primer
elemento. Pudiesemos estar interesados mas bien en excluir ciertos elementos
del vector. Esto se hace anteponiendo un signo menos (-) a la expresion o
entre corchetes: edades[-c(1,4:8)] devuelve todos los elementos del vector
edades menos el primero y aquellos entre el cuarto y el octavo lugar inclusive.
Si queremos seleccionar elementos individuales segun cierta condicion logica
insertamos una expresion logica entre corchetes. As, edades[edades>=21]
devuelve todas las edades de la muestra mayores o iguales a 21. Por ultimo,
la funcion which devuelve los ndices de los elementos que cumplen cierta
condicion logica.
Es de notar la manera elegante y sucinta en que se realiza en R la indexa-
cion de vectores (arreglos) que en otros lenguajes de programacion requerira
de estructuras iterativas mas complejas. Los vectores son el fuerte de este
lenguaje y utilizar el tipo de constructos vistos arriba es mas eficiente (en
terminos del tiempo requerido para tales computos) que recorrer un vector
iterativamente mediante un for por ejemplo. A este modo de hacer las cosas
se le conoce en el argot de R como vectorizacion y al final, uno se acos-
tumbra a trabajar de manera vectorizada. Quizas este pensando cual es la
consecuencia practica de todo esto. Piense entonces como hara si estuviese
interesado en calcular la media o construir un histograma de frecuencias para
cierto subconjunto de la muestra y considere cuan engorroso sera hacer esto
en un programa como Excel. Por otro lado, R esta disenado para trabajar
con vectores de miles o millones de elementos y este tipo de operaciones vec-
torizadas son casi instantaneas. Intente trabajar con muestras as de grande
en Excel y entendera a que me refiero.
La ultima estructura de datos (o clase de objetos) importante en R que
vamos a ver aqu es la hoja de datos, o data frame. Existe otra clase de ob-
jetos, la lista, que es la mas general de todas pero cuya discusion vamos a
omitir aqu por no ser relevante al tipo de problemas estadsticos con los que
estaremos trabajando. La hoja de datos es un agregado de vectores, todos
de igual longitud pero no necesariamente del mismo tipo (logico, numerico
o de cadenas). Puede conceptuarse como una tabla de datos, tal como la
que tendramos si tuviesemos una muestra de 10 individuos en la cual pa-
18 UNIDAD 1. UN PRIMER ENCUENTRO CON R

ra cada individuo, registramos varias caractersticas de el (su nombre, edad,


sexo, etc.). La palabra tabla evoca una hoja de Excel y es precisamente en
este tipo de formatos en el cual vienen los datos que queremos procesar es-
tadsticamente. De modo tal, la clase de objetos en R que contiene toda una
muestra (multivariante) de elementos se llama data frame (hoja de datos).
Continuando con los ejemplos precedentes donde manejabamos el vector eda-
des, supongase que ademas tenemos el sexo de cada uno de esos individuos
(F si es o a femenino o M si es masculino) y una variable logica que indica
si ese individuo es fumador o no (TRUE si es fumador, FALSE si no lo es).

> sexo <- c("M", "M", "F", "F", "F", "M", "F", "M",
+ "M", "F")
> fumador <- c(FALSE, TRUE, FALSE, FALSE, TRUE, FALSE,
+ FALSE, TRUE, TRUE, FALSE)
> muestra <- data.frame(edad = edades, s = sexo, fuma = fumador)
> muestra

edad s fuma
1 17 M FALSE
2 19 M TRUE
3 18 F FALSE
4 20 F FALSE
5 24 F TRUE
6 18 M FALSE
7 17 F FALSE
8 22 M TRUE
9 25 M TRUE
10 23 F FALSE

El identificador muestra denota un objeto tipo data frame (hoja de da-


tos), el cual se construye con la funcion homonima data.frame. Esta funcion
toma como argumentos una secuencia de vectores, no todos del mismo tipo
escalar. En la lnea de orden correspondiente en el ejemplo anterior, las partes
edad=edades, s=sexo y fuma=fumador indican que se estan nombrando los
campos (o variables) de cada renglon. As, la hoja de datos muestra contiene
tres variables cuyos identificadores - edad, s y fuma - se corresponden a los
vectores indicados a la izquierda de cada igualdad. Cabe senalar que existen
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 19

maneras mas amigables de construir hojas de datos, por ejemplo leyendo


una tabla en un archivo o usando un editor de hojas de datos tipo GUI, pero
esto se vera posteriormente. Por los momentos, aqu hemos construido una
hoja de datos a partir de vectores. Para hacer referencia a cada uno de estos
vectores (o variables) por separado, se utiliza el smbolo $ como se muestra
a continuacion:

> muestra$edad

[1] 17 19 18 20 24 18 17 22 25 23

> muestra$s

[1] M M F F F M F M M F
Levels: F M

> sexo

[1] "M" "M" "F" "F" "F" "M" "F" "M" "M" "F"

Note la diferencia entre muestra$s y sexo. A pesar de que el primero


fue asignado a partir del ultimo, los elementos del primero se visualizan sin
comillas e incluyen un nuevo renglon indicado por Levels. Esto es porque
cuando una o variable de hoja de datos se construye a partir de un vector
de cadenas, R asume que esta variable es un factor y los factores tienen
asociado distintos niveles o levels en ingles. Pero no se engane, muestra$s
sigue siendo un vector de cadenas para otros efectos practicos:

> muestra$s[1]

[1] M
Levels: F M

> muestra$s[1] == "M"


20 UNIDAD 1. UN PRIMER ENCUENTRO CON R

[1] TRUE

A veces, puede resultar engorroso prefijar una hoja de datos (en nuestros
ejemplos, mediante el muestra$) cada vez que nos referimos a una variable
de esa hoja de datos. Para estos fines de abreviar la escritura de expresiones,
utilizamos la instruccion attach(...). Esta instruccion le indica al interprete
R que en lo sucesivo, nos vamos a referir a las variables componentes de la
hoja de datos cuyo identificador se encierra entre los parentesis, pero se debe
evitar utilizar attach si hemos definido otros vectores u hojas de datos con
variables que tengan los mismos identificadores, a fin de no crear situaciones
ambiguas. A continuacion se muestra el uso de attach:

> attach(muestra)
> edad

[1] 17 19 18 20 24 18 17 22 25 23

> s

[1] M M F F F M F M M F
Levels: F M

> muestra[[1]]

[1] 17 19 18 20 24 18 17 22 25 23

Notese que en la ultima linea de orden, muestra[[1]] es equivalente a


edad o (una vez que se ha ingresado la instruccion attach(muestra)). Esto
es porque la variable edad es la primera columna de la hoja de datos. Se
sigue entonces que muestra[[2]] y muestra[[3]] seran las variables s y
fuma respectivamente (pruebelo). Hemos visto como designamos a variables
enteras (o columnas) de una hoja de datos, pero como hacemos referencia a
los elementos, renglones o filas individuales de una hoja de datos?. Como ha-
ramos si quisieramos por ejemplo extraer de la muestra todos los individuos
de sexo masculino? El siguiente ejemplo indica como:
1.3. LA PRIMERA SESION Y LOS FUNDAMENTOS DE R 21

> muestra[s == "M", ]

edad s fuma
1 17 M FALSE
2 19 M TRUE
6 18 M FALSE
8 22 M TRUE
9 25 M TRUE

Cabe senalar que mediante un vector de indexacion (el s=="M") se ha


seleccionado los individuos numero 1, 2, 6, 8 y 9 de la muestra, quienes son
todos de sexo masculino La expresion muestra[s=="M",] retorna un objeto
tipo hoja de datos o que es en realidad un subconjunto de la muestra. A esta
hoja de datos podemos darle un tratamiento propio de esta clase de objetos.
As, podemos por ejemplo promediar las edades de los hombres en la muestra,
o promediar las edades de los fumadores de la muestra:

> mean(muestra[s == "M", ]$edad)

[1] 20.2

> mean(muestra[fuma == TRUE, ]$edad)

[1] 22.5

Si queremos hacer las cosas de un modo mas sofisticado, podemos usar la


funcion tapply(var,fact,fun), la cual aplica una funcion (aqu denotada
por fun) a una variable var de una hoja de datos separando los elementos
de esa variable en la aplicacion de la funcion segun los distintos niveles del
factor fact. Observe el ejemplo abajo:

> tapply(edad, s, mean)

F M
20.4 20.2
22 UNIDAD 1. UN PRIMER ENCUENTRO CON R

> tapply(edad, fuma, mean)

FALSE TRUE
18.83333 22.50000

A lo largo de la ultima seccion, se ha trabajado con las funcionalidades


mas elementales del lenguaje R. Segun el objetivo de ofrecer una primera ex-
posicion al lenguaje R, he omitido cosas como objetos tipo lista, estructuras
de control (condicionales e iterativas) que estan presente en todo lenguaje
de programacion de proposito general, as como la posibilidad de definir fun-
ciones o subrutinas (procedimientos) que tambien existen en otros lenguajes
de programacion. Considero que con las herramientas vistas, estars en capa-
cidad de realizar los estudios a estadsticos elementales que se piden en las
asignaciones de las materias de estadstica de la UNA. Desde luego, es preciso
introducir las funciones para generar las graficas que se requieren para las
asignaturas de estadstica general, as como las funciones para acometer es-
tudios de regresion lineal, pruebas de bondad de ajuste y analisis de varianza
que se requieren para las asignaturas de inferencia estadstica. Esto se hara
oportunamente en las unidades subsecuentes. Mediante el R, se pueden im-
plementar otras herramientas estadsticas mas avanzadas, como por ejemplo
analisis de conglomerados, las cuales no son tan a difciles de manejar pero
esan mas alla del alcance de los cursos de la UNA. Por los momentos, se le in-
vita a experimentar en su computador con los comandos y expresiones vistos
aqu. Para verificar su comprension de este material, se le invita a responder
las preguntas de esta unidad.

1.4. Preguntas de la Unidad


1. Que es un script? Podra dar ejemplos de scripts en R?

2. Que valor retorna el interprete R al darle la siguiente expresion: log(-10)?


Porque devuelve R ese valor?
2
3. A que equivale (matematicamente) la expresion 3 3 ? Evalue en
la consola de R la siguiente expresion: 3-sqrt(3)^2==0. Como explica
Ud. este resultado?
1.4. PREGUNTAS DE LA UNIDAD 23

4. Que es un vector en R?

5. Que utilidad tiene el vector como clase de objeto para la manipulacion


y analisis de datos estadsticos?

6. Cuales instrucciones o funciones de R conoce Ud. para construir vec-


tores?

7. Supongase que a y b identifican a dos vectores de igual dimension con


elementos escalares de tipo numerico. Es valida en R la expresion a+b?
Que interpretacion tiene esta expresion? Que ocurre si a y b son de
dimensiones distintas?

8. Si se evalua en la consola de R una expresion escalar numerica como


2+3, que significado tiene el [1] a la izquierda del resultado (5)?

9. Luego de realizar la siguiente asignacion: x <- c(TRUE,4,.abc"), cual


es el valor de la variable identificada por x? Como explica Ud. esto?

10. Mediante cual funcion de R podemos obtener los ndices de los ele-
mentos de un vector que cumplen con cierta condicion logica?

11. En base al vector fumador definido en el ejemplo de la pagina 18, elabore


un script para calcular la proporcion total de fumadores de la muestra.

12. Que se entiende por vectorizacion en R?

13. Que es una hoja de datos en R y cual es su utilidad para el analisis


estadstico?

14. Si a es una hoja de datos y b es el identificador de una de sus variables,


que clase de objeto es a$b?

15. En base a la hoja de datos muestra utilizada en varios ejemplos de


esta unidad, elabore un script para calcular la proporcion de hombres
fumadores con respecto al total de hombres de la muestra y calcular,
de manera similar, la proporcion de mujeres fumadoras. En base a esta
muestra, cual grupo considera Ud. que tiene mayor propension a ser
de fumadores?
24 UNIDAD 1. UN PRIMER ENCUENTRO CON R
Unidad 2

Sobre los datos y la muestra

2.1. Enunciado del problema de investigacion


y datos presentados

En esta gua trabajaremos con una muestra (ver Apendice A) correspon-


diente a los datos de 121 estudiantes inscritos en las escuelas de Matematicas
y Computacion de la Facultad de Ciencias de cierta universidad. Dicha mues-
tra se toma para acometer un estudio sobre los factores que inciden en el bajo
rendimiento academico de los estudiantes y para tal fn, se recabo para cada
estudiante informacion referente a la edad, ingresos economicos, sexo, lugar
de proveniencia, nota en el examen de ingreso y, por supuesto, datos refe-
rentes al rendimiento academico del estudiante durante su primer ano en
la universidad, que es lo que precisamente preocupa a las autoridades. La
descripcion detallada de estas variables se da a continuacion, indicando los
nombres de cada variable a los cuales nos referiremos en lo subsecuente y que
por razones tipograficas, se han abreviado al maximo posible. Estas abrevia-
turas seran usadas luego como identificadores en el codigo R para referirnos
a las variables.

E Es la escuela en la que cursa estudios el estudiante, de acuerdo a la siguiente

25
26 UNIDAD 2. SOBRE LOS DATOS Y LA MUESTRA

clasificacion: (0) para Matematicas y (1) para Computacion.


Nota Es la nota que obtuvo el estudiante en la prueba de ingresos de la
facultad, en una escala de 0 a 20.
Us1 Es el porcentaje (0 a 100) de unidades de credito aprobadas en el primer
semestre.
Us2 Es el porcentaje (0 a 100) de unidades de credito aprobadas en el segundo
semestre.
Ingr Son los ingresos mensuales (aproximados) del grupo familiar, expresa-
dos en bolivares fuertes.
C Se corresponde al colegio, o tipo de institucion donde el estudiante curso
sus estudios de bachillerato, segun sea esta: (0) privado o (1) publica.
O Es el orgen o procedencia del estudiante de acuerdo a lo siguiente: (0)
para estudiantes procedentes del interior del pas o (1) estudiantes pro-
cedentes de la capital.
S El sexo del estudiante: (0) Masculino o (1) Femenino.
Ed Edad (en anos) del estudiante.
Psm1 Promedio ponderado de notas obtenido durante el primer semestre.
Psm2 Promedio ponderado de notas obtenido durante el segundo semestre.
Pa1 Promedio ponderado de notas obtenido durante el primer ano de la
carrera.
Ua1 Porcentaje de unidades de credito aprobadas por el estudiante en su
primer ano de la carrera.

2.2. Sobre las variables y los tipos de varia-


bles

Antes de pasar a explicar como cargar estos datos en R para aplicarle los
analisis estadsticos, es oportuno hacer algunas observaciones sobre las va-
riables de la muestra y delucidar los objetivos de la investigacion. En primer
2.2. SOBRE LAS VARIABLES Y LOS TIPOS DE VARIABLES 27

lugar, la muestra son los 121 renglones de las 13 variables descritas anterior-
mente, correspondientes a los estudiantes que cursaron estudios de primer ano
en las carreras de Matematicas y Computacion, en un determinado periodo
acadmemico. Esperamos, en la medida en que la muestra sea un subconjun-
to de la poblacion lo suficientemente representativo, que las conclusiones de
nuestro estudio sean generalizables a las promociones futuras de estudiantes
(la poblacion considerada in abstracto), pues a partir de estas concluciones se
tomaran decisiones que afectaran el desempeno de los estudiantes del primer
ano de la carrera en periodos academicos futuros. Mediante las herramientas
de la Estadstica Descriptiva (codigo de Asignatura 745) vamos a explorar
la data para poder formular explicaciones plausibles (aunque en este nivel
no comprobables aun) sobre los factores que inciden en el bajo rendimiento
academico. Mediante las tecnicas de la Inferencia Estadstica (asignaturas
738, 746 y 748) podremos ofrecer un basamento cientfico a nuestras conclu-
siones y recomendaciones. En consecuencia, si la preocupacion primordial es
el bajo rendimiento academico de los estudiantes en la universidad, el estu-
dio estadstico se va centrar principalmente sobre la variable Pa1, pues esta
es la expresion o medida final del rendimiento academico. Interesa entonces
analizar el grado de interdependencia y el tipo de relacion que hay entre la
variable Pa1 y las demas.
Al leer la descripcion de las variables antecedente, y sin haber analizado o
siquiera visto la muestra, se hace evidente que Pa1 esta fuertemente relacio-
nada con las variables Psm1 y Psm2. La razon de ello es porque el promedio
de notas del primer ano se calcula a partir de los promedios de notas del pri-
mer y segundo semestre. De ah podemos preveer que estas ultimas variables
aportaran muy poca informacion para nuestro estudio y seran de escasa o
nula utilidad para explicar el bajo rendimiento academico. Lo mismo podra-
mos decir sobre Us1, Us2 y Ua1, pues a medida en que el promedio de notas
es mayor, la cantidad de unidades de credito aprobadas aumenta, aunque la
relacion entre Pa1 y aquellas tres variables probablemente sea de menor gra-
do (y no es tan obvia) que la existente entre Pa1 y las variables Psm1 y Psm2.
Sin embargo, parece que por los momentos es bastante adecuado considerar
a las variables Pa1, Ua1, Psm1, Psm2, Us1 y Us2 como aspectos similares del
mismo fenomeno del rendimiento academico.
Para buscar las causas que expliquen el bajo rendimiento estudiantl ten-
dremos que considerar las otras variables que fueron incluidas en la muestra
28 UNIDAD 2. SOBRE LOS DATOS Y LA MUESTRA

porque seguramente alguien considero que el ingreso economico mensual, la


edad, el sexo, la nota en el examen de ingreso, la carrera cursada, el tipo de
institucion donde el estudiante curso bachillerato o su lugar de procedencia
posiblemente incidan sobre el desempeno academico en la universidad. Es
interesante, como un ejercicio de tormenta de ideas, formularse interrogantes
sobre lo que implicara una fuerte correlacion entre estas variables y la varia-
ble Pa1. Por ejemplo, si hay una fuerte correlacion entre la variable de sexo
y el promedio de notas, implica ello que existe discriminacion de generos
de parte de los profesores en la universidad? Si los estudiantes mas jovenes
tienen promedios mas bajos, podriamos suponer que el bajo rendimiento
academico es atribuible a un problema de inmadurez? Si tener bajos ingresos
incide negativamente sobre el desempeno academico, como se podra hacer
para brindarle mas oportunidades a los estudiantes de bajos recursos econo-
micos y lograr una educacion mas igualitaria? El hacerse estas interrogantes
al principio ayuda a orientar mejor el estudio estadsticos y hacer propuestas
que sean realmente utiles y tomar las decisiones acertadas.
Otro aspecto que hay que considerar desde un principio son los tipos de
variables en la muestra, ya que esto ayudara en la escogencia de herramien-
tas estadsticas mas adecuadas para su estudio. Por ejemplo, una variable de
escala nominal se visualiza mejor mediante una grafica de tortas; en cambio,
una variable de escala proporcional se visualiza mejor mediante un histogra-
ma de frecuencias. Vamos a considerar tres tipos de variables (o escalas): la
escala nominal, la escala ordinal y la escala proporcional. La escala nominal
se refiere a aquellas variables que toman valores que no tienen relacion de or-
den entre s. Por ejemplo, la variable sexo es una variable de escala nominal
porque Masculino no es ni mayor ni menor que Femenino (a menos de que
sea uno machista o feminista, lo cual es algo completamente subjetivo). En
nuestra muestra, las variables S, E, O y C son de escala nominal. Las varia-
bles de escala ordinal son aquellas para las cuales si se puede establecer una
relacion de orden entre sus posibles valores. Por ejemplo, en una encuesta
donde se pide dar una opinion sobre cierto tema y las respuestas se dan en
una escala del 1 (totalmente en desacuerdo) al 5 (totalmente de acuerdo), el
item respectivo se correspondera a una variable de escala ordinal. Se debe
aclarar que los valores que toma una variable de escala ordinal no guardan
relacion de proporcionalidad entre s: una persona que responda 4 en la en-
cuesta no necesariamente esta dos veces mas de acuerdo que una persona que
responda 2. Finalmente, los valores de las variables de escala proporcional si
2.2. SOBRE LAS VARIABLES Y LOS TIPOS DE VARIABLES 29

tienen relacion de orden y de proporcionalidad entre s. En nuestro estudio,


las variables Ed, Ingr, Us1, Us2 y Ua1 son variables de escala proporcional,
pues por ejemplo, una persona de 30 anos dobla en edad a una persona de
15 anos. Tambien asumiremos que las variables referentes a los promedios de
notas (Pa1, Psm1 y Psm2) son de escala proporcional.
Como se menciono en el parrafo anterior, el conocer el tipo de escala de
las variables orienta la seleccion de las herramientas estadsticas para su es-
tudio. Ahora entendemos porque no tiene sentido construir un histograma
de frecuencias para una variable de escala nominal: en un histograma de fre-
cuencias, se colocan los lmites de los intervalos de clase de forma ordenada
en el eje de las X, pero como los valores de una variable de escala nominal
no tienen relacion de orden entre si, los histogramas no son el mejor ins-
trumento para visualizar la districucion de frecuencias de tales variables. En
vez de ello se usaran diagramas de tortas, porque en un circulo no existe la
jerarquizacion por orden de mayor a menor de los valores. Otro consideracion
importante es la escogencia de medidas de tendencia central y de dispersion
que sean adecuadas al tipo de variable a estudiar. Sin elaborar definiciones
formales, diremos que las medidas de tendencia central son un indicador de
donde o en que valor se estan aglutinando la mayora de los datos de una
muestra. La moda, la mediana y la media son todas medidas de tendencia
central. De estas, solamente la moda se adecua a las variables de escala no-
minal, pues el calculo de la mediana requiere que los valores de la muestra
sean ordenados de menor a mayor, lo cual no sucede en una escala nominal.
La media aritmetica tampoco es adecuada como medida de tendencia central
para las variables de escala nominal porque el calculo de un promedio supo-
ne ademas proporcionalidad de los valores. Como la moda es simplemente
el valor que ocurre con mayor frecuencia en la muestra, la moda es la unica
medida de tendencia central aceptable para las variables nominales. En estas
lneas, para una variable ordinal pordemos utilizar la mediana y la moda co-
mo medidas de tendencia central y para una variable proporcional podemos
usar las tres medidas de tendencia central mencionadas. El lector interesado
en ampliar su conocimiento sobre estos aspectos puede consultar la obra de
Siegel [9][pp. 41-51] pero de todos modos, seguiremos profundizando un poco
mas sobre este tema en la siguiente unidad.
30 UNIDAD 2. SOBRE LOS DATOS Y LA MUESTRA

2.3. Como cargar los datos de la muestra en


R

Para comenzar a trabajar con la muestra es preciso disponer primero de


una variable tipo data frame que la contenga. Existen muchas maneras en
R para crear una variable data frame con los datos muestrales; en el primer
capitulo ibamos construyendo vectores mediante la funcion de concatenacion
(c(...)) y luego los empatabamos todos a un data frame. Este metodo, si
bien podra ser adecuado para muestras de tamano pequeno, resulta ser muy
engorroso para muestras como la que vamos a utilizar. Una alternativa a ello
podra ser ingresar la siguiente instruccion al interprete R:

> datos <- edit(data.frame())

Esta instruccion desplegara una ventana con el editor de datos de R, el


cual tiene una interfaz tipo GUI algo bastante parecida a la de una aplicacion
de hoja de calculo comun. En esta hoja de calculo, las columnas represen-
tan las variables y las filas los elementos de la muestra. Como la funcion
edit toma como argumento un objeto tipo data frame vacio, el usuario debe
renombrar las variables que aparecen en la primera fila- esto se hace hacien-
do click izquierdo sobre las respectivas celdas y luego seleccionando Change
name en el menu desplegable. Si se necesita espacio para mas variables pue-
de ampliar la ventana del editor con el boton de maximizar. La navegacion
entre celdas se hace de manera usual con las teclas de flechas o haciendo click
sobre las celdas. Al terminar la entrada de datos el usuario hace click sobre
Quit, luego de lo cual la variable datos sera una variable tipo data frame
conteniendo los datos ingresados en el editor.
Este metodo de entrada de datos, si bien parece bastante mas amigable
que el construir vectores mediante la concatenacion y luego empatarlos en un
data frame, tiene la desventaja de que los datos ingresados no perduran en
algun soporte o archivo externo (de hecho estan en una variable en memoria)
y desapareceran al finalizar la sesion de R. Esto es un serio inconveniente si
queremos realizar otras sesiones de analisis con los mismos datos o queremos
que otros puedan repetir nuestros analisis estadsticos (la repetibilidad de un
experimento es una caracterstica importante del metodo cientfico). Como
2.3. COMO CARGAR LOS DATOS DE LA MUESTRA EN R 31

Figura 2.1: El editor de datos de R

la lectura de datos muestrales es una parte crucial de cualquier estudio es-


tadstico, R dispone de otras maneras para leer esos datos si se encuentran
bien sea en una hoja de calculo, una base de datos o un archivo plano de
texto. En esta gua optaremos por trabajar con estos ultimos- los archivos
planos de texto.
Un formato (abierto) muy comun para archivos de tablas de datos es el
formato CSV (de sus siglas en ingles: Comma Separated Values). El formato
CSV es un estandar abierto facilmente trabajable desde casi cualquier apli-
cacion. Por ser un archivo plano de texto, se puede trabajar con el desde
cualquier editor de texto como el Block de Notas. Todas las aplicaciones de
hojas de calculo y de base de datos tambien pueden exportar datos a este
formato. Las aplicaciones de estadstica como SPSS, Minitab y R pueden
trabajar con este formato tambien. Como dato importante, debido a que la
salida de la mayora de los programas de reconocimiento de caracteres es en
formato texto, es un proceso bastante sencillo leer datos desde una fuente
inmpresa o archivo de imagen grafica y pasarlos a un archivo con formato
CSV. En el formato CSV, las columnas (o variables) se separan por comas
y las filas (que representan los elementos de la muestra) van separadas por
saltos de lnea. Cuando el dato en un campo contiene comas o saltos de l-
nea, el campo se encierra entre comillas. El ; se puede usar como caracter
serpadador sobre todo si el separador de decimales numerico es un coma.
Podemos indicar que la primera fila del archivo sea el header o encabezado,
es decir, aquella que contiene los nombres de las variables, siempre separados
32 UNIDAD 2. SOBRE LOS DATOS Y LA MUESTRA

por el caracter delimitador (coma o ;). En el ejemplo de abajo, se ha incluido


las primeras lneas (y no todas las variables) de lo que sera el archivo CSV
correspondiente a la muestra con la que trabajaremos en la gua.

"N";"E";"Nota";"Us1";"Us2";"Ingr";"C";"O";"S";"Ed"
1;1;12,66;80;55;2200;1;1;0;16
2;1;13,58;20;55;5800;0;1;0;19
3;1;13,49;20;27;2300;1;1;0;18
4;1;16,21;50;27;1700;1;1;0;20

Figura 2.2: Ejemplo de un archivo de datos CSV

Es importante notar que todas las filas deben contener la misma canti-
dad de variables (o separadores), lo cual se hace automaticamente cuando
exportamos los datos a un archivo CSV desde cualquier aplicacion de hoja
de calculos o base de datos. En este caso, debemos indicarle al programa
en el momento de exportar que los campos van separados por un ;, porque
nuestra muestra contiene numeros con decimales, que en hispanoamerica se
indican mediante la coma. Tambien debemos indicar que los campos de texto
van delimitados por comillas. Desde el R, el comando para leer datos en un
archivo CSV es read.csv2, que es una variante del comando read.csv para
paises donde el punto decimal es una coma y los campos se delimitan por
; (punto y coma). El comando read.csv2 es en realidad una funcion que
devuelve los datos leidos desde un archivo a una variable tipo data frame y
su sintaxis es como se detalla a continuacion:

read.csv2(file,header = TRUE, sep = ";", quote="\"", dec=",")


2.3. COMO CARGAR LOS DATOS DE LA MUESTRA EN R 33

file Es la ruta del archivo CSV. Se indica mediante una cadena.

header Es TRUE si la primera fila del archivo CSV es el encabe-


zado, FALSE si no. Por defecto, se asume que la primera fila
del archivo es el encabezado.

sep Es el caracter separador. Por defecto, es igual a ;.

quote Es el caracter que indica el delimitador de comillas. Por


defecto es ".

dec Es el caracter que indica el punto decimal. Por defecto es ,.

Puesto que suponemos que el archivo CSV ha sido generado segun las
indicaciones dadas arriba, no tenemos que especificar las opciones header,
sep, quote y dec- R usara los valores por defecto para estos argumen-
tos. El codigo a continuacion carga los datos a partir de un archivo en
/home/laurentum/Documentos (el formato de ruta es diferente en Windows)
y los coloca en una variable data frame identificada por datos:

> datos <- read.csv2("/home/laurentum/Estadisticas_con_R/datos.csv")

Por ultimo, si le es difcil especificar una ruta de archivo, puede escoger


el archivo interactivamente en R mediante una ventana de dialogo. Para
usuarios de R bajo ambiente Windows, esto se hara de la siguiente forma:

> ruta_archivo <- choose.files()


> datos <- read.csv2(ruta_archivo)

En cambio, para usuarios de R bajo ambiente Linux, hacerlo requiere de


la librera tcltk, como se muestra a continuacion:

> require(tcltk)
> archivo <- tk_choose.files()
> datos <- read.csv2(archivo)
34 UNIDAD 2. SOBRE LOS DATOS Y LA MUESTRA

2.4. Preguntas de la Unidad

(Falta por elaborar)

1. De cuales formas se puede ingresar los datos de la muestra a un data


frame para hacer analisis estadsticos en R? Cuales son las ventajas
de cada uno de estos metodos?
Unidad 3

Estadstica Descriptiva
Univariante

3.1. Exploracion de datos

El proposito de la estadstica descriptiva, en cuanto al conjunto de tecni-


cas o metodos, es el de resumir los datos para facilitar su analisis posterior.
Al tener los datos resumidos graficamente o mediante las medidas nume-
ricas denominadas como estadsticas descriptivas 2 , surgen las interrogantes
mencionadas en la unidad 1 (Ver pagina 2). Este proceso de formular inte-
rrogantes con respecto a los datos para extraer informacion util de ellos se
conoce como exploracion de datos o minera de datos 3 . De tal modo, otro
1 El termino univariante se refiere a una sola variable. Por lo tanto, aqu nos ocupare-
mos del conjunto de tecnicas para analizar cada variable por separado
2 El termino estadsticas descriptivas se refiere tanto al conjunto de herramientas para

resumir los datos como a las medidas numericas calculadas a partir de la muestra que
cumplen igual proposito.
3 Este ultimo termino no es en realidad el mas adecuado en este contexto. La minera de

datos se refiere a conjuntos muy grandes de datos donde el proceso de encontrar relaciones

35
36 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

objetivo importante de la estadstica descriptiva es apoyar el proceso de ex-


ploracion de datos, para lo cual uno se vale de medidas numericas o graficas
que resuman los mismos.
No obstante, en todo esto hay que tener en cuenta que la intuicion, la crea-
tividad y sobre todo la curiosidad, son las cualidades maestras que guan este
proceso. Por otro lado, no debemos olvidar que las interrogantes y posibles
respuestas a estas (hipotesis) que surgen como producto de la exploracion de
datos, son, en el mejor de los casos, especulaciones sin ninguna validez cient-
fica. Por ejemplo, una grafica de barras construida a partir de una muestra no
es una prueba indiscutible de que la distribucion poblacional sea realmente
como aparenta segun la grafica. Otro ejemplo sera si calculamos a partir de
nuestra muestra de 121 estudiantes la nota promedio del primer ano para los
alumnos de computacion y de matematicas separadamente y al ver que la
media de notas de los estudiantes de computacion supera a la de los estu-
diantes de matematica, nos apresurasemos a concluir que la media de notas
de los estudiantes de computacion es realmente superior a la de los estudian-
tes de matematicas. Este ultimo sera un ejemplo de una especulacion sin
validez. La razon de ello es porque trabajamos con muestras aleatorias y al
ser estas subconjuntos parciales de la poblacion seleccionadas al azar, parte
de su variabilidad se debera a las leyes del azar y la otra parte, a diferencias
significativas entre las poblaciones. Es la inferencia estadstica la que se ocu-
pa de validar (o invalidar) cientficamente las suposiciones que formulamos
en la exploracion de datos. Todo esto se resume en la siguiente maxima, algo
jocosa, que seguramente los policas entenderan:

El trabajo del investigador estadstico consiste en hacer que los


datos hablen solos, pero no hay que torturarlos demasiado.

3.2. Medidas de dispersion y de tendencia


central

Comenzamos la exploracion de datos abriendo una sesion en R y cargando


los datos muestrales a la memoria:
o patrones entre ellos se realiza de forma automatizada mediante algoritmos de inteligencia
artificial.
3.2. MEDIDAS DE DISPERSION Y DE TENDENCIA CENTRAL 37

> datos <- read.csv2("/home/laurentum/Estadisticas_con_R/datos.csv")


> attach(datos, warn.conflicts = FALSE)

En vez de proporcionar el nombre del archivo entre comillas, se puede


utilizar algunos de los metodos de seleccion grafica de archivos vistos en la
unidad anterior, segun trabaje con R bajo ambiente Windows o Linux. La
ultima instruccion (attach(...)) sirve, como vimos en la primera unidad
(ver seccion 1.3), para indicarle al interprete R que en lo sucesivo nos referi-
remos a todos los campos del data frame datos directamente, sin utilizar el
prefijo datos$4 .
Como el interes del estudio recae sobre el bajo rendimiento academico,
segun el promedio de notas del primer ano de los estudiantes de matematicas
y computacion, comenzamos determinando un resumen de las estadsticas
descriptivas para la variable Pa1:

> summary(Pa1)

Min. 1st Qu. Median Mean 3rd Qu. Max.


5.00 10.43 12.50 12.16 14.00 17.88

Como se puede observar, summary(...) devuelve un cuadro con los valo-


res mnimos y maximos de la variable, el primer y tercer cuartl (el 25 % de
los valores de la variable son menores o iguales a 10.43 y el 75 % de los valores
de Pa1 son menores o iguales a 14.00), la mediana (Median en la salida de
R, percentil 50 o P50 ) y la media aritmetica (Mean o X) de la muestra, las
cuales para la variable Pa1 son iguales a 12.50 y 12.16 respectivamente.
Tanto la media como la mediana son medidas de tendencia central apli-
cables a esta variable (que es de escala proporcional): no existe alguna razon
a priori para considerar alguna de estas dos como la medida de tendencia
central para esta variable. Aquellos que han estudiado algo de inferencia esta-
dstica saben que la media aritmetica es el mejor estimador para la esperanza
poblacional y esta ultima figura como parametro en muchsimas distribucio-
nes de probabilidad. Por otro lado la interpretacion de media aritmetica como
4 Enlo sucesivo, cada vez que se inicie una sesion de R para practicar sobre estos datos,
se debe repetir el procedimiento de carga de datos antes descrito.
38 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

promedio es intuitivamente clara. Sin embargo, la media aritmetica adolece


de una desventaja con respecto a la mediana: es muy sensible a valores extre-
mos de la muestra. Considerese como ejemplo una muestra de 10 individuos
cuya riqueza, o fortuna neta, queremos estudiar. Como la distribucion de la
riqueza en el mundo es muy desigual, es muy probable que la mayora de
los individuos seleccionados en la muestra sean pobres. Sin embargo, si por
cosas de la vida algun magnate o multimillonario (un jeque arabe o un Bill
Gates) conforma nuestra muestra, su gran fortuna hara que la riqueza pro-
medio de los 10 individuos de la misma aumentase a un nivel artificialmente
alto y en este caso, la media aritmetica no sera una medida representativa
de la tendencia central. En este caso, la mediana si sera una medida mas
representativa de la tendencia central. De hecho, la mediana es una medida
de tendencia central mas robusta que la media aritmetica, porque la mediana
no es tan sensible a valores extremos en la muestra.
Volviendo a nuestro caso, que interpretacion debemos de darle a la dife-
rencia observada entre la media y la mediana? El hecho de que la media es
algo menor que la mediana indica que existe algun valor (o algunos valores)
muy bajos de la variable Pa1- este o estos valores pudiesen considerarse como
extremos o inusualmente bajos5 . Por lo demas, la diferencia entre la media
y la mediana no es tanta y si la distribucion fuese totalmente simetrica, me-
dia y mediana seran iguales al mismo valor. Resumiendo, la magnitud de
la diferencia entre la media y la mediana (X P50 ) nos dice algo sobre la
asimetra de la distribucion y el signo de esta diferencia (si es negativo o
positivo) nos indica hacia que extremo de la distribucion (inferior o superior
respectivamente) se encuentran el o los valores extremos.
Podemos precisar en que rango se encuentran estos valores extremos cons-
truyendo una tabla de frecuencias para lo cual debemos dividir la muestra en
intervalos de clase y calcular la frecuencia absoluta de cada clase. Una forma
de realizar esto en R es mediante la funcion hist, cuya descripcion y sintaxis
se dan a continuacion6 :
5 El
concepto de dato atpico lo definiremos con mas rigor posteriormente. Por ahora,
como vamos a referirnos a estos valores bajos como extremos. Diremos extremos porque
son lo suficientemente alejados de la media/mediana como para llamar nuestra atencion.
6 Esta descripcion de la funcion hist es parcial. Solo se mencionan los argumentos y as-

pectos pertinentes a la tarea de construir la tabla de frecuencias deseada. Nota: "Sturges"


y TRUE son los respectivos argumentos por defecto para los parametros breaks y plot. En
una seccion posterior (en esta misma unidad), discutiremos un poco mas en detalle sobre
3.2. MEDIDAS DE DISPERSION Y DE TENDENCIA CENTRAL 39

hist(x,breaks="Sturges", freq=TRUE, plot=TRUE)

x Es el vector de valores numericos cuya distribucion en interva-


los de frecuencia se desea obtener.

breaks Es alguno de los siguientes:

Un valor numerico indicando la cantidad de intervalos


o clases (n).
Un vector numerico indicando las n + 1 fronteras para
los n intervalos.
Una cadena alfanumerica indicando el algoritmo me-
diante el cual se calcula el numero de intervalos de
clase y sus lmites. El valor por defecto para este pa-
rametro indica que la funcion hist divide los datos en
intervalos segun la regla de Sturges, aunque cabe sena-
lar que existen otros metodos o reglas para esto, tales
como Scott o FD, que se corresponden a la regla
de Scott y de Freedman-Diaconis (ver seccion 3.4 mas
adelante).

freq Es un booleano que indica si el histograma a generar es


una representacion de las cuentas (frecuencias absolutas) de
cada clase (TRUE es el valor por defecto, o si el histograma
representa las densidades de probabilidad (FALSE) de modo
que el area total del histograma sea igual a 1.

plot Un booleano, de valor TRUE o FALSE. TRUE indica que que-


remos generar la grafica (el histograma), el cual es el valor
por defecto del parametro. FALSE indica que no queremos
generar la grafica, sino que mas bien estamos interesados en
asignarle el resultado de esta funcion a una variable/objeto
para construir la tabla de frecuencias a partir de ella.

la formula de Sturges.
40 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

Vamos a invocar la funcion hist sobre los datos y asignarsela a una varia-
ble temporal a partir de la cual construiremos la tabla de frecuencias. Como
valor del parametro plot, indicamos FALSE porque no queremos graficar el
histograma por ahora. Omitimos intencionalmente el parametro breaks por-
que usaremos la regla de Sturges (valor del parametro por defecto). Luego de
la asignacion de la variable temporal (hist1) en este caso), le indicamos al
interprete R que visualice su contenido para ver que clase de objeto genera
la funcion hist:

> hist1 <- hist(Pa1, plot = FALSE)


> hist1

$breaks
[1] 4 6 8 10 12 14 16 18

$counts
[1] 1 9 18 25 39 21 8

$intensities
[1] 0.004132231 0.037190083 0.074380165 0.103305785 0.161157025
[6] 0.086776860 0.033057851

$density
[1] 0.004132231 0.037190083 0.074380165 0.103305785 0.161157025
[6] 0.086776860 0.033057851

$mids
[1] 5 7 9 11 13 15 17

$xname
[1] "Pa1"

$equidist
[1] TRUE

attr(,"class")
[1] "histogram"
3.2. MEDIDAS DE DISPERSION Y DE TENDENCIA CENTRAL 41

Como podemos ver, los objetos generados por la funcion hist tienen varios
atributos. Cada uno de estos atributos es una parte del objeto que contiene
informacion sobre como construir el histograma, pero nosotros no estamos
interesados en todos los atributos, sino en los que detallamos a continuacion.
El atributo $breaks es un vector numerico indicando los n + 1 lmites de las
n clases. El atributo $mids es un vector numerico que contiene los n puntos
medios, o representantes de clase, de las n clases. El atributo $counts contiene
las frecuencias absolutas o cantidad de valores observados en la muestra para
los n intervalos de clase. Observamos que segun la regla de Sturges, la tabla
de frecuencias resultante consta de 7 intervalos de clase. Podemos acceder
a estos resultados agregando $breaks, $mids o $counts al identificador del
objeto de clase histograma, como se muestra en el ejemplo a continuacion:

> hist1$breaks

[1] 4 6 8 10 12 14 16 18

> hist1$mids

[1] 5 7 9 11 13 15 17

> hist1$counts

[1] 1 9 18 25 39 21 8

Y a partir de esto, podemos construir una hoja de datos (data frame)


con la tabla de frecuencias. Dicha tabla constara de una columna con los
lmites de clase inferiores, que se corresponden a los primeros n elementos del
vector/atributo $breaks, una columna para los representantes de clase de
cada intervalo, una columna para los lmites de clase superiores (los ultimos
n elementos de $breaks) y las frecuencias absolutas. Despues de asignarle
esta hoja de datos a una variable, la visualizamos para ver su contenido:

> n <- length(hist1$breaks) - 1


> tabla.Pa1 <- data.frame(inf = hist1$breaks[1:n],
42 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

+ x_i = hist1$mids, sup = hist1$breaks[2:(n + 1)],


+ fa_i = hist1$counts)
> tabla.Pa1

inf x_i sup fa_i


1 4 5 6 1
2 6 7 8 9
3 8 9 10 18
4 10 11 12 25
5 12 13 14 39
6 14 15 16 21
7 16 17 18 8

Al ver la tabla de frecuencias, observamos que el intervalo menor con-


tiene 1 solo valor de la muestra, que es justamente el valor mnimo de la
variable Pa1, o sea 5. Intuitivamente, consideraremos a este elemento de la
muestra como extremo, en virtud de su valor inusualmente bajo para Pa1.
Prosiguiendo, mencionamos el uso de la funcion hist para construir tablas
de frecuencias porque esto abarca un aspecto importante de la estadstica
descriptiva: el trabajar con datos agrupados. Cuando se habla de estadsticas
basadas en datos agrupados, nos referimos a aquellas que se calculan me-
diante los representantes de clase y las frecuencias relativas a partir de una
tabla de frecuencias como la que acabamos de construir. A continuacion se
ira ampliando progresivamente esta tabla para poder calcular la media y la
desviacion estandar de Pa1 para datos agrupados.

> tabla.Pa1$fr_i <- tabla.Pa1$fa_i/sum(tabla.Pa1$fa_i)


> tabla.Pa1$x_i.x.fr_i <- tabla.Pa1$x_i * tabla.Pa1$fr_i
> tabla.Pa1$x_i2.x.fr_i <- (tabla.Pa1$x_i)^2 * tabla.Pa1$fr_i
> tabla.Pa1

inf x_i sup fa_i fr_i x_i.x.fr_i x_i2.x.fr_i


1 4 5 6 1 0.008264463 0.04132231 0.2066116
2 6 7 8 9 0.074380165 0.52066116 3.6446281
3 8 9 10 18 0.148760331 1.33884298 12.0495868
4 10 11 12 25 0.206611570 2.27272727 25.0000000
3.2. MEDIDAS DE DISPERSION Y DE TENDENCIA CENTRAL 43

5 12 13 14 39 0.322314050 4.19008264 54.4710744


6 14 15 16 21 0.173553719 2.60330579 39.0495868
7 16 17 18 8 0.066115702 1.12396694 19.1074380

> attach(tabla.Pa1, warn.conflicts = FALSE)


> cat("Media de Pa1 para datos agrupados: ", sum(x_i.x.fr_i),
+ "\n")

Media de Pa1 para datos agrupados: 12.09091

> cat("Desviacion estandard de Pa1 para datos agrupados: ",


+ sqrt(sum(x_i2.x.fr_i) - (sum(x_i.x.fr_i)^2)),
+ "\n")

Desviacion estandard de Pa1 para datos agrupados: 2.70903

Sera instructivo comparar las medidas de tendencia central y de disper-


sion entre los datos agrupados y los no agrupados, pero primero tendramos
que calcular la desviacion estandar de Pa1 para datos no agrupados, la cual
no fue determinada mediante la instruccion summary(Pa1). Esto se hace muy
facilmente por medio de la funcion sd:

> sd(Pa1)

[1] 2.781712

En consecuencia, tenemos los siguientes resultados para Pa1:


Desviacion
Media estandar
Datos no
agrupados 12.16 2.781712
Datos
agrupados 12.09091 2.70903
Es de notar que la media y la mediana no difieren significativamente segun
se calculen para datos agrupados o para datos no agrupados. Sin embargo,
debemos tener en consideracion lo siguiente:
44 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

Siempre sera mejor calcular estas estadsticas para datos no agrupa-


dos, pues al agruparlos se pierde informacion y por lo tanto, se pierde
precision.

En algunas ocasiones solo se dispone de datos agrupados. Por ejemplo,


la data de los censos es agrupada, pues sera poco viable trabajar con
listados de millones de observaciones. En estos casos, la unica manera
de calcular estadisticas es a traves de datos agrupados.

Antes de proceder al tema de la atipicidad, mencionaremos algunos as-


pectos sobre las medidas de tendencia central y de dispersion para variables
de escala ordinal, lo cual no habamos hecho porque para estos datos en par-
ticular no tenamos ninguna variable de esa escala. No obstante, para fines
de dilucidar lo que habra de hacerse en tal caso, retomamos un poco el tema
a partir de lo expuesto en la unidad anterior, donde se mencionaba que la
moda y la mediana son medidas de tendencia adecuadas para una variable
de escala ordinal. Los valores de una escala ordinal no son proporcionales
entre s 7 y por lo tanto la media aritmetica no es una medida de tendencia
central adecuada, pues su calculo asume implcitamente la proporcionalidad,
por tratarse de un promedio. Pero, que hay con las medidas de dispersion?
La varianza tambien es un promedio: es el promedio de las desviaciones cua-
draticas de la media. Es por ello que para el caso de las variables de escala
ordinal, se sugieren otras medidas de dispersion.
Una medida de dispersion mas factible para variables ordinales es el rango,
definido este como la diferencia entre el mayor y menor valor de la muestra.
Otra medida de dispersion factible sera el rango intercuarlico, denotado
como IQR por sus siglas en ingles, el cual es la diferencia entre el tercer y
primer cuartl:

IQR = Q3 Q1

7 Supongase
que clasificamos a los estudiantes como buenos, regulares o malos.
Un estudiante bueno no es el doble de bueno que un estudiante regular, por ejemplo.
Aun asignando valores numericos a los tres niveles de modo que se refleje la relacion de
orden entre ellos, esta asignacion es arbitraria y por ende no podemos establecer ninguna
proporcionalidad entre los tres niveles.
3.3. DATOS EXTREMOS O AISLADOS 45

En el caso de Pa1 por ejemplo, su rango intercuartlico es igual a 3,57, pues


su primer y tercer cuartl (Q1 y Q3 ) son iguales a 14 y a 10,43 respectivamente.
Esto tambien significa que la mitad de los estudiantes tienen un promedio de
notas del primer ano ubicado entre esos dos valores.
El rango y el rango intercuartlico, como medidas de dispersion, no son
comparables con la desviacion estandar- la medida de dispersion por excelen-
cia para las variables de escala proporcional. Sin embargo, existe una medida
de dispersion analoga a la desviacion estandar para el caso de las variables
ordinales- es la desviacion mediana absoluta o MAD por sus siglas en ingles.
Como bien lo dice su nombre, la desviacion mediana absoluta es la media-
na del valor absoluto de las diferencias entre los valores de la muestra y la
mediana[8]. Esta medida se calcula en R mediante la funcion mad(...), cuyo
uso ilustraremos calculandola para Pa1:

> mad(Pa1)

[1] 2.861418

Como se puede observar, la desviacion mediana absoluta y la desviacion


estandar de Pa1 resultan ser valores muy parecidos.

3.3. Datos extremos o aislados

En la seccion anterior hemos mencionado que la presencia de datos extre-


mos en una muestra pudiese afectar la media aritmetica. Entendemos como
dato extremo a aquel que es lo suficientemente alejado de la tendencia central
de la variable, aquel que es inusualmente bajo o alto. Pareciera segun esto
que estamos usando el termino dato extremo como sinonimo de dato at-
pico, pero nosotros le atribuiremos un sentido mas lato a la palabra atpico
que a la palabra extremo y para ilustrar, consideremos un ejemplo. Supon-
gase que entre un grupo de corredores que compitieron en un maraton hay
una anciana octogenaria que termino la carrera en 3.5 horas. Considerando
su tiempo en el maraton como una variable aislada de las otras, difcilmente
diramos que 3.5 horas es un tiempo extremo. Sin embargo, considerando las
46 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

otras variables, el hecho de que una octogenaria, en su condicion de mujer


y de anciana, termine el maraton en 3.5 horas es un hecho excepcional- esa
corredora es sin lugar a dudas una corredora atpica.
En el contexto de la estadstica univariante, estamos mas bien interesados
en hallar valores extremos. Pero, cuan inusual o cuan alejado es suficien-
temente alejado para poder calificar a un dato como extremo? Al respecto,
existe una caracterizacion de los valores extremos segun si distancia al primer
o tercer cuartl (ver [3][p. 170] para mas detalles), clasificandolos en datos
aislados moderados o datos aislados extremos8 :

Dato aislado moderado Es todo aquel que se encuentre entre Q1 3 IQR


y Q1 1, 5 IQR o entre Q3 + 1, 5 IQR y Q3 + 3 IQR.
Dato aisalo extremo Es todo aquel que sea menor que Q1 3IQR o mayor
que Q3 + 3 IQR

A fin de aclarar esto se da el siguiente esquema grafico, que indica median-


te las areas sombreadas donde se encuentran los datos aislados moderados y
extremos:

Figura 3.1: Ubicacion de datos aislados moderados y extremos

Para la variable que nos ocupa, Pa1, el siguiente codigo en R extrae


aquellos los valores aislados moderados y extremos:
8 Se
usa el termino aislado en vez de extremo en esta caracterizacion para evitar la
cacofona. Se asume aqu que extremo es sinonimo de aislado.
3.3. DATOS EXTREMOS O AISLADOS 47

> Q1 <- summary(Pa1)[2]


> Q3 <- summary(Pa1)[5]
> IQR1.5 <- (Q3 - Q1) * 1.5
> IQR3 <- (Q3 - Q1) * 3
> moderados <- paste(" Datos aislados moderados: ",
+ Pa1[((Pa1 <= Q1 - IQR1.5) & (Pa1 > Q1 - IQR3)) |
+ ((Pa1 >= Q3 + IQR1.5) & (Pa1 < Q3 + IQR3))],
+ "\n")
> extremos <- paste(" Datos aislados extremos: ",
+ Pa1[(Pa1 <= Q1 - IQR3) | (Pa1 >= Q3 + IQR3)])
> cat("Datos aislados para Pa1", "\n", moderados, extremos)

Datos aislados para Pa1


Datos aislados moderados: 5
Datos aislados extremos:

Observese como se determinan el primer y tercer cuartl a partir de la in-


formacion dada por summary(Pa1). Esta expresiondevuelveun vector cuyos
segundo y quinto componentes se corresponden al primer y tercer cuartl res-
pectivamente. El rango intercuartlico se calcula a partir de la diferencia entre
Q1 y Q3, multiplicandose este rango intercuartlico por 1, 5 y 3 para obtener
las respectivas distancias para datos moderados y extremos. De la salida de
este codigo se evidencia que Pa1 tiene un solo valor aislado moderado, que
es igual a 5. Es decir, ese valor es considerado como un promedio de primer
ano anormalmente bajo.
Todava falta por ilustrar como interpretar toda esta informacion, pero
eso lo dejaremos para la ultima seccion de esta unidad. En la siguiente uni-
dad estudiaremos como producir resumenes graficos en R para variables de
distintos tipos de escala. En particular, estudiaremos la construccion de los
denominados diagramas de caja, que sirven justamente para verificar grafi-
camente cuestiones lo relativo a los valores aislados de una variable.
48 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

3.4. Graficas estadsticas en R

Es menester ahora hacer algunas consideraciones sobre las formas de pre-


sentar un resumen grafico de la data, de modo que quien lea un estudio esta-
dstico pueda captar rapidamente las tendencias y caractersticas principales
de la misma. Cuando tratamos con datos de escala ordinal o de intervalos,
sin lugar a dudas una de las graficas mas importantes empleadas es el his-
tograma de frecuencias. El histograma de frecuencias sirve para visualizar la
distribucion de frecuencias (relativa o absoluta) de una variable, lo cual es
especialmente util para el analisis exploratorio de datos.
Para elaborar un histograma de frecuencias, se debe separar la data en
clases (o intervalos de clase) segun el procedimiento expuesto anteriormente
para elaborar las tablas de frecuencia (datos agrupados). Para definir cada
intervalo de clase, debemos especificar su lmite inferior y superior- la frecuen-
cia absoluta asociada a cada intervalo de clase sera la cuenta de los datos que
se encuentren entre esos dos lmites. A fin de determinar correctamente las
frecuencias absolutas, es necesario que se especifiquen los intervalos de clase
de modo que cada dato pertenezca a uno y solo un intervalo de clase (para
que ese dato no sea contado mas de una vez). Por esto ultimo, el menor de los
limites inferiores y el mayor de los lmites superiores se deben corresponder
al elemento menor y el elemento mayor de la data, respectivamente.
El punto medio entre el lmite inferior y superior de un intervalo de clase
se conoce como la marca de clase o representante de clase; la amplitud de
un intervalo de clase es la diferencia entre el lmite superior y el inferior. La
percepcion correcta de un histograma de frecuencias depende de que todos
los intervalos de clase sean de la misma amplitud, mas concretamente, la
amplitud (A) de todos los intervalos debe ser igual al rango (R) de la data
dividida entre el numero de clases (N):

R x(n) x(1)
A= =
N N

Aqu todo se reduce a determinar el numero N de intervalos de clase en


los cuales se agrupara la data. Un numero de clases muy pequeno resume
demasiado la informacion y un numero muy grande de clases resulta en un
resumen grafico tan confuso como los datos no agrupados. A fin de orientar
3.4. GRAFICAS ESTADISTICAS EN R 49

la escogencia de un N adecuado existen varias reglas empricas, como por


ejemplo la regla de Sturges. Segun estas reglas, el numero N de intervalos
depende del numero n de elementos de la muestra y en todo caso, N es un
numero entero, el cual se obtiene mediante la funcion parte entera (que se
indica a continuacion mediante los corchetes []):

Dixon y Kronmal (1965): N = [10 log10 n]



Velleman (1976): N = [2 n]

Sturges (1926): N = [1 + log2 n]

De estas tres reglas empricas, la de Sturges arroja menos intervalos de


clase y por lo tanto, una mayor amplitud de cada intervalo. Los valores atpi-
cos (o extremos) pueden agrandar mucho el rango, haciendo los intervalos de
clase aun mas amplios. En estos casos puede ser mas conveniente usar reglas
que tomen en cuenta el rango intercuartlico de los datos (una medida mas
robusta de dispersion), tales como la regla de Scott (1979) o la de Friedman
y Diaconis (1981), las cuales se dan como opcion del parametro breaks de
la funcion hist.
Todo lo expuesto hasta ahora sirve como marco teorico de como se cons-
truyen los histogramas. Sin embargo, como uno de los objetivos de usar una
aplicacion estadstica es el de simplificar las cosas (no teniendo que lidiar con
la seleccion del numero de clases adecuado, ni con la clasificacion a mano de
cada dato en un intervalo de clase), para la mayora de los casos, si queremos
graficar un histograma, bastara con la instruccion hist de R sin otro para-
metro que el vector de la muestra9 . As, utilizamos esta funcion especificando
como unico parametro el vector de datos Pa1 para generar su histograma de
frecuencias:

> hist(Pa1)

Desde la consola de R observara un histograma como el de la Figura 3.2,


creado en otra ventana. Podemos observar que segun la regla de Sturges, el
9 Enla mayora de los casos, la regla de Sturges (parametro por defecto de hist, da un
numero adecuado de intervalos de clase.
50 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

Figura 3.2: Histograma de frecuencias para la variable Pa1

histograma tiene 7 intervalos de clase, pues n = 121. En Windows, puede hacer


clic al boton derecho del raton sobre la ventana de la grafica para acceder
a la opcion de Guardar como de la grafica. Si lo desea, puede exportar
todas las graficas de una sesion a un archivo PDF, lo cual se hace ejecutando
primeramente la orden pdf("miarchivo"), lo cual creara un archivo con
la ruta especificada entre parentesis (en este caso, "miarchivo.pdf" en el
directorio de trabajo.
Ahora nos ocupa resumir graficamente las variables categoricas, o cuali-
tativas, para lo existen los denominados diagramas de torta. Los diagramas
de torta son tan conocidos por el publico general que seguramente si cierra
los ojos y piensa en la palabra estadstica, un diagrama de torta sera lo
primero que le viene a la mente (puede ser porque quizas tambien le pro-
3.4. GRAFICAS ESTADISTICAS EN R 51

voque comer torta). No obstante, los diagramas de torta no son bien vistos
universalmente, por lo menos en el mundo de la estadstica. A continuacion
citamos a algunos expertos:

Las graficas de torta presentan severos problemas de percep-


cion. Experimentos en percepcion grafica han demostrado que
comparado con las graficas de puntos (dot charts), aquellas trans-
miten la informacion de manera mucho menos confiable. Pero si
desea exhibir alguna data y comunicar la informacion no es tan
importante, entonces una grafica de torta bastara.

Becker, R., Cleveland, W. (1996). The Splus Trellis GRaphics


User Manual. Pagina 50.

Una tabla es casi siempre mejor que una estupida grafica de


tortas. Lo unico peor que una grafica de tortas es varias de ellas,
pues entonces el espectador debe comparar cantidades ubicadas en
el espacio de manera desordenada, tanto intra o entre tortas ...
Dada su baja densidad de data e incapacidad de ordenar cantida-
des a lo largo de la dimension visual, las graficas de torta nunca
deberan usarse.

Tufte, E. (1983). The Visual Display of Quantitative


information. Pagina 178.

Alguien quiere torta de postre? Si se esta preguntando quienes son estos


especialistas que en terminos tan amables se refieren a las graficas de tortas,
la fuente consultada [6] 10 indica que Bill Cleveland es autoridad mundial en
como se extrae la informacion a partir de graficas y que Ed Tufte, quien fue
Profesor de Estadsticas, Ciencias Polticas y Diseno Grafico en la Universi-
dad de Yale, ha escrito algunos de los libros mas vendidos sobre el despliegue
de informacion. En el mismo material consultado del Profesor Ihaka encon-
tramos muchos mas comentarios negativos sobre las graficas de tortas, como
por ejemplo el de un especialista en semiotica que afirma que las graficas
10 La fuente consultada corresponde a un material didactico preparado para un curso
de analisis de datos impartido por el Profesor Ross Ihaka, quien por cierto es uno de los
creadores originales del lenguaje R.
52 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

de tortas son completamente inutiles, o una resena indicando que dichas


graficas han sido completamente proscritas del protocolo de presentacion de
datos estadsticos de la Agencia de Informacion Energetica del Departamento
de Energa de los Estados Unidos.
Aun cuando la opinion de estos senores es muy respetable, el autor hu-
mildemente intentara presentar varias vertientes de la controversia, a fin de
que sea el lector quien decida sobre la conveniencia de usar las graficas de
tortas. Para empezar, es importante entender la premisa basica de una gra-
fica de torta: que las areas de los segmentos circulares, relacionadas con la
frecuencia o probabilidad de cada segmento, suman a un todo, una unidad.
De esta premisa se desprende que tratandose de segmentos en un circulo, la
grafica de tortas supone implcitamente que las clases o categoras correspon-
dientes a estos segmentos no tienen una relacion de orden entre s, pues en
un circulo no hay ningun tipo de ordenamiento. Por lo tanto, tanto los defen-
sores como los detractores de las graficas de torta coinciden en que este tipo
de graficas son absolutamente inadecuadas para resumir variables de escala
ordinal o proporcional - en nuestro caso de estudio, variables como Pa1, Ua1,
Ingr y otras similares. Los que estan a favor de las graficas de torta afir-
man que bajo ciertas condiciones, estas graficas se pueden usar para resumir
variables categoricas (o nominales), mientras que los que estan en contra de
su uso afirman que aun tratandose de variables categoricas, el ojo humano
no percibe correctamente la relacion entre las frecuencias de las categoras
cuando estos se corresponden a areas. Segun ellos, siempre sera mas efecti-
vo comunicar estas relaciones cuando se visualizan las frecuencias de forma
lineal o unidimensional (como se hace en los histogramas mediante la altura
de las barras, por ejemplo) y no de forma bidimensional, mediante areas de
segmentos circulares.
Considerese la grafica de tortas de la Figura 3.3 11 - Cual es la categora
(color) con la porcion mas grande de la torta? Cual es mayor: la porcion
amarilla o la negra? Estara seguro? Como podra verificarlo? La grafica de
barras de la figura 3.4, basada en la misma data que la figura anterior, es mas
clara en cuanto a aclarar estas cuestiones, aunque por otro lado en la grafica
de barras no se percibe adecuadamente la relacion del area de cada segmento
con respecto al todo, lo cual es algo que la grafica de torta si logra comunicar
y ah justamente radica la verdadera justificacion de su uso. En conclusion-
11 Los ejemplos subsecuentes fueron tomados de [1]
3.4. GRAFICAS ESTADISTICAS EN R 53

Figura 3.3: Una grafica de tortas Figura 3.4: La grafica de barras corres-
pondiente a la grafica de tortas ante-
rior

la grafica de torta se utiliza para comunicar la relacion de las frecuencias o


proporciones de cada categora de una variable de escala nominal con respecto
a un todo.
Es preciso mencionar algunas trampas en las que se debe evitar incurrir
cuando se trabaja con este tipo de graficas. En primer lugar, una grafica de
tortademasiado segmentada(con muchas categoras o segmentos circulares)
dificulta la apreciacion de la relacion de las partes con respecto al todo. Por
otro lado, siempre se debe recordar que las areas de los segmentos circulares
se deben corresponder a las proporciones de cada categora con respecto al
todo y que las categoras deben ser mutuamente excluyentes. Considerese la
grafica de torta de la figura 3.5, en la cual se resume una encuesta sobre
cual candidato presidencial apoyara el publico para las elecciones del 2012.
Puede senalar que hay de malo en esa grafica?
Segun esa grafica, el 60 % de los encuestados apoyara a Romney, el 63 %
a Huckabee y el 70 % a Palin. Seguramente observo que los porcentajes de
encuestados que apoyan a cada uno de los candidatos no suman al cien por
ciento, lo cual viola la premisa basica de las graficas de torta como ins-
54 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

Figura 3.5: La tristemente celebre grafica de tortas de Fox News

trumentos para comunicar visualmente la porcion (pedazo de la torta) de


cada categora con respecto al todo. Esto solo es posible si las categoras son
mutuamente excluyentes, pero en este caso, seguramente los encuestados po-
dan responder a favor de mas de un candidato, lo cual por supuesto, invalida
completamente esta grafica; los confundidos televidentes seguramente seguan
con la incognita sobre cual candidato tendra mas apoyo. Otro elemento que
tiende a confundir en las graficas de torta es colocarlas en 3 dimensiones
(en perspectiva). Si percibir correctamente una informacion a partir de una
grafica de tortas plana es suficientemente difcil, cuanto mas lo es cuando la
grafica de tortas se presenta en perspectiva tri-dimensional. Si decide utili-
zar graficas de torta, no las haga en perspectiva, aun cuando se vean mas
bonitas. Habiendo hecho estas advertencias, pasemos ahora a la practica.
En R, la instruccion para generar graficas de torta es pie( ), cuya
sintaxis se da a continuacion12 :

pie(x,labels=names(x), col=NULL, main=NULL, ...)

12 Aqu solo se muestran los principales parametros, aquellos que nos son mas utiles.
3.4. GRAFICAS ESTADISTICAS EN R 55

x Es un vector de valores numericos que representan las frecuen-


cias de cada clase de la variable cuya grafica de tortas se
quiere obtener. Esta se dibuja de tal modo que las areas de
los segmentos circulares de cada clase son proporcionales a
sus respectivas frecuencias.

labels Es un vector de caracteres alfanumericos, indicando el


nombre de cada clase. Por defecto, es igual a los nombres
con los que se designa cada categora de la variable nominal,
o sea, names(x).

col Es un vector de caracteres indicando los colores respectivos


de cada categora (ejemplo, "black", "green", etc.). Por
defecto, pie utiliza un esquema de colores pasteles.

main Un valor de caracter indicando el ttulo de la grafica. Por


defecto, es nulo.

Podramos construir graficas de torta para cualquiera de las variables ca-


tegoricas de datos. Sin embargo, si incluimos el identificador de la variable
categorica como parametro de la instruccion pie(. . .) directamente (ejemplo:
pie(S)), no obtendremos la grafica deseada. Antes de proceder, es preciso
explicar lo que en R se conoce como factor. Un factor no es mas que el nombre
en R para una variable cualitativa o categorica- los valores que asume esta
variable se conocen como niveles (en R, levels). En nuestra data por ejemplo,
la variable categorica sexo (datos$S) asume dos valores: 0 y 1. Los valores
numericos, 0 y 1, representan los dos generos posibles: masculino y femenino
respectivamente. Para efectos de emplear tecnicas cuantitativas como el ana-
lisis de regresion, por ejemplo, convendra dejar los niveles de esta variable
como numeros. Sin embargo, para efectos de la estadstica descriptiva, se
quisiera identificar estos niveles mediante etiquetas de caracteres. En R, esto
es posible mediante la funcion factor, como se muestra a continuacion:

> factor(S, labels = c("Masculino", "Femenino"))

[1] Masculino Masculino Masculino Masculino Masculino


[6] Masculino Femenino Masculino Masculino Masculino
56 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

[11] Femenino Masculino Masculino Masculino Masculino


[16] Masculino Masculino Masculino Masculino Masculino
[21] Masculino Masculino Masculino Masculino Femenino
[26] Masculino Femenino Masculino Masculino Masculino
[31] Masculino Masculino Masculino Femenino Masculino
[36] Masculino Femenino Femenino Femenino Masculino
[41] Masculino Femenino Femenino Femenino Masculino
[46] Masculino Masculino Masculino Masculino Masculino
[51] Femenino Masculino Masculino Masculino Femenino
[56] Masculino Masculino Masculino Masculino Femenino
[61] Masculino Masculino Femenino Masculino Masculino
[66] Masculino Femenino Masculino Masculino Masculino
[71] Masculino Femenino Masculino Masculino Masculino
[76] Masculino Femenino Masculino Femenino Masculino
[81] Femenino Masculino Masculino Masculino Masculino
[86] Masculino Masculino Masculino Masculino Femenino
[91] Masculino Masculino Masculino Masculino Masculino
[96] Femenino Masculino Masculino Masculino Masculino
[101] Masculino Masculino Masculino Femenino Masculino
[106] Masculino Masculino Masculino Femenino Femenino
[111] Femenino Femenino Masculino Femenino Masculino
[116] Femenino Masculino Masculino Masculino Masculino
[121] Masculino
Levels: Masculino Femenino

Como podemos observar, el resultado consta de las mismas 121 observa-


ciones para la variable sexo, con los niveles Masculino y Femenino donde
haya un 0 o 1 en la variable S, respectivamente. El orden de los elementos
del vector de caracteres usado como parametro de label es importante, pues
se corresponde al orden de los niveles numericos tal como se presentan en la
muestra. Aun as, todava no podemos utilizar este vector de factores como
entrada para el argumento x de pie - para ello, necesitamos alguna forma de
resumir las observaciones de ese factor a fn de tener las frecuencias absolu-
tas (una cuenta) de cada uno de los niveles del factor. Esto ultimo se realiza
mediante la funcion table, como se muestra a continuacion:

> sexo <- table(factor(S, labels = c("Masculino", "Femenino")))


> sexo
3.4. GRAFICAS ESTADISTICAS EN R 57

Masculino Femenino
92 29

Con esto podemos ir visualizando la grafica de tortas para esta variable:

> pie(sexo)

Figura 3.6: Diagrama de tortas para la variable S

La grafica de la figura 3.6 esta incompleta. Por una parte, quisieramos


un esquema de colores mas acorde con la variable que estamos resumiendo
graficamente. En nuestra cultura asociamos, por alguna ignota razon, el co-
lor rosado al sexo femenino y el azul al masculino- trataremos de utilizar
este esquema cromatico dandole valores al parametro col. Por otro lado,
aun cuando las areas de los segmentos se corresponden proporcionalmente
a la frecuencia relativa de cada nivel, quisieramos cuando menos indicar los
porcentaje de cada clase (las frecuencias relativas de cada nivel). La ventaja
de utilizar un lenguaje de programacion de altsimo nivel como R es que los
metodos y las funciones aplicables a vectores, por ejemplo, son heredadas por
objetos mas complejos, como parece ser la instancia sexo. As, tenemos lo
siguiente:
58 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> sum(sexo)

[1] 121

> round(sexo/sum(sexo) * 100)

Masculino Femenino
76 24

> names(sexo)

[1] "Masculino" "Femenino"

> etiquetas <- paste(names(sexo), "\n", round(sexo/sum(sexo) *


+ 100), "%")
> etiquetas

[1] "Masculino \n 76 %" "Femenino \n 24 %"

Notese que la funcion sum, que devuelve la suma de todos los compo-
nentes de un vector, devuelve aqu la suma de todas las frecuencias de clase
contenidas en la tabla sexo. La funcion round no hace mas que redondear
un numero real al entero mas proximo. Aplicandola aqu, round devuelve el
vector de las frecuencias relativas de clase, expresadas estas en porcentajes.
La expresion names(sexo) devuelve un vector de cadenas de caracteres con
los nombres (etiquetas) que le hemos asignado a cada nivel respectivo del fac-
tor. Finalmente, creamos un vector donde concatenamos (mediante la funcion
paste) cada nombre de clase con su respectivo porcentaje y se lo asignamos
al identificador etiquetas. Dentro de la expresion paste(. . .), el parametro
"\n" sirve para indicar que, al construir el diagrama de torta, el nombre de
cada clase sera seguido en la lnea de abajo por su respectivo porcentaje. Con
esto estamos listos para crear un diagrama de torta mas ilustrativo:
3.4. GRAFICAS ESTADISTICAS EN R 59

> pie(sexo, labels = etiquetas, col = c("blue", "pink"))

Figura 3.7: Diagrama de tortas (mas ilustrativo) para la variable S

En un arrebato de virtuosismo, y nada mas que para presumir sobre las


capacidades graficas de R, intentaremos crear un diagrama de torta reminis-
cente de un simpatico personaje de la era dorada de los videojuegos13 . Notese
el uso del parametro main para indicar el ttulo de la grafica. Notese tambien
como hemos rotado el angulo de inicio mediante el parametro init.angle:

> pie(sexo, labels = etiquetas, col = c("yellow", "white"),


+ main = "PACMAN de sexo", init.angle = 45, radius = 0.3)
> polygon(x = c(-1.2, -1.2, -1.15, -0.75, -0.7, -0.7,
+ -0.8, -0.8, -0.9, -0.9, -1, -1, -1.1, -1.1),
+ y = c(-0.2, 0.2, 0.25, 0.25, 0.2, -0.2, -0.2,
+ -0.18, -0.18, -0.2, -0.2, -0.18, -0.18, -0.2),
+ col = "blue")
> points(-1.05, 0.15, bg = "white", pch = 21, cex = 2)
> points(-1.02, 0.15, bg = "black", pch = 21, cex = 0.8)
> points(-0.85, 0.15, bg = "white", pch = 21, cex = 2)
> points(-0.82, 0.15, bg = "black", pch = 21, cex = 0.8)
13 Ninos: no intenten hacer esto en casa sin la supervision de un adulto
60 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> points(0.7, 0, pch = 21, bg = "orange", cex = 3)


> points(1.2, 0, pch = 21, bg = "orange", cex = 3)

Figura 3.8: Diagrama de tortas a la PACMAN para la variable S

Abandonando el tema de las graficas de torta y regresando a otros asuntos


mas serios, vamos a abordar ahora un tipo de grafica llamado grafica de
caja o boxplot. El grafico de cajas, desarrollado por John Tukey en su libro
Exploratory Data Analysis de 1977, muestra en una sola grafica el primer
y tercer cuartl, la mediana, los valores maximos y mnimos, y los valores
atpicos moderados y extremos. Al mostrar estos valores sobre un mismo eje,
la grafica de caja permite visualizar facilmente la variabilidad de la data y
la asimetra. Sin mas preambulos, construyamos en R un diagrama de caja
para la variable Pa1:
Los otros parametros de la funcion boxplot se discutiran posteriormente
a medida que necesitemos construir diagramas de cajas mas elaborados. Por
ahora se ofrece una interpretacion de la grafica de la figura 3.9. En el eje Y de
la grafica se colocan los niveles de la variable Pa1. La caja representa la data
desde el primer cuartl hasta el tercero. La lnea gruesa horizontal dentro
de la caja representa la ubicacion de la mediana. Notese que segun esto,
3.4. GRAFICAS ESTADISTICAS EN R 61

> boxplot(Pa1)

Figura 3.9: Diagrama de caja para la variable Pa1

el primer y tercer cuartl son aproximadamente 10 y 14, respectivamente,


lo cual es conforme a los resultados de summary(Pa1). Las lineas verticales
punteadas representan los datos que estan fuera del rango entre el primer y
tercer cuartl, pero que no se consideran atpicos. Dichas lneas se conocen
como bigotes, y estan delimitadas por sendas lneas horizontales. Fuera de este
rango se indican mediante pequenos crculos los valores atpicos. Observese
que, como habamos concluido antes, hay una sola observacion atpica de
Pa1 y esta se ubica en 5. Otra caracterstica de la data que se puede leer en
esta grafica es que el conjunto de observaciones por debajo de la mediana
(la lnea horizontal dentro de la caja) esta mas disperso que el conjunto de
datos por encima de la mediana, razon por la cual se dice que la variable Pa1
muestra un sesgo negativo, hecho consono con el histograma de esta variable,
donde se observa que la mayor parte de los valores estan agrupados hacia la
derecha del histograma. Si ocurriese lo contrario, diramos que Pa1 tiene un
sesgo positivo. Esto naturalmente tiene que ver con la simetra, pues cuando
no se evidencia sesgo negativo o positivo, decimos que la distribucion de la
variable es simetrica.
62 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

3.5. ... y de vuelta nuevamente a la explora-


cion de datos

Ahora que tenemos suficientes herramientas, vamos a aplicarlas a nuestro


caso de estudio para ver que descubrimos. Retomamos el asunto abordando
nuevamente a la variable Pa1. En las secciones anteriores de esta unidad ob-
servamos como la media y la mediana de esta variable difieren un poco, siendo
la media menor que la mediana por la presencia de un valor moderadamente
atipico en el extremo bajo (el promedio del primer ano de 5)14 .Tanto el his-
tograma de la figura 3.2 como el diagrama de cajas de la figura 3.9 indican
que hay mayor dispersion de datos en las notas menores a la media/mediana
que en las notas mas altas. En el enunciado de este caso de estudio solo se
indica que el mismo esta motivado por el bajo rendimiento academico de
los estudiantes. Una informacion que desconocemos, por ejemplo, es si la
universidad aplica algun tipo de regimen de permanencia de los estudian-
tes, donde aquellos estudiantes con un ndice academico menor a cierto valor
crtico son sancionados mediante suspension o hasta expulsion. Supongamos
que ese es el caso y que el ndice mnimo de permanencia es de 12 puntos.
En tal caso, la proporcion de estudiantes del primer ano de la carrera a ser
sancionados sera dada por:

> sum(Pa1 < 12)/length(Pa1)

[1] 0.4297521

Tras el primer ano, un poco mas del 40 % de los estudiantes seran penados
segun el regimen de permanencia. Esto es altamente preocupante, pues incide
muy negativamente sobre la motivacion de los nuevos ingresos y seguramente
restringe la cantidad de egresados de esas carreras en cada semestre. Fuera
de este tipo de consideraciones, por ahora el estudio descriptivo de la variable
Pa1 en s misma no arroja mas informacion- para obtenerla debemos estudiar
como interactuan las variables entre s y sobre todo, como se relaciona la
variable Pa1 con las demas. Comencemos por preguntarnos cuales variables
14 Sobre
la observacion asociada a este valor atpico volveremnos mas tarde cuando ten-
gamos mas elementos de analisis.
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS63

podran tener un efecto (positivo o negativo) sobre el promedio academico


del primer ano:

Las variables socioeconomicas del estudiante cuyos indicadores en este


caso son Ingr y C (ingresos familiares y tipo de colegio, publico o pri-
vado, donde curso el bachillerato, respectivamente). Es el alto ingreso
familiar un factor determinante para el exito academico en el primer
ano de la carrera? Son los estudiantes egresados de colegios privados
mejor preparados para proseguir con los estudios de tercer nivel en esta
universidad?

Las variables demograficas del estudiante dadas por el sexo (S), la edad
(Ed) y el lugar de origen (O - si es o no del interior del pas). Son los
estudiantes de mayor edad, que en cierto grado esta relacionada con
la madurez, mejor dispuestos para los estudios universitarios? O por el
contrario, es la juventud una condicion mas favorable? Existe algun
tipo de sesgo o discriminacion por genero en estas carreras universita-
rias? Es el lugar de origen un factor determinante? - el provenir del
interior y tener que ocupar una residencia estudiantil lejos de su familia
pudiese afectar negativamente el promedio de notas del estudiante.

Otras variables academicas no directamente relacionadas con Pa1, re-


presentadas aqu por Nota - la nota obtenida en el examen de ingreso
de la facultad y por E - la escuela de la facultad a la que esta adscrito
el estudiante. Es la nota en el examen de ingresos un buen predic-
tor del exito academico en el primer ano? Tienen los estudiantes de
computacion de mayor promedio de notas que los estudiantes de mate-
maticas?

En la actualidad se habla mucho de la exclusion social en la educacion


universitaria en nuestro pas, lo cual pareciera paradojico en un pas donde
hay muchas universidades publicas. En el caso que nos ocupa, comenzamos
nuestro analisis exploratorio haciendo un resumen y un histograma del indi-
cador de ingresos familiares:
En la figura 3.10 observamos algo curioso - el histograma de los ingresos
familiares presenta dos picos (es bimodal). Esto podra sugerir que hay dos
tipos de estudiantes, en cuanto al nivel de ingresos familiares bajo o alto
64 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> summary(Ingr)

Min. 1st Qu. Median Mean 3rd Qu. Max.


1200 2500 5400 4770 6400 8400

> hist(Ingr)

Figura 3.10: Histograma de frecuencias la variable Ingr

de cada uno. Expresandolo de una manera mas tecnica - parece que tenemos
estudiantes de dos subpoblaciones en la muestra, cada subpoblacion con unas
caractersticas marcadas en cuanto al ingreso familiar. De manera intuitiva (y
un tanto arbitraria) establecemos el siguiente criterio para discriminar entre
las dos subpoblaciones: consideraremos ingresos bajos a aquellos inferiores a
3000 e ingresos altos aquellos superiores a 3000. Observando en el histograma
que el primer pico se presenta en la segunda clase (cuyo lmite superior es
3000) y que la tercera clase tiene una frecuencia menor que la segunda la
fundamentacion de dicho criterio.
Procedemos ahora a crear una nueva variable tipo factor que indique si el
respectivo estudiante es de bajo o alto ingreso familiar (ver codigo y grafica
en la figura 3.11). La primera lnea del codigo anterior produce una nueva
variable tipo factor correspondiente al tipo de ingreso familiar. Para ello, la
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS65

> ingreso <- factor(ifelse(Ingr <= 3000, "bajo", "alto"))


> tapply(Pa1, ingreso, summary)

$alto
Min. 1st Qu. Median Mean 3rd Qu. Max.
6.20 10.46 12.43 12.07 13.94 17.43

$bajo
Min. 1st Qu. Median Mean 3rd Qu. Max.
5.00 10.34 12.84 12.37 14.64 17.88

> boxplot(Pa1 ~ ingreso, ylab = "Promedio del 1er a~


no",
+ xlab = "Nivel de ingresos")

Figura 3.11: Diagrama de cajas para la variable Pa1, discriminada segun el


ingreso familiar del estudiante

expresion ifelse(. . .) dentro de factor devuelve un vector tan grande co-


mo el vector numerico Ingr indicando mediante cadenas de caracteres si el
ingreso familiar es bajo (se cumple la condicion Ingr3000) o alto en caso
contrario. La segunda lnea aplica la funcion summary ya vista anteriormente
a la variable Pa1, segun el tipo de ingreso familiar. La tercera lnea de co-
digo ilustra otro uso de la funcion boxplot: se producen dos diagramas de
66 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

caja para la variable Pa1, uno al lado del otro, discriminando los valores de
dicha variable segun corresponden a estudiantes de ingresos bajos o altos,
produciendo la grafica de la figura 3.11.
Curiosamente, y al contrario de lo que suponamos al principio, los es-
tudiantes de bajos ingresos tienen un promedio y una mediana de notas del
primer ano un poquito mas altas que los estudiantes de altos ingresos. Cuan
significativa es la diferencia entre las medias de Pa1 para cada uno de los dos
grupos de ingresos es algo que no podemos establecer aun. En todo caso, la
evidencia emprica parece sugerir que no es cierto que los estudiantes de ma-
yores ingresos familiares sean los que tengan mayor promedio de notas en el
primer ano de la carrera. Otra caracterstica interesante es que los estudian-
tes de bajos ingresos tienen mayor dispersion de la variable Pa1; inclusive, el
promedios de notas mas alto y el mas bajo corresponden ambos a estudiantes
de bajos ingresos. Otro elemento de interes para el analisis es el siguiente:

> sum(Ingr <= 3000)

[1] 38

Apenas 38 de los 121 estudiantes de la muestra son de bajos ingresos-


es decir, por cada estudiante de bajos ingresos hay aproximadamente 3 de
altos ingresos. Claramente, en el ambito nacional esta relacion se invierte- en
nuestro pas son mas numerosas las personas de bajos ingresos. Sin embargo,
aparentemente los estudiantes de bajos ingresos obtienen, en promedio, cali-
ficaciones levemente mas altas que los de altos ingresos, lo cual sugiere que
el tener bajos ingresos familiares no es un factor adverso al buen desempeno
academico en esa universidad. Porque entonces son relativamente escasos
los estudiantes de bajos recursos economicos en esa universidad? Sera la
causa de ello el mecanismo de admision aplicado (la prueba interna)? Sera
que los estudiantes de bajos recursos economicos tienen la sensacion de que
la universidad no es para ellos y sencillamente no aspiran a ingresar a ella,
aun cuando la evidencia emprica demuestra que su bajo nivel de ingresos no
representa una desventaja en su desempeno academico? Desgraciadamente,
no tenemos a la mano suficiente data para dilucidar esta ultima interrogante.
No obstante, podemos construir un diagrama de cajas similar al anterior para
ver la relacion entre las notas del examen de admision de los estudiantes de
bajos y altos recursos economicos (figura 3.12):
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS67

> boxplot(Nota ~ ingreso, ylab = "Nota en examen de admision",


+ xlab = "Nivel de ingresos")

Figura 3.12: Diagrama de cajas para la variable Nota, discriminada segun el


ingreso familiar del estudiante

Segun este diagrama de cajas, los estudiantes de menores ingresos eco-


nomicos aparentemente obtuvieron menor puntuacion en el examen de ad-
mision, lo cual parece apoyar la hipotesis de que el examen de admision s
discrimina segun la condicion socioeconomica del aspirante. Debemos ser cau-
telosos en este punto, y por eso nos cuidamos de matizar estas afirmaciones
mediante el uso de palabras como aparentemente o parece: sera solamente
mediante la inferencia estadstica que podremos falsear estas afirmaciones, o
justificar que las sigamos manteniendo. En el ambito de la estadstica des-
criptiva, todo queda en especulacion.
Y que hay con el tipo de institucion, publica o privada, donde el estu-
diante curso sus estudios de bachillerato? Influye esto sobre la variable Pa1?
Abordamos esta pregunta de una manera indirecta, como se muestra en la
figura 3.13. Esta grafica comparativa revela una relacion muy marcada entre
el ingreso familiar y el tipo de institucion donde el estudiante curso el bachi-
llerato: los valores de ambas subpoblaciones ni siquiera de intersectan. Como
podemos asumir, para efectos practicos, que un estudiante de altos ingresos
proviene de un colegio privado, las conclusiones con respecto a la relacion
68 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> boxplot(Ingr ~ factor(C, labels = c("privado", "publico")),


+ ylab = "Ingreso familiar", xlab = "Tipo de colegio")

Figura 3.13: Diagrama de cajas para la variable Ingr, discriminada segun el


tipo de institucion donde el estudiante curso el bachillerato

entre la variable C y las variables Pa1 y Nota son similares a lo expuesto


arriba (se invita al estudiante a verificar esto).
Seguidamente, abordamos el estudio de la relacion entre las variables de-
mograficas (edad, sexo y lugar de procedencia del estudiante) y su rendimien-
to academico en la universidad. Comenzamos por inspeccionar la variable de
la edad (Ed, ver figura 3.14). Claramente esta variable no tiene una distri-
bucion simetrica; es mas bien sesgada positiva, lo cual quiere decir que las
edades de las personas menores no difieren mucho entre s, pero las edades de
las personas mayores son mas dispersas. Segun el resumen presentado por el
codigo de arriba, la mediana de la edad es 17. Tomaremos ese valor para dis-
criminar la muestra en dos categoras: los menores de 17 anos y los mayores
de 17 anos. Dividiendo as la muestra, generamos una grafica comparativa de
diagramas de caja para cada grupo y observamos la relacion que presentan
ambos grupos con respecto al promedio de notas del primer ano (ver figura
3.15).
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS69

> summary(Ed)

Min. 1st Qu. Median Mean 3rd Qu. Max.


15.00 17.00 17.00 17.84 18.00 26.00

> hist(Ed)

Figura 3.14: Histograma de la variable Ed

Segun la grafica de la figura 3.15, las personas de mayor edad tienen


promedios de notas menores. La diferencia es mas o menos marcada, pues
la mediana de los promedios de notas de los estudiantes de mayor edad es
aproximadamente 2 puntos menor que la de los promedios de los estudiantes
mas jovenes. Ademas, los promedios de notas mnimos y maximos para cada
grupo son ambos mayores para el grupo de estudiantes mas jovenes. Una
vez mas, en este punto no estamos en condiciones de afirmar si esta diferen-
cia es significativa, pero lo que estamos observando nos sugiere la siguiente
pregunta: Si los estudiantes de mayor edad tienen un menor rendimiento
academico, se debe esto a que generalmente las personas mayores trabajan
tambien? Desafortunadamente, no tenemos suficiente data para investigar
sobre esto.
70 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> grupo_edad <- factor(ifelse(Ed <= 17, "menores",


+ "mayores"))
> boxplot(Pa1 ~ grupo_edad, ylab = "Promedio del 1er a~
no",
+ xlab = "Grupo de edad")

Figura 3.15: Diagrama de cajas para la variable Pa1, discriminada segun la


edad

Seguidamente, abordamos la relacion entre el genero del estudiante y su


rendimiento academico en el primer ano (ver figura 3.16). En base a una
comparacion de las medianas en ambos diagramas de cajas, aparentemente
las estudiantes de sexo femenino tienen un mejor rendimiento academico
en la universidad, aun cuando esta diferencia no es tan marcada. Tambien
tenemos que agregar que tanto el menor como el mayor de los promedios se
corresponden ambos a estudiantes de sexo masculino, de lo cual resulta como
corolario que la variabilidad de los promedios de las hembras es menor que
la del promedio de los varones. Habra que verificar si la diferencia entre las
tendencias centrales es significativa.
Continuamos nuestro analisis con la comparacion del rendimiento acade-
mico para los estudiantes provenientes del interior del pas y los que viven
en la capital (ver figura 3.17). Esta grafica es similar a la grafica comparati-
va rendimiento academico/sexo- aparentemente, los estudiantes de la capital
tienen un mejor rendimiento academico que aquellos del interior del pas.
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS71

> boxplot(Pa1 ~ factor(S, labels = c("Masculino", "Femenino")),


+ ylab = "Promedio del 1er a~
no", xlab = "Sexo")

Figura 3.16: Diagrama de cajas para la variable Pa1, discriminada segun el


sexo

Con la unica excepcion de que la diferencia entre los grupos es mas marcada
(la mediana del promedio de notas de los estudiantes del interior y la de los
estudiantes de la capital difieren en poco menos de 2 puntos), los mismos
comentarios sobre la grafica anterior aplican en este caso.
Abordamos por ultimo la relacion entre el rendimiento academico y las
otras variables academicas. Comenzaremos por explorar la relacion entre las
notas del examen de ingreso y el promedio academico. Como hemos hecho
con las otras variables no categoricas (Ingr y Ed), creamos una nueva varia-
ble tipo factor (categorica) para dividir a los estudiantes en dos grupos- los
de baja y alta puntuacion en el examen de ingreso. La grafica comparativa
resultante se muestra en la figura 3.18. La comparacion de los promedios
de los estudiantes de la escuela de Matematicas y de Computacion produce
una grafica similar en muchas caractersticas a esta, por la cual no la inclui-
remos aqu; unicamente nos limitamos a observar que los valores maximos
y mnimos de los estudiantes de Matematica parece desplazado hacia arriba
respecto a los valores maximos y mnimos de los estudiantes de Computacion
y sin embargo, la mediana de los promedios del grupo de Computacion su-
72 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

> boxplot(Pa1 ~ factor(O, labels = c("Interior", "Capital")),


+ ylab = "Promedio del 1er a~
no", xlab = "Lugar de origen")

Figura 3.17: Diagrama de cajas para la variable Pa1, discriminada segun el


lugar del origen

pera la mediana del grupo de Matematicas. Hasta aqu los resultados del
analisis exploratorio- continuamos con la discusion de los mismos y algunas
conclusiones provisionales.
En esta unidad hemos abordado el caso de estudio tratando de dilucidar
sobre las relaciones entre las variables, valiendonos para ello de las herramien-
tas que ofrece la estadstica descriptiva. Especficamente, hemos utilizado los
diagramas de cajas comparativos para detectar diferencias entre las media-
nas y los valores maximos y mnimos de una variable tomada a traves de dos
categoras de la otra variable, la cual, tomando prestado la terminologa del
Analisis de Varianza, denominamos aqu variable factor, siendo los distintos
niveles o categoras de esa variable factor los tratamientos. En fin, explora-
mos en que manera afectan los distintos factores a la variable del rendimiento
academico. Para ello, nos hemos basado en la comparacion, mediante los dia-
gramas de caja pareados, de los valores mnimos y maximos, senalados por
las lineas horizontales al final de los bigotes, y de la mediana para los dos
tratamientos de la variable factor. Basicamente, hemos comparado los diagra-
mas de cajas pareados para establecer cual de ellos tiene todos sus elementos
3.5. ... Y DE VUELTA NUEVAMENTE A LA EXPLORACION DE DATOS73

> summary(Nota)

Min. 1st Qu. Median Mean 3rd Qu. Max.


10.93 12.21 13.29 13.69 14.95 18.67

> grupo_admision <- factor(ifelse(Nota <= 13.5, "baja",


+ "alta"))
> boxplot(Pa1 ~ grupo_admision, ylab = "Promedio del 1er a~
no",
+ xlab = "Nota en examen de admision")

Figura 3.18: Diagrama de cajas para la variable Pa1, discriminada segun la


nota en el examen de admision

por arriba del otro diagrama de cajas.


Pero, es correcto este proceder? Que ocurre si el valor mnimo y el valor
maximo de la variable para un tratamiento son ambos mayores que para el
otro tratamiento, pero la mediana del primer tratamiento es menor que la
del segundo? Que ocurre cuando no todos los parametros principales de
un grupo (mnimo, maximo, mediana, primer y tercer cuartl) son mayores
que los correspondientes parametros principales del otro grupo? Si hemos de
considerar principalmente las diferencias entre las medianas, cuan grande
ha de ser la diferencia entre las medianas para considerar que un grupo
(tratamiento) domina, en lo que respecta a la tendencia central, al otro grupo?
74 UNIDAD 3. ESTADISTICA DESCRIPTIVA UNIVARIANTE

Y que ocurre cuando un factor no es de escala nominal?


Esta ultima pregunta merece varios comentarios. En lo que antecede, he-
mos creado, a partir de variables no categoricas como la edad, los ingresos
familiares y las notas en el examen de admision, nuevos factores con dos tra-
tamientos (ingresos menores o mayores que 3000, los menores o mayores de
17 anos, etc.). Sin embargo, tenemos que admitir que estas categorizacio-
nes son algo arbitrarias y no estan justificadas en otra cosa que la intuicion
que gua el analisis exploratorio. En el caso de los ingresos, el valor de 3000
parece ser la lnea divisoria entre los estudiantes de bajos y altos ingresos,
pues as lo hemos intuido viendo el histograma de frecuencias bimodal (figura
3.10). En el caso de las notas en el examen de admision y en el de las edades,
el valor umbral que separa a una clase de otra es proximo a la tendencia cen-
tral de la distribucion, pues as obtendramos convenientemente dos clases de
igual tamano. Pero, que ocurrira si escogemos valores umbrales diferentes
para estos factores? Hubiesemos obtenido resultados distintos al interpre-
tar las graficas comparativas? Y porque no dividir estos factores en tres o
mas tratamientos? Por ejemplo, supongase que consideramos tres niveles de
ingresos: bajo, mediano y alto. Que pasara si las medianas de cada uno de
estos tratamientos no siguen una tendencia netamente ascendente o descen-
dente (e.g. la mediana de los promedios de estudiantes con ingresos bajos
es menor que la mediana de promedios de aquellos estudiantes con nivel de
ingresos medio, pero esta ultima es mayor que la mediana de promedios de
los estudiantes de altos ingresos)?
No obstante todas estas objeciones, hemos hecho bastante consideran-
do las limitadas herramientas de la estadstica descriptiva que tenemos a la
mano. Con todo, los datos han comenzado a hablar.

3.6. Problemas propuestos

(Por elaborar)
Apendice A

Tabla de datos

N E Nota Us1 Us2 Ingr C O S Ed Psm1 Psm2 Pa1 Ua1


1 1 12,66 80 55 2200 1 1 0 16 13 7,25 9,71 67
2 1 13,58 20 55 5800 0 1 0 19 9,5 7,67 8,4 38
3 1 13,49 20 27 2300 1 1 0 18 6,5 6,33 6,4 24
4 1 16,21 50 27 1700 1 1 0 20 13,33 15 13,75 38
5 1 18,42 80 27 6000 0 1 0 25 13 8,5 10,75 52
6 1 18,01 100 100 2500 1 1 0 15 18,25 17,5 17,88 100
7 1 14,87 50 0 1700 1 1 1 17 11 7 9,67 24
8 1 15,52 80 95 1900 1 1 0 17 14 12,25 13 88
9 1 16,37 70 45 7300 0 1 0 20 14,33 10,33 12,33 57
10 1 14,6 50 0 2300 1 1 0 17 8,33 4,66 6,5 24
11 1 13,97 80 77 5000 0 1 1 17 12,67 8 7 79
12 1 13,87 70 73 2100 1 0 0 18 13 15,75 14,57 71
13 1 13,27 100 95 4900 0 1 0 18 14,5 13,67 14,14 98
14 1 17,75 60 64 1600 1 0 0 26 15,5 15,67 15,6 62
15 1 12,77 50 27 4900 0 0 0 17 12 7,5 9 38
16 1 15,04 80 0 6500 0 1 0 17 11,33 3 9,25 38
17 1 13,48 50 0 6000 0 1 0 19 9,67 5 7,75 24
18 1 13,03 80 73 6500 0 1 0 17 15,33 14,67 15 76
19 1 13,81 80 55 4300 0 1 0 17 12,5 10,5 11,17 67
20 1 15,69 70 45 2800 1 0 0 19 12 12,33 12,2 57

75
76 APENDICE A. TABLA DE DATOS

N E Nota Us1 Us2 Ingr C O S Ed Psm1 Psm2 Pa1 Ua1


21 1 16,33 30 18 6000 0 1 0 19 8,5 7 7,5 24
22 1 14,13 80 95 5400 0 1 0 18 14,33 13 13,57 88
23 1 14,41 100 95 2200 1 1 0 17 14,75 11,5 13,13 98
24 1 16,39 30 55 6900 0 1 0 18 7 9,25 8,13 43
25 1 13,29 100 100 7000 0 1 1 16 15,25 14,25 14,75 100
26 1 13,85 100 100 6300 0 1 0 16 13 11,25 12,13 100
27 1 12,36 50 27 6300 0 1 1 18 13,5 7,5 10,5 38
28 1 16,19 100 73 4800 0 1 0 20 13,5 9,5 11,5 86
29 1 13,32 100 100 2200 1 1 0 17 16 13,5 14,75 100
30 1 13,35 80 91 6600 0 1 0 17 11 15,5 13,25 86
31 1 12,67 50 82 5000 0 1 0 16 7,75 11,5 9,63 67
32 1 14,13 100 100 6000 0 1 0 17 14,5 13,5 14 100
33 1 12,97 80 73 5300 0 1 0 17 13,67 12,67 13,17 76
34 1 17,18 50 100 5500 0 1 1 18 12,33 11,75 12 76
35 1 12,87 80 55 5200 0 1 0 18 13 8,75 10,57 67
36 1 18,67 80 95 5400 0 1 0 20 10,5 12 11,25 88
37 1 16,29 80 73 5500 0 1 1 21 11,67 11 11,28 76
38 1 18,32 100 59 1700 1 1 1 21 13,75 8,75 11,25 79
39 1 13,07 100 77 6700 0 1 1 17 13 12,67 12,86 88
40 1 13,59 50 73 7300 0 1 0 17 10 7 8,8 62
41 1 13,55 100 100 6400 0 0 0 18 15,5 13,75 14,63 100
42 1 13,3 80 55 2400 1 1 1 17 14 10,75 12,14 67
43 1 12,77 100 82 7600 0 1 1 18 14,25 10,75 12,5 90
44 1 12,53 100 100 6800 0 1 1 16 14,5 13,25 13,88 100
45 1 15,6 50 100 5900 0 1 0 18 14 12,75 13,17 76
46 1 14,87 50 82 6100 0 0 0 17 10 12 11 67
47 1 13,87 80 73 5600 0 1 0 17 13 10 11,5 76
48 1 15,41 60 91 4900 0 1 0 16 12,67 13,33 13 76
49 1 15,46 80 100 3300 1 1 0 20 12,33 12,5 12,43 90
50 1 18,25 100 100 6500 0 0 0 23 17,75 16,75 17,25 100
51 1 17,58 100 100 6000 0 1 1 18 17,25 16,75 17 100
52 1 13,79 80 95 5000 0 1 0 18 15 13,25 14 88
53 1 12,38 80 73 7400 0 1 0 17 14 12,33 13,17 76
54 1 13,52 50 82 6100 0 1 0 18 13,5 10,75 11,67 67
55 1 17,04 50 27 5700 0 0 1 18 10,5 10 10,33 38
56 1 15,59 100 100 5700 0 1 0 22 16,25 13 14,63 100
57 1 16,58 100 100 7300 0 1 0 20 15,5 11,75 13,63 100
77

N E Nota Us1 Us2 Ingr C O S Ed Psm1 Psm2 Pa1 Ua1


58 1 13,32 50 0 6400 0 1 0 18 9 2 6,2 24
59 1 15,56 50 27 6800 0 1 0 18 13 6,33 9 38
60 1 16,23 50 100 5100 0 1 1 17 10,67 13,25 12,83 76
61 1 17,51 30 55 5800 0 1 0 19 10 10,75 10,43 43
62 1 14,03 100 73 7200 0 0 0 18 12,67 10,33 11,5 86
63 1 14,95 80 91 5900 0 1 1 17 15,67 15 15,33 86
64 1 16,53 100 100 2000 1 1 0 20 13,75 13,25 13,5 100
65 1 14,54 70 0 5000 0 1 0 18 9,75 7 8,57 33
66 1 13,59 50 27 6300 0 1 0 17 9 6,5 8 38
67 0 11,54 71 71 8200 0 1 1 16 15,67 13,76 14,67 71
68 0 12,13 100 43 2400 1 1 0 17 13,25 8 10,5 71
69 0 11,64 43 0 5400 0 1 0 17 11 11 11 21
70 0 12,17 100 57 1200 1 1 0 17 12,75 15,77 14,33 79
71 0 11,36 100 81 3400 1 1 0 17 14 13,73 13,86 90
72 0 15,06 100 71 2600 1 0 1 17 12,25 8,5 10,29 86
73 0 11,27 71 29 2000 1 1 0 23 13 9,18 11 50
74 0 11,41 14 0 1900 1 1 0 23 13 4,67 8,64 7
75 0 11,25 43 0 6600 0 1 0 18 11,67 8,48 10 21
76 0 13,85 100 71 5700 0 1 0 17 12,25 8,91 10,5 86
77 0 11,41 14 86 4000 0 1 1 19 11 10,05 10,5 50
78 0 12,03 43 0 3300 1 1 0 17 10,67 5,96 8,2 21
79 0 10,93 100 0 8400 0 1 1 16 14 14 14 50
80 0 11,49 43 0 5300 0 1 0 18 13,33 13,33 13,33 21
81 0 11,4 100 29 5600 0 1 1 17 12,75 10,36 11,5 64
82 0 12,49 100 0 6700 0 1 0 18 12,5 12,5 12,5 50
83 0 11,23 100 0 7000 0 1 0 17 11,25 8,86 10 50
84 0 12,21 57 0 5900 0 1 0 22 14 1,91 7,67 29
85 0 12,64 57 0 1900 1 1 0 19 6,5 7,77 7,17 29
86 0 11,73 43 57 1700 1 1 0 16 12,5 6,58 9,4 50
87 0 11,4 43 57 6500 0 1 0 16 16,33 15,7 16 50
88 0 13,92 100 0 2900 1 0 0 18 17,25 17,25 17,25 50
89 0 12,14 100 95 2400 1 1 0 19 14 12,33 13,13 98
90 0 12,81 71 0 5600 0 1 1 17 14,33 14,33 14,33 36
91 0 12,95 100 71 6700 0 1 0 17 12,25 12,86 12,57 86
92 0 11,23 43 86 2100 1 1 0 17 11,5 10,55 11 64
93 0 13,15 100 52 5700 0 1 0 16 14,25 12,37 13,27 76
94 0 12,77 71 71 1900 1 1 0 17 15 10,23 12,5 71
78 APENDICE A. TABLA DE DATOS

N E Nota Us1 Us2 Ingr C O S Ed Psm1 Psm2 Pa1 Ua1


95 0 11,87 100 71 5300 0 1 0 19 13,5 8,73 11 86
96 0 15,02 100 95 5000 0 1 1 16 16,75 17,7 17,25 98
97 0 11,5 100 81 8200 0 1 0 17 14,75 14,41 14,57 90
98 0 11,64 71 0 2200 1 1 0 18 14,67 14,67 14,67 36
99 0 15,73 71 0 2700 1 1 0 16 16 16 16 36
100 0 11,25 100 57 6500 0 1 0 17 13 13,95 13,5 79
101 0 12,82 100 57 6700 0 1 0 17 14,5 14,5 14,5 79
102 0 13,27 100 81 3000 1 1 0 17 16,75 16,68 16,71 90
103 0 12,82 100 71 5300 0 1 0 17 16,5 18,27 17,43 86
104 0 11,54 100 43 2000 1 1 1 19 14,33 11,52 12,86 71
105 0 12,4 100 81 5800 0 1 0 16 13 15,54 14,33 90
106 0 13,16 57 0 7300 0 1 0 17 10,33 7,31 8,75 29
107 0 11,87 100 57 2100 1 1 0 18 12,75 12,91 12,83 79
108 0 12,03 100 0 7300 0 1 0 17 13,75 13,75 13,75 50
109 0 12,18 100 95 2800 1 1 1 17 17,5 17,26 17,38 98
110 0 12,79 100 81 6200 0 1 1 16 12,75 12,75 12,75 90
111 0 12,65 100 0 4200 0 1 1 16 12,25 12,25 12,25 50
112 0 11,47 100 57 2900 1 1 1 16 14,75 16,18 15,5 79
113 0 12,25 71 0 1800 1 0 0 19 13 6,51 9,6 36
114 0 11,07 100 0 5500 0 1 1 17 13,75 13,75 13,75 50
115 0 11,43 29 0 2200 1 1 0 19 5 5 5 14
116 0 14,89 100 95 7300 0 1 1 17 15,75 15,99 15,88 98
117 0 11,84 100 43 1300 1 1 0 17 14,5 12,46 13,43 71
118 0 12,88 14 0 6900 0 0 0 17 8,67 8,67 8,67 7
119 0 12,75 71 57 1900 1 1 0 17 12 10,09 11 64
120 0 12,54 71 57 5300 0 1 0 16 14,33 13,7 14 64
121 0 13,58 100 95 1700 1 1 0 16 16 15,76 15,88 98
Bibliografa

[1] Understanding Pie Charts. Disponible en: http://eagereyes.org/


techniques/pie-charts.

[2] Canavos, G.: Probabilidad y Estadstica - Aplicaciones y metodos.


McGraw-Hill Interamericana de Mexico, S.A. de C.V., Mexico, 1988.

[3] Carey P. Berk, K. : Analisis de datos con Microsoft Excel. Thomson


Learning, Bogota, 2001.

[4] Crawley, M. J.: Statistical Computing. An Introduction to Data Analysis


Using S-PLUS. Wiley, 2002.

[5] Grosjean, Philippe: R GUI Projects - Type of GUIs. Disponible en:


http://www.sciviews.org/_rgui/rgui/GUIs.html, 2004.

[6] Ihaka, R.: Statistics 787 - Topic in Computational Data Analysis and
Graphics. Disponible en: http://www.stat.auckland.ac.nz/~ihaka/
787/lectures-presentation-graphics-handouts.pdf, 2007.

[7] Kelmansky, D.: Curso de Analisis de Datos - Histogramas. Diagra-


mas Tallo-Hoja. Disponible en: http://www.dm.uba.ar/materias/
analisis_de_datos/2006/1/teoricas/Teor2.pdf, 2006.

[8] R Development Core Team: R: A Language and Environment for Statisti-


cal Computing. R Foundation for Statistical Computing, Vienna, Austria,
2008. http://www.R-project.org, ISBN 3-900051-07-0.

[9] Siegel, S.: Estadstica no parametrica aplicada a las ciencias de la con-


ducta. Editorial Trillas, Mexico, spanishsecond edicion, 1974.

79

Vous aimerez peut-être aussi