Está en la página 1de 555

© Copyright 2021 Todos los derechos reservados.

El contenido de este libro no puede ser reproducido, duplicado o transmitido sin el permiso por
escrito del autor o el editor.
Bajo ninguna circunstancia se culpará o se responsabilizará legalmente al editor o al autor por daños,
reparaciones o pérdidas monetarias debidas a la información contenida en este libro. Ya sea directa o
indirectamente.
Aviso Legal:
Este libro está protegido por derechos de autor. Este libro es solo para uso personal. No puede
enmendar, distribuir, vender, usar, citar o parafrasear ninguna parte o el contenido de este libro, sin el
consentimiento del autor o editor.
Aviso de exención de responsabilidad:
Tenga en cuenta que la información contenida en este documento es solo para fines educativos y de
entretenimiento. Se han realizado todos los esfuerzos para presentar información precisa, actualizada
y confiable. Ninguna garantía de ningún tipo está declarada o implícita. Los lectores reconocen que
el autor no participa en la prestación de asesoramiento legal, financiero, médico o profesional. El
contenido de este libro ha sido derivado de varias fuentes. Consulte a un profesional con licencia
antes de intentar cualquier técnica descrita en este libro.
Al leer este documento, el lector acepta que bajo ninguna circunstancia el autor es responsable de
cualquier pérdida, directa o indirecta, en que se incurra como resulta-do del uso de la información
contenida en este documento, incluidos, entre otros, los errores, omisiones, o inexactitudes.
Tabla de Contenidos

IBM SPSS
Guía Completa Para Principiantes Aprende
Estadísticas Utilizando IBM SPSS De la A-Z
Introducción
Capítulo 1: ¿Por Qué Usar IBM SPSS?
Historia
Haciendo el caso para IBM SPSS
En el siguiente capítulo ...
Capítulo 2: Instalación de IBM SPSS v.25
Tutorial de instalación de IBM SPSS
Nuestro primer vistazo a IBM SPSS
La página de bienvenida de SPSS
En el siguiente capítulo ...
Capítulo 3: Acerca de los datos
¿Por qué realizar análisis de datos?
Problema 1: Venta al por menor
Problema 2: salud
Problema 3: Finanzas
Datos, definición
Tipos de datos legibles por máquina
Datos ordenados y desordenados
¿Existe un proceso para el análisis de datos?
Una Nota Sobre Los Métodos De Investigación
La Importancia De Los Datos De Limpieza Para El Análisis
En el siguiente capítulo ...
Capítulo 4: El Editor De Datos De SPSS
Abrir un nuevo conjunto de datos en SPSS
Ingresando datos en SPSS
La lista de variables en SPSS
Medida
Nombre
Etiqueta
Tipo
El panel de información general de datos
Abrir múltiples pestañas en SPSS
Buscar artículos
Ajustes y notificaciones
Nuevo análisis
Otras funciones útiles de la pestaña
En el siguiente capítulo ...
Capítulo 5: Introducción A La Estadística
Una definición de estadística
Ir tarde al trabajo: un estudio estadístico breve
Entonces, ¿cómo lo hacemos a tiempo, ya sea que nos vayamos
temprano o no?
Estadísticas descriptivas
Todas estas son preguntas excelentes que vale la pena abordar una por
una.
Estadística inferencial
En el siguiente capítulo ...
Capítulo 6: Los Menús Del Editor De Datos De SPSS
El menú de archivos
El menú de datos
El menú Transformar
El menú Analizar
El menú de visualización
El menú de utilidades
Acceso rápido a funciones importantes
Otro caso y funcionalidad de menú variable
En el siguiente capítulo ...
Capítulo 7: Estadísticas descriptivas
Aplicaciones comunes de estadística descriptiva
Examinando conjuntos de datos y su distribución
¿Por qué deberíamos saber esto?
¿Qué miden las estadísticas descriptivas?
Medidas de tendencia central
Medidas de forma
La importancia de usar gráficos
Presentación de estadísticas descriptivas utilizando tablas y gráficos
En el siguiente capítulo ...
Capítulo 8: Cálculo de estadísticas descriptivas utilizando SPSS
Frecuencia
Medidas de tendencia central
Mediana
Medidas de propagación
Medidas de forma o distribución
Asimetria
Uso de la sección de resúmenes de casos en informes
En el siguiente capítulo ...
Capítulo 9: Creación De Gráficos En SPSS
Gráficos comunes disponibles en SPSS
Otras cartas disponibles en SPSS
En el siguiente capítulo ...
Capítulo 10: Introducción A La Estadística Inferencial
Muestra, Población y Muestreo Aleatorio
El teorema del límite central
Distribuciones de probabilidad
Enfoques utilizados en estadística inferencial
En el siguiente capítulo ...
Capítulo 11: Uso De SPSS Para Estadísticas Inferenciales
Estimación
Prueba de hipótesis
Otras características de SPSS disponibles en estadísticas inferenciales
En el siguiente capítulo ...
Capítulo 12: Uso de los comandos de sintaxis de SPSS
Creación y uso de archivos de comandos de sintaxis
Para concluir
Pensamientos finales
Pensamientos finales
Bibliografía
Textos Académicos
Fuentes en linea
Imagenes

IBM SPSS
Consejos y Trucos para Aprender y Estudiar
Estadística con IBM SPSS desde la A hasta la Z
Introducción
Capítulo Uno: Trabajo Preliminar
Capítulo Dos: Los Fundamentos de IBM SPSS
Capítulo Tres: El Registro de Datos de Ejemplo
Capítulo Cuatro: Definición de Datos
Capítulo Cinco: Análisis en SPSS Statistics (Procedimientos)
Capítulo Seis: Modificación de los Datos
Capítulo Siete: Selección de Datos
Capítulo Ocho: Gráficos en SPSS Statistics para Windows
Capítulo Nueve: Elaboración de la Matriz de Datos
Capítulo Diez: Análisis Estadístico
Conclusión

IBM SPSS
Estrategias Sencillas y Eficaces para Dominar
la Estadística con IBM SPSS desde la A hasta la Z
Introducción
Capítulo 1: Los Fundamentos de Python con SPSS
Reunir lo Esencial
Cómo Empezar con el Módulo de SPSS
Ejecutar el Código en el IDE de Python
Usar el Módulo SPSS Client
Capítulo 2: Familiarizarse con los Comandos de SPSS
Construir una Sintaxis de Comandos
Capturar e Interceptar la Salida
Personalización de la Salida de la Tabla Dinámica
Capítulo 3: Fusión de la Sintaxis de Comandos de SPSS y Bloques de
Programa Junto con el Manejo de Errores
Bloques de Programas Anidados
Manejo de Errores
Capítulo 4: Trabajar con SPSS Para Crear una Interfaz Gráfica de
Usuario
Solicitud de Mensaje Estándar
Crear un Explorador de Archivos
Cuadro de Selección de Variables
Capítulo 5: Información del Diccionario de Conjuntos de Datos
Obtener una Variable de un Conjunto de Datos
Separación Automática de Variables Para el Análisis
Listado de Variables que Tienen un Formato Específico
Verificación de la Presencia de una Variable en un Conjunto de Datos
Poner las Variables Numéricas y de Cadena en Listas Separadas
Capítulo 6: Realización de Diferentes Tareas en los Datos de Casos
La Clase Cursor
Uso de la Clase Cursor para Leer Datos
Uso de la Clase Cursor para Crear Nuevas Variables
Uso la Clase Cursor para Añadir Nuevos Casos al Conjunto de Datos
Contar Valores Distintos en las Variables
Añadir Valores de Percentil de Grupo a un Conjunto de Datos
Creación y Acceso a Múltiples Conjunto de Datos
Capítulo 7: Trabajar con Bloques de Programa de SPSS Usando el
Lenguaje de Programación R
Trabajar con Bloques de Programa R
Reglas de Sintaxis del Lenguaje de Programación R
Lectura de Datos de Casos de IBM SPSS Statistics Usando Bloques de
Programa R
Manejo de los Valores de Fecha-Hora de IBM SPSS Statistics
Escritura de Resultados en un Nuevo Conjunto de Datos de IBM SPSS
Statistics
Especificación de Valores Faltantes para Nuevos Conjuntos de Datos
Especificación de las Etiquetas de los Valores para los Nuevos
Conjuntos de Datos
Especificación de los Atributos de una Variable para Nuevos Conjuntos
de Datos
Conclusión
Referencias
IBM SPSS

Guía Completa Para Principiantes Aprende


Estadísticas Utilizando
IBM SPSS De la A-Z

WALKER SCHMIDT
Introducción

Actualmente vivimos en un mundo donde la información toma vida propia


y se difunde mas rápido que nunca. Para algunas personas, sus vidas
dependen de obtener un flujo constante de información, ya que afecta sus
vidas de la manera más reveladora. La noticia diaria es el ejemplo más
simple de este fenómeno. Es verdaderamente el alma de la sociedad y nos
ayuda a evolucionar hacia personas mejor informadas con cada día que
pasa.

Como se puede decir, la información en su totalidad proviene de nosotros


desde todas las direcciones. Su influencia en los negocios, la política y el
gobierno, la banca, los campos STEM e incluso las ciencias sociales no
puede ser subestimada. Pero su viaje comienza con la recopilación de datos
sin procesar por medio de un experimento o estudio.

De los datos en bruto a la información procesada


Ya sea la tasa de criminalidad de ciertos vecindarios, la cantidad de
accidentes cada mes en un distrito, las ganancias y pérdidas de dicha
compañía cada trimestre, la tabla de posiciones de la Premier League
inglesa, o incluso las posibilidades de que un político gane la elección,
todos Estos puntos de datos nos llevan a sacar conclusiones más amplias
que afectan nuestras vidas aquí y ahora. Dicho esto, los datos también son
útiles en la investigación académica e impactan el tipo de medicamentos
que usamos, los alimentos que comemos, la ropa que usamos y los
automóviles que manejamos. Está literalmente en todas partes.

Los datos nos ayudaron a entender por qué ocurrió la recesión financiera
de 2008

De hecho, se ha vuelto tan esencial para nuestras vidas que el análisis de


datos y la ciencia es ahora un importante campo de estudio que ha
evolucionado por sus propios méritos. Ahora, como la mayoría de los
científicos admitiría, la información que recibimos diariamente depende de
la obtención de datos auténticos. En otras palabras, los datos que se
recopilan, "limpian", analizan e interpretan con precisión. No hace falta
decir que sin un marco sólido para procesar los datos en información,
corremos el riesgo de no poder tomar decisiones beneficiosas en todos los
ámbitos de nuestras vidas.

La Ciencia De Los Datos - el amanecer de una nueva era

Esto se debe a que los datos, por sí solos, no tienen ningún propósito útil.
Nosotros, como investigador, analista o científico, debemos esforzarnos por
darle vida.

Esto comienza con el uso de herramientas confiables y métodos estadísticos


de larga data que pueden ayudarnos a realizar el análisis e interpretación de
los datos de la manera más rápida y precisa posible. Una vez que podamos
lograr este estado ideal de poder aplicar el método estadístico correcto a
dicho problema y obtener resultados con una herramienta poderosa,
estamos en el buen camino para transformar los datos obtenidos en
información confiable.
Las herramientas de análisis de datos no lo son todo; los métodos
estadísticos también importan

Entonces, dónde empezamos


Creo que el primer paso es sumergirnos en un mundo de números y
métodos para procesar estos números. Desarrollar una mentalidad
estadística, como lo llaman. Por supuesto, esto incluye recopilar datos
cuantitativos y cualitativos a través de la creación de experimentos bien
diseñados.

El segundo paso es aprender el uso de ciertas herramientas que nos ayudan


a transformar los datos obtenidos en hallazgos cruciales. Por eso también
veremos SPSS.

El tercero es poder articular y presentar nuestros hallazgos y difundirlos a la


audiencia adecuada, lo que SPSS hace casi sin esfuerzo.
Al igual que SPSS, "Big Blue" ha existido por un tiempo

Dicho esto, al leer el título de este libro, sabrá que esto es exactamente lo
que pretendemos cubrir al analizar tanto el estudio de estadísticas como la
herramienta IBM SPSS. Por supuesto, pretendemos utilizar una variedad de
conjuntos de datos simples que nos pueden ayudar a entender cómo aplicar
conceptos estadísticos, pero también obtendremos algo de práctica con la
herramienta SPSS.

Pero eso no es todo: no solo sabrá cómo usar el SPSS de IBM, sino que
también comprenderá la razón y el contexto en el que estas características
se aplican a cualquier conjunto de datos. Al hacerlo, debería poder usar
estas funciones en cualquier situación, siempre que pueda determinar qué
método estadístico es el más propicio para resolver un determinado
problema.
El logotipo de SPSS, antes de ser adquirido por IBM en 2010

Dada la cantidad de funciones que esta herramienta tiene a su disposición,


es aconsejable comenzar con los conceptos básicos absolutos y construir
gradualmente sobre esta base a medida que pasamos de la estadística
descriptiva a la estadística inferencial. En todo caso, IBM SPSS tiene
características que van mucho más allá del tema de las estadísticas
descriptivas que casi todos los adultos han aprendido en la escuela
secundaria. Entonces, puede imaginar la capacidad que tendrá a su
disposición una vez que haya entendido cómo usar las funciones de esta
herramienta y por qué. Los creadores de este paquete desarrollaron esta
herramienta para ese propósito.

Un archivo de datos vacío en SPSS v. 25


Al decir esto, este libro debe servir como una guía de referencia para
aquellos que desean ir más allá de lo básico y llegar a un territorio que
requiere una comprensión sólida de los conceptos estadísticos avanzados.
Aún así, como principiante, será prudente avanzar con cuidado para que
pueda consolidar su comprensión antes de comenzar a utilizar estos
métodos avanzados.

Finalmente, incluso si el tema es un poco profundo, no sea tan serio que se


olvide de divertirse con la herramienta SPSS y el estudio de estadísticas en
general.
Dicho esto, ¡comencemos a procesar números sin más demora!
Capítulo 1
¿Por Qué Usar IBM SPSS?

Desde que las estadísticas matemáticas se convirtieron en un campo de


estudio, los estadísticos tuvieron que reunir, calcular y presentar sus
hallazgos de investigación manualmente. Las estadísticas han existido
durante siglos, pero lo que aún no se había inventado era un método
mediante el cual todas las tareas, desde la recopilación de datos hasta la
presentación, se ejecutaban rápidamente.

Karl Pearson - El padre de la estadística

Te imaginas cuánto tiempo habría tomado, no solo para recopilar datos,


seleccionar una muestra y analizarla, sino también calcular los resultados
para la presentación.
Claramente, los estadísticos estaban muy conscientes de los impactos de
gran alcance que sus experimentos podrían tener en el desarrollo de la
sociedad en su conjunto. ¿Cuál sería el punto de realizar una investigación
exhaustiva si no tuvieran una herramienta que pudiera ayudarlos a gestionar
grandes cantidades de datos? ¿O incluso ayudarles a calcular los resultados
rápidamente?

Imagínate usando "perforadores de cartas" en el Nuevo Milenios. ¡Menos


mal, no gracias!

Por ejemplo, es difícil imaginar cómo los investigadores recopilaron y


almacenaron información cuando llegó el momento del censo decenal en
los Estados Unidos. Incluso si fuera solo para calcular la población actual
en todo el país.
Historia
No pasaría mucho tiempo antes de que todo esto cambiara. 1968 fue ese
año. Tres estudiantes de la Universidad de Stanford con antecedentes
profesionales muy diferentes reunieron sus talentos para crear el paquete
estadístico para las ciencias sociales. Ahora recordados como Norman H.
Nie, C. Hadlai Hull y Dale H. Bent, quienes desarrollaron SPSS, son
ampliamente reconocidos como pioneros de la idea de que ser capaz de
procesar datos sin procesar en información podría impulsar la toma de
decisiones para beneficiarnos. como un todo.

La génesis de SPSS comienza con estos tres individuos que querían


procesar grandes cantidades de datos de ciencias sociales que se recopilaron
utilizando diferentes métodos de investigación. Si bien Nie ofreció su
experiencia como científico social, Bent desarrolló la estructura del sistema
de archivos SPSS. Hull lo juntó todo al desarrollar el paquete utilizando sus
habilidades de programación.

Hull usó el lenguaje de programación FORTRAN para crear SPSS

No pasaría mucho tiempo antes de que SPSS se convirtiera en una


corporación en 1975 mientras continuaba atendiendo a la clientela a la que
le resultaba fácil portar el código a sus computadoras centrales. Con el
comienzo de la era de la PC, SPSS sería la primera corporación en
comercializar un paquete de software estadístico para MS-DOS y Windows.
Por último, pero no menos importante, SPSS se movería al segmento de
mercado de análisis predictivo.

Como la mayoría de las personas saben, el análisis predictivo lo ayuda a


obtener conocimiento del pasado mediante el análisis de datos que se utiliza
para predecir el futuro y, por lo tanto, mejorar los resultados de varias
maneras. Como se mencionó anteriormente, este segmento se remonta al
objetivo inicial de mejorar la toma de decisiones mediante el análisis
inteligente de datos.

Cuatro tipos de análisis de negocios

Al ver el potencial, IBM decidió adquirir SPSS por un valor de $ 1,2 mil
millones en 2009 y, en octubre de 2010, el paquete de software conocido
comúnmente como SPSS ahora se llamaba IBM SPSS. Ahora es una de las
marcas clave en la cartera de análisis de negocios de IBM.
IBM adquiere SPSS en 2009

Haciendo el caso para IBM SPSS


Dada una gran cantidad de paquetes de software disponibles, uno podría
preguntarse por qué deberían elegir SPSS entre el lote. Por qué no usar el
lenguaje de programación R que ha sido diseñado precisamente para el
análisis estadístico por dos profesores de Nueva Zelanda.
Python y R son lenguajes populares para la ciencia de Datos

¿O incluso MATLAB? ¿O incluso las bibliotecas populares de Python como


NumPy, SciPy, PANDAS y Matplotlib? Incluso hay una versión de código
abierto de SPSS llamada PSPP que funciona como una alternativa gratuita.

¿Por qué no MATLAB?

Si bien cada una de estas ofertas son competidores dignos, se debe agregar
que SPSS es simple de usar. Tiene características para principiantes y
usuarios muy experimentados que no encontrarás en ningún otro lugar. En
otras palabras, ingrese y guarde sus datos, procéselos y genere los
resultados. Mejor aún, puede exportar datos a SPSS desde una variedad de
formatos. Es tan simple como eso.

Un archivo CSV abierto en el Bloc de notas (CSV significa valores


separados por comas)

Mejor aún, no necesita ningún conocimiento de programación aparte de


poder apuntar y hacer clic con el mouse. Si entiende cómo usar la línea de
comandos o la Terminal en Windows o Linux, eso debería ser suficiente
para trabajar con SPSS Syntax.

Entonces, si bien es vital aprender Python y R para seguir una carrera en


Data Science, SPSS es un excelente punto de partida para los principiantes.
Con una interfaz gráfica de usuario y una variedad de potentes funciones,
este es el paquete de estadísticas perfecto para investigadores con o sin
conocimientos de programación.
Sintaxis de IBM SPSS - Ejemplo

Si ese es el caso, ¿por qué no usar Microsoft Excel en lugar de SPSS? A


primera vista, la pantalla predeterminada de SPSS parece una hoja de
cálculo, ¿no es así? ¿Cuál es la diferencia de todos modos?

Todas las preguntas justas para preguntar, con toda honestidad. Si bien
Excel permite al usuario ingresar, almacenar y manipular datos, estas
características existen en SPSS, pero hay mucho más. Dado que SPSS se
desarrolló particularmente para el análisis estadístico de datos, puede
realizar cálculos estadísticos complejos. En marcado contraste, Excel aún
debe incluir estas funciones.
Excel funciona para el análisis simple de datos, pero SPSS puede hacer
mucho más

Por ejemplo, aunque realizar un análisis de clúster en SPSS puede ser


sencillo, necesitará complementos si desea realizar este cálculo en Excel.
En otras palabras, cuanto más complejo sea el cálculo estadístico, mejor
será el uso de SPSS. Eso es exactamente para lo que fue diseñado.
Realizando un análisis de cluster usando SPSS

Pero eso no es todo: hablando de complementos, incluso se puede extender


la funcionalidad de SPSS para incluir macros de Python que le ayudan a
automatizar todas sus tareas de procesamiento de datos. ¿Increíble?
Finalmente, hay un centro de extensiones con un número cada vez mayor de
extensiones que te ayudan a construir la sintaxis de SPSS también

A Python macro in SPSS – Example

Una macro de Python en SPSS - Ejemplo


Por lo tanto, para resumir, SPSS es el adecuado para el usuario normal, que
puede que no tenga muchos conocimientos de programación, pero que
tenga una sólida comprensión de la teoría estadística y que necesite tener la
capacidad de ejecutar una amplia variedad de cálculos estadísticos a su
disposición.

Por supuesto, ahora que IBM posee este producto, puede esperar un soporte
excelente para un producto estable que ha resistido la prueba del tiempo.
Dicho esto, no debería sorprender que SPSS sea considerado como el
paquete de software líder utilizado por varios otros negocios para el análisis
estadístico durante más de medio siglo.

En el siguiente capítulo ...


Ahora que hemos sido introducidos en la historia, el propósito y el uso de
SPSS, es hora de obtener una experiencia práctica con SPSS en sí. Esto
comienza con la instalación del paquete SPSS desde el sitio web de IBM,
que es lo que veremos en el siguiente capítulo.
Capítulo 2
Instalación de IBM SPSS v.25

El software nunca permanece igual. Siempre existe la necesidad de corregir


errores o agregar nuevas funciones basadas en las solicitudes de los
clientes. Incluso si SPSS ofrece un conjunto completo de características
para el estadístico, todavía hay mejoras que deben llevarse a cabo.
Actualmente, la última versión de SPSS que puede obtener es la versión 25
que se lanzó en agosto de 2017. Esto es lo que usaremos a medida que
avancemos en este curso sobre estadísticas para principiantes.

La página de bienvenida de SPSS

¿Entonces, dónde empezamos? ¿Como alguien que no sabe nada de SPSS?


Encontrará varios sitios a través de Internet que le permiten descargar este
software. Puede comprar el software inmediatamente o probarlo por un
período de 14 días.

Tutorial de instalación de IBM SPSS


Ahora, sin importar desde qué sitio desee comenzar su descarga de SPSS, lo
dirigirá a la página de IBM inmediatamente. Esto se debe a que primero
tendrá que abrir una cuenta de IBM. Ya sea que descargue la versión de
prueba o decida comprar el software inmediatamente, este paso es
obligatorio.

Paso 1: Ingrese la información correcta en los campos de abajo

Crea tu cuenta de IBM

Al completar este paso, tendrá que esperar un código de siete dígitos que se
enviará al correo electrónico que usa en el proceso de registro.

Paso 2: Ingrese el código de siete dígitos recibido en el correo electrónico


registrado
Ingrese el código de siete dígitos que recibió en su correo electrónico

Una vez que lo haga, se creará una cuenta de IBM para usted, para la cual
recibirá una notificación en el correo electrónico registrado. Este es el ID de
IBM que tendrá que usar de ahora en adelante. Su prueba de IBM SPSS
comienza a partir de ese momento y dura aproximadamente 14 días en total.
A menos que tenga la intención de comprar una copia de SPSS de
inmediato.
Al recibir este correo electrónico,
comienza la prueba de 14 días de SPSS.

Paso 3: Inicie sesión en su cuenta de IBM utilizando el correo electrónico


y la contraseña ingresados durante el registro.

Después de iniciar sesión en su cuenta de IBM,


seleccione "Descargar"
Te encontrarás en una página ubicada dentro de tu cuenta de IBM que te
invita a descargar SPSS. Como puede ver, su período de prueba está en
estado "Activo".

Finalmente, seleccione la opción "Descargar" para pasar a la página


siguiente donde puede obtener un archivo .exe para la instalación.

Paso 4: Seleccione ‘Descargar’ para usar la versión clásica o la última


versión de IBM SPSS.

Seleccione la versión clásica o la última versión de SPSS, y presione


"Descargar"

Una vez que haya llegado a la página siguiente, puede descargar la versión
Classic o la versión de prueba de IBM SPSS. IBM determina las
especificaciones de su sistema y le proporciona un archivo de descarga que
se ejecutaría mejor en su sistema

Sin embargo, antes de hacer algo más, consulte la tabla a continuación para
comprender los requisitos mínimos del sistema para instalar y ejecutar
SPSS sin problemas.

Sistema Windows: Versión 8, 8.1 & 10


operativo Apple: OS X Yosemite
Linux: Red Hat Enterprise 6 y 7,
Ubuntu 14.04 and 16.04.

Hardware 2 GHz o superior

Memoria 4 GB RAM (4 GB+ para mejores


resultados)

Espacio del 2 GB o mas


disco

Ahora, una vez que esté seguro de que puede ejecutar SPSS sin problemas
en su sistema, seleccione "Descargar". Dependiendo de su conexión a
Internet, tendrá que esperar un tiempo ya que el archivo .exe tiene un
tamaño de casi 1 GB.

Paso 5: Haga clic derecho y ejecute el archivo ejecutable para comenzar


la instalación.
Seleccione la versión clásica o la última
versión de SPSS, y presione "Descargar"

Como se indica a continuación, así es como se ve el ícono de IBM SPSS,


sin importar qué sistema operativo utilice.

El icono de IBM SPSS

Los usuarios de Windows pueden encontrar el archivo ejecutable de IBM


SPSS en la carpeta de Descargas.

Paso 6: Seleccione la casilla de verificación verde junto a "Acepto (i


agree)" y "Continuar (continue)"
Seleccione la casilla "Acepto" y la opción Continuar.

Si desea leer los Términos y condiciones antes de completar la instalación,


no dude en seleccionar el hipervínculo verde debajo de la casilla de
verificación.

Paso 7: seleccione una unidad y carpeta para guardar todos sus archivos
SPSS.
Seleccione la ruta de instalación o la unidad. Seleccione Continuar.

Como puede ver, la instalación de SPSS tomará aproximadamente 1.45 GB


de espacio. Además, encontrará la barra de progreso hacia la finalización de
la instalación en la parte superior de su pantalla.

Seleccione Continuar para pasar al siguiente paso.

Paso 8: Espere a que el instalador complete la instalación de SPSS.


Espere a que aparezca la página
"Instalación completa" y seleccione Iniciar

Una vez que la barra de progreso indique que la instalación se ha


completado, seleccione Iniciar.

Paso 9: Inicie sesión con su ID y contraseña de IBM


Inicie sesión con sus credenciales de identificación de IBM

Este paso, que implica ingresar los detalles de su ID de IBM, es obligatorio.


No podrá utilizar SPSS si omite este paso. Dado que su cuenta de IBM tiene
información sobre si está utilizando una versión de prueba o una de pago,
tendrá acceso a SPSS hasta que caduque su período de prueba o su
suscripción mensual.

Nuestro primer vistazo a IBM SPSS


Bienvenido a SPSS! ¡La instalación está completa y espero que sea lo
suficientemente simple como para seguirla! Sea paciente y espere a que se
cargue el paquete SPSS. Puede ser un poco de tiempo, dependiendo de las
especificaciones de su sistema.
La página de bienvenida de SPSS
Ahora, una vez que haya pasado la página de inicio que le da la bienvenida
al uso de SPSS en su propio idioma, llegará a una página que le pedirá que
seleccione un conjunto de datos, elija una muestra o cree un nuevo archivo
de sintaxis.

Tu primer vistazo a SPSS


Si selecciona Nuevo conjunto de datos, estaremos en camino de crear
nuestro primer archivo. Por supuesto, siempre puede ver una serie de
muestras que SPSS ha preparado y que serían útiles ya que verá cómo se
presentan las variables y los casos para el análisis.

En el siguiente capítulo ...


Ahora que hemos completado la instalación de IBM SPSS y hemos echado
un vistazo por primera vez al diseño del paquete de estadísticas, pasemos al
siguiente capítulo en el que examinamos los conceptos y estándares clave
relacionados con la naturaleza de los datos en sí.
Capítulo 3
Acerca de los datos

Si nos damos cuenta de esto o no, los datos están en todas partes. Nuestros
cinco sentidos toman datos todos los días, mientras que nuestra mente
procesa estos datos en patrones a partir de los cuales podemos sacar
conclusiones.
Por ejemplo, si entramos en contacto con algo cortante o caliente,
¿realizaríamos a sabiendas la misma acción de nuevo? Por supuesto no.
Esto es porque nuestra mente ha registrado la sensación ardiente o dolorosa.
Son datos sensoriales. En el futuro, recordamos esa experiencia y hacemos
todo lo posible para no repetirla nunca. No a menos que nos preocupemos
por nuestra salud física.

¡No toques la estufa!

En marcado contraste, cuando comemos chocolate o hacemos ejercicio,


obtenemos ese alto nivel de suavidad. Esto también es información
sensorial. Disfrutamos de estas actividades porque nos recuerdan esa
sensación de placer e interpretamos esto como bueno.

Pero, ¿qué tiene esto que ver con el estudio de análisis de datos? Mucho, en
realidad.

Las computadoras también aceptan datos y están "condicionadas" por el


código para llevar a cabo ciertas acciones. Por ejemplo, podríamos querer
encontrar el promedio de un conjunto de números, como se muestra en el
siguiente código de Python:

Cálculo del promedio de números en una lista


Cuando ejecuta este simple fragmento de código de Python, obtiene un
resultado deseable como se muestra a continuación:

Producto - Promedio calculado de la lista de Python

En el ejemplo anterior, los números encerrados entre corchetes se pueden


comparar con una sola variable de datos. Tan simple como es este ejemplo,
uno puede ingresar varias variables de datos en un paquete estadístico como
SPSS. Realmente no tiene que escribir código ni hacer nada aparte de
procesar los datos con las funciones disponibles.

Ahora, de manera muy diferente a los humanos, las computadoras toman


estos datos en un formato estructurado, legible por máquina y ejecutan el
código como se indica. Hay que agradecer a Konrad Zuse por intentar crear
la primera computadora funcional utilizando el lenguaje universal de 1s y
0s.
Konrad Zuse - Inventor de la computadora programable

Usando el ejemplo anterior, cada uno de los números dentro de los


corchetes se convierte a su equivalente binario y luego se procesa. Este es el
único lenguaje que las máquinas pueden comprender y responder a estos
días, a diferencia de los seres humanos que fácilmente pueden derivar el
significado de un bloque de texto, una obra de arte o incluso el tono de voz
o el lenguaje corporal de alguien. Por supuesto, esto es hasta que la
inteligencia artificial comienza a rivalizar con la nuestra, pero eso es una
discusión para otro día.
¿Cuándo lograremos la singularidad tecnológica?

Lo que se señala aquí es la diferencia entre datos legibles por humanos y


datos legibles por máquina. Mientras que el primero puede interpretar datos
subjetivos no numéricos casi sin esfuerzo, el último se limita a procesar
datos numéricos estructurados (o datos no numéricos transformados en su
equivalente numérico) para que podamos extraer conclusiones precisas
sobre el problema que deseamos resolver.
Las computadoras no pueden obtener un significado del texto, las imágenes
y el video como lo hacen los humanos

Teniendo en cuenta las restricciones mencionadas anteriormente, ¿de qué


sirve realizar análisis de datos de todos modos? Afortunadamente, existe
una variedad de fuentes en el mundo real a partir de las cuales podemos
capturar y cuantificar estos datos. Mejor aún, las computadoras pueden
ayudarnos a procesar grandes cantidades de datos y aumentar la efectividad
de nuestro análisis.

Dicho esto, al poder entender la diferencia entre estas formas de datos


capturados, uno debe entender que la forma en que recopilamos los datos
debe ser propicia para las herramientas que utilizamos para procesarlos.

¿Por qué realizar análisis de datos?


Dado que hay un gran despliegue publicitario sobre la ciencia de datos y el
arte de realizar análisis de datos, uno podría preguntarse si esto realmente
sucede. ¿Hay casos específicos en los que la información obtenida a partir
del análisis de datos haya impactado positivamente nuestras vidas? ¿O es el
análisis de datos solo un montón de nerd-speak reservado para un
determinado grupo de personas con un alto coeficiente intelectual? Para
confundir y ofuscar al resto de la población con una jerga pretenciosa.

El análisis de datos no tiene nada que ver con ser nerd.

Apenas.

No tomes mi palabra por ello. Para responder a esa pregunta en su totalidad,


veamos algunos problemas del mundo real que se han resuelto mediante el
uso innovador de lo que ahora denominamos análisis de datos.

Problema 1: Venta al por menor


Si las empresas minoristas pueden determinar en qué lugar deberían abrir
idealmente un punto de venta, esto podría generar ganancias desde el
primer día. Claramente, los conjuntos de datos que analizan involucran
quiénes son sus clientes, dónde viven y cuánto gastan en general. Incluso
puede extenderse a lo que estos clientes hacen en ciertos lugares, como
disfrutar de una taza de café o incluso comprar ropa en una tienda.

¿Te imaginas lo que puede hacer una tienda minorista con este tipo de
información?

El análisis de datos es muy personalizable; como un buen sastre

Sí, mayores ganancias. Pero esto también puede afectar qué y cuántos de
estos artículos deben mantenerse en esa tienda, ya que el análisis de datos le
indicará qué artículos prefieren comprar sus clientes. Esto puede, a su vez,
impactar en la eficiencia, ya que puede asignar los recursos mínimos
requeridos para satisfacer estas necesidades.

Mejor aún, cuando se recopila la información de tal manera, la


administración también obtiene una visión general decente de qué
productos son los más populares, y así, dedica recursos a la producción de
esos productos.
Problema 2: salud
El análisis de datos no solo ayuda a descubrir fármacos, sino que también
predice el progreso de la enfermedad en los pacientes. En promedio, se
necesitan doce años para que un medicamento sea presentado oficialmente.
Para acortar, el uso de ciertos algoritmos ayuda a determinar el éxito de un
medicamento en función de factores biológicos.

De hecho, estos datos de la ciencia y los algoritmos de aprendizaje


automático simulan cómo reaccionará el cuerpo ante diferentes versiones
del medicamento, lo que reduce el tiempo dedicado a los experimentos de
laboratorio. La información de cada simulación se encuentra en un ciclo de
aprendizaje continuo y ayuda a predecir el resultado de futuros
experimentos con un alto nivel de precisión.
El Bot de Vitruvio. Sí, las máquinas también pueden aprender.

Cuando se trata de predecir el progreso de la enfermedad, los datos


históricos sobre los pacientes se recopilan y analizan teniendo en cuenta
también los factores biomédicos necesarios. Muy notablemente, los
médicos pueden tomar medidas preventivas y mejorar los resultados de
salud para sus pacientes. Claramente es un ganar-ganar, ya que no solo
previene la aparición de la enfermedad, sino que también reduce la cantidad
de trabajo que los médicos tienen que hacer para llegar a tales conclusiones.

Problema 3: Finanzas
Las empresas financieras como Amex no solo predicen la lealtad basándose
en el análisis del hábito de gasto de sus clientes, sino que también pueden
predecir qué cuentas de clientes cerrarán en unos pocos meses. Es
sorprendente lo que las tendencias de análisis pueden decirle sobre sus
propias vidas.

Además de esto, las compañías de seguros están analizando los datos para
predecir las reclamaciones fraudulentas antes de que ocurran. Esto se debe a
que es un proceso arduo para detectar qué reclamaciones son fraudulentas o
no.

Los bancos tienen la capacidad de detectar fraudes


a través del poder del análisis de datos

Al usar algoritmos de aprendizaje automático que procesan grandes


cantidades de datos para encontrar estos casos fraudulentos, los auditores
humanos pueden concentrarse solo en estos casos y dejar de perder el
tiempo en otros que no lo son. Las compañías de seguros no solo pueden
evitar la pérdida de dinero por reclamaciones fraudulentas, sino que
también pueden reducir la cantidad de horas de trabajo que sus auditores
emplean para investigar reclamaciones falsas.

Cuando vea el alcance de los efectos del análisis de datos, debe quedar
claro que nuestro futuro es sentirnos cómodos con los datos. Dicho esto,
entendamos algunos términos clave relacionados con los datos que servirán
de base para realizar el análisis a medida que avanzamos.

Datos, definición
Entonces, ¿qué son los datos? Esta es una pregunta adecuada dado que el
enfoque en la recopilación, limpieza y análisis de datos se ha convertido en
una ciencia en la última década. En el sentido convencional de la palabra,
los datos no son más que información objetiva que se puede capturar o
recopilar de una fuente.

Por sí solo, esto se clasifica en términos generales como datos sin procesar
antes de ser procesados. Sin embargo, cuando se procesa, mediante
software como SPSS, se transforma en información que ayuda a contar una
historia. Pero hay más: estos datos procesados también pueden considerarse
como datos sin procesar para una serie de otros experimentos.
Los datos cuando se procesan revelan tendencias

Si bien esta definición puede parecer un poco turbia, es mejor considerar


una analogía que pueda ayudarlo a entenderla de inmediato. Por ejemplo,
tome todos los átomos de cualquier sustancia o las células de nuestro
cuerpo. Eso es lo que los datos equivalen a cuando se mantienen solos. La
unidad de información más pequeña que, cuando se recopila y procesa,
muestra una tendencia.

También se debe tener en cuenta que el "dato" no es más que un único


punto de datos que cuando se acumula durante un período de tiempo se
puede expresar como un solo campo de datos. Dicho esto, cuando acumula
varios campos de datos relacionados (la información financiera de un
cliente es un ejemplo común), obtiene un conjunto de datos completo.
Ahora, mientras que los datos legibles por el hombre se componen de varios
tipos, hay dos tipos de datos que son fáciles de usar para la máquina:
numéricos y no numéricos. Estos dos tipos también se denominan datos
cualitativos y cuantitativos, que es lo que definiremos a continuación.

Tipos de datos legibles por máquina


Hay dos tipos de datos que las máquinas pueden leer y veremos estos dos
ahora.

Cualitativo
Incluso si hay un uso limitado de datos cualitativos en el análisis de datos,
aún es necesario recopilar datos que consisten en texto.

Por ejemplo, puede comprender los hábitos de compra de los clientes en


función de si son hombres o mujeres. Digamos que dirige una tienda y hace
una lista de todos los clientes que ingresaron durante todo el día hasta que
cerró.

Adivina quién compra más? El claro ganador!


Puede saber fácilmente cuáles son las preferencias de compra de sus
clientes en función de su género y si más hombres o mujeres visitan su
tienda con regularidad. Todo lo que tiene que hacer es registrar el sexo de
su cliente y calcular la cantidad de hombres y mujeres que visitaron su
tienda por separado.

Hay una serie de otras razones por las que se recopilan datos cualitativos, y
en su mayor parte funcionan como categorías de descripción. Tenga en
cuenta que los datos cualitativos pueden ser nominales u ordinales
dependiendo de si existe un pedido o no. Discutiremos esto un poco más
tarde.

Cuantitativo
Ahora, los datos cuantitativos toman la forma de conteos o mediciones. En
otras palabras, este tipo de datos trata con números únicamente. Si bien los
datos cualitativos, que se basan en el lenguaje, pueden variar de acuerdo
con la experiencia de uno, los datos cuantitativos son fijos. Aún más, los
datos cuantitativos se pueden desglosar en valores discretos y continuos.

Un ejemplo sencillo para explicar este tipo de datos podría ser el número
registrado de ventas realizadas cada día en la tienda o incluso las alturas y
los pesos de todos los empleados en una oficina. Dicho esto, dado que el
número registrado de ventas siempre será un número entero, se dice que es
un valor discreto.
Por otro lado, dado que las alturas y los pesos de todos los empleados
pueden tomar cualquier valor e incluir decimales, estos valores se
consideran continuos. Hay una razón para esta categorización y es lo que
veremos más adelante.

Otro
Hay un tercer tipo de datos que no se clasifican como datos cualitativos o
cuantitativos, pero pueden servir como claves en los casos. Tomemos, por
ejemplo, una identificación de registro de automóvil o una identificación de
empleado, que puede ser una secuencia de solo números o ambos números
y letras alfabéticas. No es una medida en el sentido real, ni se puede
analizar este número. No se clasifica como datos cualitativos, ya que
tampoco puede segmentarse en categorías ordenadas o desordenadas.

¿De dónde crees que obtienes buenos datos? De las Bases de datos
relacionales, por supuesto!

Sin embargo, al igual que el nombre de una persona en el mundo real,


identifica de forma única un único registro de datos que consta de valores
para todas las variables en el conjunto de datos. A veces, las personas en un
solo conjunto de datos pueden tener los nombres y apellidos exactos, por lo
que existe la necesidad de este tipo de datos. Un ejemplo simple de esto
sería la identificación de un empleado que está vinculada a variables como
el nombre, la fecha de nacimiento, el peso, la altura, el tipo de sangre y el
salario actual.

Dicho esto, sería prudente recordar que una sola fila de datos en SPSS se
denomina "caso", mientras que una sola columna se denomina variable.
Esto no es diferente de la información almacenada en las bases de datos,
que generalmente se llaman registros y campos.
Datos ordenados y desordenados
Hay otro aspecto de los datos que debe cubrirse y que puede entenderse en
términos generales como datos ordenados o no ordenados. Para comprender
mejor esto, debemos recordar lo que leemos en la sección anterior sobre
datos cuantitativos y cualitativos.

La única forma en que podemos realizar cualquier análisis estadístico sobre


datos cualitativos es mediante la obtención de su frecuencia. El análisis
estadístico trata en gran medida con los datos cuantitativos y las medidas a
las que llegamos en las estadísticas descriptivas.

Una diferencia clave entre estos dos tipos de datos es que podemos
clasificar los datos cuantitativos según sus mediciones, mientras que esto no
siempre es posible o necesario con datos cualitativos. Dicho esto, veamos
las diferencias entre los datos nominales, ordinales, y de escala o basados
en intervalos.

Nominal
Por ejemplo, si quisiéramos contar el número de manzanas, naranjas,
plátanos. y las sandías compradas en una tienda durante todo el día y
graficándolas con un gráfico de barras, notarán que no hay un orden
particular en el que deba mostrarse esta lista de artículos.

Tampoco hay ninguna importancia numérica para cualquiera de estas


categorías que puede utilizar para clasificar esta lista de elementos. En otras
palabras, puede contar cada uno de estos elementos y listarlos en cualquier
orden si lo desea. Realmente no importa, porque lo que interpretes del
gráfico será el mismo. Este tipo de datos se llama datos nominales.

Ordinal
El siguiente tipo de datos también incluye la recopilación de datos
cualitativos. Sin embargo, hay una diferencia clave con este tipo de datos en
comparación con los datos nominales. Conocido como datos ordinales, este
tipo generalmente ocurre en encuestas de retroalimentación de clientes que
se clasifican de enojado a neutral a feliz.

Por supuesto, el rango más alto se otorga a la categoría feliz mientras que el
rango más bajo se asigna a la categoría enojada por razones obvias.
Asumiendo que el lector considera que la felicidad es la experiencia más
positiva, aplicamos una clasificación artificial aquí.
Sin embargo, hay otro aspecto de este tipo de datos que lo diferencia de los
datos de escala o intervalo. Lo único que no podemos medir con este tipo de
datos es la verdadera brecha entre la felicidad, la neutralidad y la ira a
diferencia de los valores cuantitativos. En otras palabras, sabemos que la
brecha entre 5 y 10 es de 5 unidades de medida. Esto no es posible con los
datos ordinales, incluso si asignamos una clasificación artificial a cada uno
de los atributos de la encuesta.

Intervalo o escala
Los datos de escala o intervalo implican datos cuantitativos, que tienen las
características de tener un orden específico al tiempo que nos proporcionan
una imagen clara de la diferencia numérica entre dos valores en función de
los intervalos en la escala.
Por ejemplo, sabemos que la temperatura, ya sea en grados Fahrenheit o
Celsius, tiene intervalos específicos. Al comparar dos valores, podemos
distinguir la diferencia entre 95 grados y 105 grados Fahrenheit, sabiendo
que 105 grados es más alto en valor.

Estas propiedades, como se puede decir, no se pueden encontrar en los


datos nominales y ordinales. La mejor parte: en comparación con los otros
dos, podemos llevar la mayor cantidad de cálculos estadísticos con datos
basados en intervalos.

Si bien hay otro tipo de datos que involucran relaciones, no cubriremos este
tema ya que SPSS nos permite definir nuestros datos utilizando las
características de nominal, ordinal y escala. Cubriremos esto en el siguiente
capítulo cuando veamos cómo definimos nuestros datos en SPSS.

¿Existe un proceso para el análisis de datos?


Sí. El análisis de datos no es el primer paso en este proceso. Por la sencilla
razón de que no hay datos de readymade disponibles. No, a menos que
tenga sistemas para capturar varios campos de datos. O bien, ha creado un
experimento con métodos probados para recopilar datos.

Entonces, ¿dónde comienza el proceso de análisis de datos? ¿Dónde


termina? Definitivamente comienza con la recopilación de datos y termina
con la toma de decisiones. Por supuesto, también se puede considerar que
está en curso, ya que nuestras conclusiones se refinan continuamente en
función de la inclusión de conjuntos de datos nuevos.

Dicho esto, aquí está el proceso de análisis de datos presentado de manera


simple y adecuada para cualquier principiante:
El proceso de análisis de datos
Una Nota Sobre Los Métodos De Investigación
Incluso si la recopilación de datos no es el enfoque de este libro, es bueno
proporcionar algunos antecedentes sobre los métodos utilizados para
recopilar datos cualitativos o cuantitativos. Esto es también por la sencilla
razón de que SPSS se desarrolló con el propósito de realizar análisis para
las ciencias sociales. Ayuda a comprender los diversos métodos mediante
los cuales las personas recopilan datos tanto cualitativos como
cuantitativos. ¿Quién sabe? Es posible que tenga que usar uno de estos
métodos en el futuro.

Diferencia entre datos cualitativos y cuantitativos.

Ahora, cuando recopilamos datos cualitativos, estamos registrando la


experiencia, el comportamiento y las observaciones de los participantes
asociados con el estudio en términos de lenguaje. A veces, estas
observaciones también pueden ser nuestras. Dado que los datos cualitativos
son de naturaleza descriptiva, los métodos que utilizamos para recopilar
datos van desde la lectura de documentos, diarios y registros culturales.

Incluso podemos ver los artefactos físicos para obtener un significado o


incluso realizar encuestas y entrevistas con preguntas abiertas para recopilar
datos cualitativos de los participantes. Por supuesto, la desventaja inmediata
es que no podemos analizar este tipo de datos como los datos cuantitativos.

Una simple encuesta de comentarios puede


decirle mucho sobre sus clientes

Hablando de eso, dado que los datos cuantitativos consisten en números que
pueden categorizarse, clasificarse o incluso servir como medidas, se logra la
objetividad. Sin embargo, a diferencia de los métodos utilizados en la
investigación cualitativa, las respuestas de los participantes generalmente se
limitan a una escala de calificación o simples preguntas de sí y no, como en
las encuestas y encuestas.

Sin embargo, el medio más popular por el cual las personas recopilan datos
cuantitativos es mediante la realización de experimentos naturales, de
laboratorio y de campo. Un ejemplo tradicional de esto es tratar de
determinar el punto de fusión y el punto de ebullición de una sustancia.
Otro ejemplo sería la atención hospitalaria donde la enfermera toma sus
valores de presión y temperatura para compararla con los valores
"saludables".

Otro ejemplo más que se puede agregar aquí son las métricas de marketing
de contenido que Google registra y utiliza para clasificar las páginas web en
su página de resultados de búsqueda para ciertas palabras clave.

Google - quiero decir, Hermano mayor - te está mirando!

Tan simple como son estos ejemplos, el diseño experimental juega un papel
importante en los valores que se obtienen como resultado. Veremos este
tema mucho más tarde.

La Importancia De Los Datos De Limpieza Para El Análisis


La importancia de los datos de limpieza antes del análisis no puede ser
subestimada. No tendría sentido analizar los datos si no cumple con los
estándares de calidad requeridos. Aparte de las observaciones obsoletas,
hay algunos tipos de errores que debemos tener en cuenta:
Duplicados
Hay muchas posibilidades de que los valores duplicados o irrelevantes
tiendan a aparecer en los conjuntos de datos y uno debe estar atento a estos
errores. La razón por la que estos puntos de datos deben eliminarse es
porque, al analizar los datos, esto conducirá a resultados incorrectos y
conclusiones erróneas.

Duplicación de casos o registros en SPSS - Un ejemplo

Errores estructurales
Esta categoría de errores incluye la entrada incorrecta de datos en el
momento de la medición o incluso cuando se transfieren los datos. Como
resultado, puede tener varias variables que deben clasificarse juntas pero
ahora están separadas. Los errores de etiquetado y los errores tipográficos
pueden ser razones para que ocurran estos tipos de errores. Como se puede
esperar, los resultados de su análisis serán deficientes, por lo que es vital
hacer un seguimiento de estos errores y corregirlos.

Puntos de datos faltantes


Este es un tipo de error difícil de tratar, ya que ignorar o eliminar la
observación no es una acción ideal aquí. Ahora, si completa el valor faltante
basado en observaciones similares en el conjunto de datos, esto no ayudará,
ya que simplemente está reforzando una tendencia que ya estaba presente.
La eliminación de información es igual de mala, ya que está eliminando
observaciones, está reduciendo sus posibilidades de obtener información
precisa. Es por eso que es recomendable que uno se centre en recopilar
todos los puntos de datos en las observaciones de la forma más meticulosa
posible.

Datos faltantes en la primera celda debajo de Matemáticas

Errores en forma de Outliers


Los valores atípicos, por definición, son puntos de datos que se encuentran
bien fuera del rango de valores para cualquier variable dada. Entonces, la
pregunta sigue siendo: ¿debe eliminarlo o mantener estos valores atípicos?
Si bien algunos de estos valores pueden ser auténticos como parte de una
observación registrada, otros pueden no serlo. Dicho esto, si encuentra que
algunas de las mediciones registradas no son valores reales que se pueden
producir en un experimento, es recomendable que elimine la observación.

Debería ser obvio que cuanto mayor sea el conjunto de datos, más difícil
será limpiar los datos. Por lo tanto, no debe acelerar el proceso de limpieza
o preparación de datos para el análisis. En última instancia, el uso de datos
confiables es la única forma en que puede llegar a conclusiones adecuadas.
No hay ningún atajo.

En el siguiente capítulo ...


Ahora que hemos comprendido la naturaleza de los datos en el análisis,
pasamos a analizar qué es un archivo de datos de SPSS y cómo se ve el
diseño del Editor de datos de SPSS. Aquí es donde también volveremos a
examinar los conceptos aprendidos en este capítulo, pero de manera
práctica.
Capítulo 4
El Editor De Datos De SPSS

Al igual que el audio, el video y los documentos tienen extensiones de


archivo como .mp3, mp4 y .docx, la extensión para un archivo de datos de
SPSS es .sav. Casi todo lo que haga a partir de ahora se guardará en un
archivo de datos. Hay un par de otros tipos de archivos que guardaremos
cuando usemos SPSS, como un archivo de salida y sintaxis con extensiones
como .sps y .spv, pero esto es para mucho más adelante.

Abrir un nuevo conjunto de datos en SPSS


Tan pronto como abre SPSS, tiene tres opciones que incluyen crear un
nuevo archivo o abrir uno que haya creado anteriormente o exportar un
archivo.

Ya que esta es la primera vez que usa IBM SPSS, seleccionemos Nuevo
conjunto de datos como se resalta en rojo a continuación:

Abrir un nuevo conjunto de datos

Ahora, si selecciona Nuevo conjunto de datos, llegará a una pantalla similar


a una hoja de cálculo que se titula Conjunto de datos1, como se muestra a
continuación:
Puede guardar este archivo como
tunombredearchivo.sav al ingresar datos

Como ha abierto un nuevo conjunto de datos, deberá ingresar los datos en


las filas y columnas. Como se mencionó en el capítulo anterior, las
columnas se denominan Variables y las filas se denominan casos.

Ingresando datos en SPSS


Bien, ahora intente ingresar texto y números en cualquiera de las celdas
disponibles en la hoja. Por ejemplo, ingrese su nombre y el número 585. Si
ha trabajado con Microsoft Excel, esto debería ser simple.
Escribe tu nombre y el número 585.

La nueva versión de SPSS es amigable tanto para los números como para el
texto. Detecta el tipo de datos ingresados y altera el tipo de datos de la
variable de cuantitativo a cualitativo o viceversa.

Sin embargo, tendrá que realizar algunos cambios más para esa variable en
particular si está ingresando datos que tienen características especiales. Nos
ocuparemos de cómo puede hacerlo en breve. El ingreso de datos es
definitivamente importante, ¡pero aprender a definir las variables como
datos cuantitativos o cualitativos es tan importante en SPSS!

La lista de variables en SPSS


Ahora, en SPSS versión 25, esta opción de cambiar entre la vista de datos y
la variable se ha eliminado. La nueva interfaz le permite ver varios detalles
relacionados con cada variable por medio de un menú emergente mientras
aún puede acceder a sus datos.

Vista de datos o variables en versiones anteriores de SPSS


Dicho esto, busque la Lista de variables en la esquina inferior derecha de la
pantalla y como se muestra a continuación:

Seleccione Lista de variables para ver


los tipos de datos de seis variables

Seleccione la flecha resaltada en rojo en la pestaña Lista de variables, que


mostrará una lista de características que definen cada una de sus variables.

La lista de variables en SPSS

Medida
Tenemos tres opciones en Medida, que son nominales, ordinales y de
escala. Se puede seleccionar nominal si no es necesario categorizar los
valores de esta variable, como suelen ser los valores cuantitativos. Por
ejemplo, los números de Nombre o de Seguridad Social se incluyen en esta
categoría.

Ordinal, por otro lado, puede usarse para clasificar los datos, pero donde la
diferencia cuantitativa entre dos puntos de datos no es fija ni conocida. Por
ejemplo, los grados universitarios o incluso las encuestas de satisfacción
que determinan los niveles de felicidad o infelicidad de una persona son de
naturaleza nominal.
La opción Escala en SPSS es donde puede clasificar los datos y saber la
diferencia entre las dos cantidades que se comparan. Tiempo en segundos,
horas y minutos, temperatura en grados Fahrenheit o Celsius, y Edad en
años, como ejemplos.

Dicho esto, seleccione la medida correcta para cada una de las variables de
la lista desplegable en SPSS v.25.

Nombre
El nombre del encabezado indica que el nombre de la variable que no
admite espacios entre las etiquetas no le permite iniciar la etiqueta con
caracteres especiales o números. Simplemente borre el término
VARIABLE001, VARIABLE002. VARIABLE003 e ingrese el nombre
deseado.

Etiqueta
Esta característica le permite modificar el nombre de la variable de la
misma manera que lo hizo para Nombre. Cuando abre un nuevo conjunto de
datos, las variables no se definirán, como se muestra a continuación:

Etiquetas vacías de variable

Una vez que realice los cambios, como se muestra a continuación en


Etiqueta en la Lista de variables, los cambios se actualizan automáticamente
en la hoja:
Actualice la etiqueta de la lista de variables
y compruebe si hay cambios en la hoja

Como puede ver a continuación, los nombres de las variables en la imagen


a continuación ahora reflejan los cambios realizados en la anterior:

Etiquetas actualizadas en hoja

Dicho esto, los cambios que realizó en la Lista de variables tanto para el
Nombre como para la Etiqueta se reflejarán aquí dependiendo de si utiliza
el Nombre o la Etiqueta para identificar su variable.

Para esto, puedes encontrar un interruptor en la esquina superior derecha de


tu pantalla, y como se muestra a continuación:

Use esto para alternar entre nombre de variable y etiqueta


Tipo
Ahora, puede cambiar el tipo de variable en la Lista de variables
simplemente haciendo clic en una variable en particular en el punto donde
se enumera su tipo.

Apunte y haga clic en el área rodeada con un círculo rojo para cambiar el
tipo de datos del nombre del estudiante

Realice cambios en las opciones como se muestra en el cuadro que se abre a


continuación. Las opciones que se abren en una lista desplegable son
Numérico, Coma, Punto, Notación científica, Fecha, Dólar, Moneda
personalizada, Cadena y Numérico restringido. Además, use las flechas
hacia arriba y hacia abajo debajo del ancho para aumentar el ancho del
carácter.

Se permite un ancho de 20 caracteres para


el tipo String (o datos cualitativos)

Las opciones que se abren en una lista desplegable son Numérico, Coma,
Punto, Notación científica, Fecha, Dólar, Moneda personalizada, Cadena y
Numérico restringido. Además, use las flechas hacia arriba y hacia abajo
debajo del ancho para aumentar el ancho del carácter.

Decimales
Si el tipo que ha seleccionado es numérico, puede seleccionar el número de
decimales que desea que se muestren en la hoja. Simplemente, use la tecla
Retroceso o Eliminar para eliminar el valor actual e ingrese el número de
decimales preferidos.

Etiquetas de valor
Si desea agregar nombres a ciertos valores, entonces usaría esta
característica, pero si no, simplemente déjelo como está.

Valores faltantes
De forma predeterminada, SPSS no permite que falten valores en una celda.
En algunos casos, se pueden hacer excepciones. Ya que es recomendable
utilizar los datos que se limpian tanto como sea posible, mantengamos el
valor predeterminado tal como está.

Papel
Los valores bajo la variable pueden asumir el rol de una entrada o valor
objetivo o de salida. O ambos. También existe la opción de Ninguno que se
puede usar para definir el rol de un conjunto de valores bajo dicha Variable.

Estas son las opciones que se muestran en una lista desplegable:


Selecciona el rol que la Variable debería jugar

Una última cosa: si no puede ver la Lista de variables completa


correctamente, seleccione la opción a continuación con un círculo rojo en la
esquina superior derecha de la imagen:

Al seleccionar esta opción, la Lista de variables sube a la parte superior de


la hoja para obtener una vista completa

El panel de información general de datos


Ahora, si desea obtener una descripción general de los datos que ingresó o
exportó a SPSS, puede seleccionar el ícono Información general de datos en
la esquina superior derecha de su pantalla para abrir este panel:
Seleccione esta opción para abrir
el panel Información general de datos

Una vez que seleccione este ícono, verá que se abre un panel en el lado
derecho de su pantalla, como se muestra a continuación:

El panel de información general de datos

El Panel de información general no solo tiene en cuenta el número de


variables y casos, sino que también le brinda indicaciones útiles sobre cómo
puede resumir los datos que ingresó o exportó.

Simplemente seleccione cualquiera de las opciones resaltadas en granate en


la figura de arriba para hacer más con sus datos.
Abrir múltiples pestañas en SPSS
Ahora, cada vez que abre una sesión de SPSS y crea un conjunto de datos,
no está limitado a solo realizar un análisis en ese conjunto de datos. En
otras palabras, dado que SPSS v.25 ofrece la función de pestañas, también
puede abrir varios otros conjuntos de datos.

Múltiples pestañas en SPSS

Para esto, seleccione el signo '+' al lado de la pestaña abierta para abrir una
segunda pestaña. Se abrirá una nueva pestaña como se muestra a
continuación y puede elegir abrir un conjunto de datos creado o rellenar
datos en uno nuevo y nuevo.

Después de esto, puede alternar entre estas pestañas para ver ambos
conjuntos de datos simultáneamente.

Buscar artículos
Ahora, hay otra opción interesante que está disponible en SPSS que
consiste en realizar una búsqueda rápida de elementos, ya sean archivos de
salida, conjunto de datos o sintaxis. Para ello, haga clic en la flecha
resaltada en rojo en la esquina superior derecha de la pantalla:
Seleccione la flecha hacia abajo debajo de la rueda dentada
(Configuración)

Una vez que haya seleccionado esta opción, este cuadro desplegable se abre
a continuación, en el que puede ingresar texto para ubicar conjuntos de
datos, salidas y sintaxis que puede haber abierto en varias pestañas.

Introduzca un nombre de archivo en el cuadro de texto Buscar artículos

Esto puede resultar especialmente útil si ha abierto varios conjuntos de


datos, salidas y sintaxis, gracias a la nueva función de poder abrir varias
pestañas en el Editor de datos de SPSS.

Ajustes y notificaciones
Ubicado en la esquina superior derecha de la pantalla, encontrará los íconos
de Configuración y Notificaciones, como se muestra a continuación:
Notificaciones [izquierda] y configuración [derecha] iconos

Seleccione cada uno de estos íconos para ver la información


correspondiente a las actualizaciones de SPSS, así como para recibir
notificaciones importantes cuando complete los procedimientos en
ejecución, que veremos más adelante.

Nuevo análisis
Ahora, una vez que haya ingresado o exportado todos los datos que necesita
para un análisis, puede realizar un análisis primero seleccionando una
variedad de opciones disponibles una vez que haga clic en Nuevo análisis,
como se muestra a continuación:

Seleccione Nuevo Análisis

Una vez que lo haga, será dirigido a otro menú desde el cual puede
seleccionar una opción para el análisis entre los varios que están
disponibles. Esta sección de Analizar Catálogo tiene varias opciones. Elija
uno de ellos como se muestra a continuación y comience con su análisis de
datos.
Analizar el menú del catálogo

Otras funciones útiles de la pestaña


Ahora, hay algunas otras funciones que puede ejecutar si hace clic derecho
en la pestaña del conjunto de datos actual que ha abierto. Veamos en qué
nos ayuda cada una de las opciones:

Haga clic derecho en la pestaña actual


Guardar (save)
Guarda la pestaña actual en la que está trabajando.

Guardar como (save as)


Guarda la pestaña actual con un nombre específico.

Duplicar (duplicate)
Produce un duplicado de la pestaña.

Insertar y añadir nuevo (Insert and Append new)


Le permite agregar un nuevo conjunto de datos, salida o archivo de sintaxis.

Cerrar pestaña (close tab)


Cierra la pestaña actual en la que estás trabajando.

En el siguiente capítulo ...


Ahora que hemos cubierto los aspectos básicos de ingreso y definición de
datos en SPSS, además de familiarizarnos con las otras características que
nos ayudan a trabajar de manera más inteligente en SPSS, comencemos
ahora nuestra exploración de estadísticas desde cero.
Capítulo 5
Introducción A La Estadística

Incluso antes de sumergirnos en las dos divisiones principales de las


estadísticas como estudio, es bueno cuestionar la necesidad de un estudio en
primer lugar. Hay mucha información a nuestro alrededor hoy que viene en
forma de estadísticas porque este estudio ha encontrado su camino en cada
faceta de nuestras vidas.

Si te gusta ver deportes, los medios casi siempre publican artículos que
clasifican a los atletas mejor pagados del mundo cada dos años. Si te gustan
las películas, también encontrarás artículos que enumeran a las actrices
mejor pagadas cada año. Un excelente ejemplo de esto es Forbes, con su
clasificación anual de los hombres y mujeres más ricos del mundo.

Si bien esta información nos mantiene entretenidos, simplemente nos


mantiene en contacto con lo que está sucediendo en el mundo que nos
rodea. Pero las estadísticas pueden hacer mucho más por nosotros, además
de mantenernos informados sobre qué y quiénes son importantes en el
mundo de hoy.
El pronóstico del tiempo ... ¿importa? Seguro que si

La política y el gobierno, la educación, la aplicación de la ley, la salud, la


tecnología y las empresas generan y analizan estadísticas en gran medida.
Luego está la publicidad que tiende a hacer afirmaciones audaces sobre
productos y servicios. Si eso no es suficiente, los medios tienden a
sensacionalizar los hallazgos solo para obtener más atención con cualquier
prueba social o datos concluyentes. Aquí es donde nuestra capacidad de
discernir entre lo que es verdadero y lo falso se vuelve importante como un
miembro funcional de la sociedad.

En marcado contraste, hay varias veces en que las estadísticas se han


utilizado de manera inteligente para marcar la diferencia en la sociedad.
Debemos prestar atención a estos aspectos positivos y aplaudir a las
personas por ser conscientes y perspicaces a través de estos esfuerzos.

¿Entonces como haces esto? Desarrollando el pensamiento estadístico en


general y pudiendo usar sus métodos para cuestionar estadísticas engañosas
y afirmaciones audaces que las personas hacen cada dos días.

Para resumir: a un nivel básico, aumentar su conocimiento sobre los


métodos estadísticos hace que sea más fácil distinguir entre noticias falsas y
reales. A lo sumo, podría terminar encontrando empleo como científico de
datos. Un rol que los expertos consideran una de las carreras más populares
en el mercado actual.

Ciencia de datos - entonces, ¿qué te dicen los números?

Sin embargo, no hay duda de que va a usar estadísticas para algo u otro en
la vida, ya sea que se trate de comprar bienes o incluso de una casa,
administrar su presupuesto o incluso elegir entre dos empleadores cuando
busque un nuevo trabajo mejor.
Ahora que hemos entendido por qué es necesaria una comprensión sólida de
por qué son necesarias las estadísticas, continuemos esta discusión
examinando lo que realmente implica el pensamiento estadístico.

Una definición de estadística


La definición convencional de una estadística es que, como número, es una
propiedad o característica de ese conjunto de datos. Por ejemplo, el salario
promedio anual en Microsoft podría ser una cierta cantidad, y cuando
compara ese valor con el salario promedio de personas en posiciones
similares en otras empresas de tecnología, puede saber si Microsoft paga
mejor a sus empleados o no. Si está solicitando un trabajo, el uso de
cálculos estadísticos simples como este puede mejorar nuestras propias
vidas.

¿Estás haciendo lo suficiente? Siempre vale la pena revisar

Pero antes de sumergirnos en este simple proceso, hay que tener en cuenta
que existe una gran diferencia entre sacar conclusiones de una muestra de
datos que tiene muchos menos casos de datos que toda la población. En
todo caso, cuantas más observaciones pueda capturar o registrar, más
precisas serán sus conclusiones.

Por supuesto, esto requiere seguir un proceso paso a paso que comienza con
la recopilación para interpretar los datos en el paso final. Si entendemos el
proceso involucrado, entenderemos realmente qué son las estadísticas.

Paso 1: Recolectar buenos datos


Como se mencionó en un capítulo anterior, si faltan datos o no son
auténticos, las conclusiones extraídas del estudio estadístico realizado
pueden ser erróneas.

Si bien hay una variedad de métodos mediante los cuales puede recopilar
datos cualitativos y cuantitativos, vale la pena considerar el método más
adecuado en función del problema que desea resolver.
Hay muchos factores en juego en un estudio y la persona que lo dirige debe
ser sensible a lo que funciona y lo que no.

Paso 2: Analizar datos


Cuando se trata de analizar los datos, se utilizan varios métodos que nos
ayudan a sacar conclusiones de los datos que hemos recopilado.

Probablemente el más simple de ellos que uno puede pensar es contar;


utilizado durante las elecciones democráticas, el conteo de votos es donde
el ganador es el que tiene más.

Es fácil. Solo cuenta el número de votos y listo. ¿Verdad? Alli hay mucho
mas
¡Mucho más por varias razones!

En otros estudios, el rendimiento de los jugadores en un equipo o los


estudiantes en una clase puede calcularse determinando el porcentaje de
éxito o fracaso de una determinada actividad que realizan.

Sin embargo, la pregunta sigue siendo: ¿cómo se comparan estas


estadísticas individuales contra otros estudiantes y jugadores de equipos
deportivos? Mejor aún, ¿qué nos puede decir acerca de la población en
general?

En general, esto es lo que hace que el estudio de las estadísticas sea tan
interesante porque podemos comenzar a descubrir por qué ciertos políticos,
atletas o estudiantes se desempeñan mejor que otros. Esto, por supuesto,
depende de cómo analizamos las relaciones entre las variables en cualquiera
de estos estudios.

Paso 3: Visualizar datos


Una vez que hayamos completado el análisis de los datos, es mucho más
fácil interpretarlos si podemos visualizarlos correctamente. Hay una serie
de visualizaciones disponibles para esto, como histogramas, diagramas de
caja, gráficos circulares, diagramas de caja y diagramas de dispersión, y así
sucesivamente.

Saber qué visualización utilizar para presentar nuestros hallazgos puede


marcar la diferencia, ya que nosotros mismos, como seres humanos,
procesamos la información visual mucho mejor que en cualquier otra
forma.

Paso 4: interpretar los datos


Esta es la parte donde comenzamos a sacar conclusiones sobre los datos que
hemos obtenido y. Con suerte, tomemos medidas para nuestra propia
mejora. Si sentimos que no estamos ganando mucho, realizar un análisis
simple mediante la recopilación de datos de empleados con
responsabilidades similares y años de experiencia en su industria puede
llevarlo a cambiar su trabajo o quedarse. Bueno, ¿por qué no compararlo
con toda la población de empleados también?

Ir tarde al trabajo: un estudio estadístico breve


Digamos que usted vive en una ciudad donde los embotellamientos son
comunes. Por suerte, hay varias rutas para llegar a su lugar de trabajo.
Mantener el fenómeno de estar atrapado en un atasco constante aquí, la ruta
más corta para trabajar no siempre es la manera más rápida de llegar allí.
¿A quién le gustan los embotellamientos de tráfico?
Solo personas sin nada que hacer!

Por supuesto, si su gerente quiere que sus empleados se reporten a tiempo


para trabajar, entonces tendrá muchos problemas. Especialmente si ha
llegado tarde al trabajo debido a estos atascos de tráfico. No importa cuál
sea la excusa, usted será reprendido por falta de profesionalidad por no
poder reportarse a trabajar a las 9:00 AM en punto.

Entonces, ¿cómo resuelves este problema usando estadísticas?


Para esto, puede hacer un seguimiento de la cantidad de días que estuvo
trabajando a tiempo y los días que no trabajó. Por supuesto, dependiendo
del tráfico, tomaría diferentes rutas para trabajar, que otra variable que
también debería registrar. El tiempo sería otra variable que vale la pena
considerar aquí. Esto implica a qué hora dejó su lugar y cuánto tiempo tomó
para llegar a trabajar a tiempo. Incluso podría recopilar datos sobre el tipo
de transporte que utilizó.
Como se muestra en la tabla a continuación, hay seis casos registrados a
partir de seis variables utilizadas para analizar el estudio:

Un conjunto de datos simple que resuelve el problema


"Tarde para trabajar"

Si bien es una buena práctica recopilar tantos datos auténticos para el


análisis, solo con mirar los datos de una semana puede indicarle lo
suficiente si desea informar para trabajar a tiempo.

Para empezar, puede decir que cuanto antes se vaya a trabajar utilizando
cualquier ruta o método de transporte, es más probable que llegue al trabajo
a tiempo. Un simple conteo de los datos anteriores debe decirle esto. Puede
promediar la cantidad de tiempo que se tarda en llegar al trabajo cuando se
va antes de las 8:00 AM y compararla con el tiempo promedio que se tarda
en llegar al trabajo cuando se va después de las 8:00 AM. Por supuesto, esto
no siempre es posible, ya que hay veces en que nos levantamos tarde o
tenemos que completar las tareas antes de irnos.

Entonces, ¿cómo lo hacemos a tiempo, ya sea que nos vayamos


temprano o no?
Cuando observamos el caso en el que usamos una bicicleta como nuestro
medio de transporte, descubrimos que se necesita la menor cantidad de
tiempo para llegar al trabajo como resultado. En marcado contraste, tomar
un taxi o un vehículo de cuatro ruedas después de las 8:00 a.m.
independientemente de la ruta significará que definitivamente llegaremos
tarde. También podemos tomar nota del hecho de que tomar la Ruta 3
cuando llega tarde es la mejor opción.

A medida que recopila más y más datos, puede comenzar a verificar el


impacto de cada una de estas variables en cuanto a la notificación tardía
para trabajar o no. Por supuesto, cuando se trata de llegar a conclusiones o
tomar medidas, si no puede encontrar un patrón que lo ayude a alcanzar el
trabajo en el menor tiempo posible mediante el uso de estadísticas aquí,
entonces es el momento de buscar otra ruta para trabajar o incluso decidir
que Es hora de cambiar tu lugar de residencia más cerca.

Ahora, si no quiere encontrar otra ruta para trabajar o incluso cambiar su


lugar de residencia, ahí es donde las estadísticas inferenciales pueden jugar
un papel en decir cuánto tiempo le lleva a trabajar en ciertas rutas cuando
toma diferentes modos de transporte. En función de la ruta que elija, el
mejor modo de transporte y, con suerte, el momento ideal después de las 8
AM que puede dejar para el trabajo.

Después de ver un ejemplo básico y cómo podemos usar los datos para
resolver un problema simple, pasemos a comprender las dos categorías
generales en las que se dividen las estadísticas.

Estadísticas descriptivas
Si ha encontrado los términos media, modo, mediana, varianza y
distribución en algún punto de las matemáticas de la escuela secundaria, ya
tiene alguna idea de en qué consiste la estadística descriptiva. ¿Pero para
qué lo usas? ¿En qué se diferencia de las estadísticas inferenciales? A pesar
de lo útiles que son estos métodos de análisis estadístico, ¿existen
limitaciones?

Todas estas son preguntas excelentes que vale la pena abordar


una por una.
Por definición, las estadísticas descriptivas resumen los datos
proporcionados en una muestra sin sacar conclusiones ni hacer
generalizaciones. Por ejemplo, digamos que quiere ver cómo se desempeñó
una clase de 10 estudiantes en materias como Ciencias, Matemáticas e
Inglés.

El promedio de los sujetos como una nueva variable en SPSS

Como instructor, es posible que desee comparar el rendimiento general de


la clase a partir de este conjunto de datos. Si obtiene el promedio de la
materia obtenida por cada uno calculando la media de cada una de ellas,
está resumiendo cómo le ha ido a cada estudiante en general.

Este es el propósito de las estadísticas descriptivas y, simplemente busca


describir en lugar de obtener información sobre qué tan bien los 10
estudiantes podrían haber sido comparados con otros lotes de estudiantes o
clases.

Incluso puede ver cuál es el promedio de la clase para cada estudiante,


como se muestra a continuación:
El promedio de la asignatura de inglés,
matemáticas y ciencias en SPSS

Como te habrás dado cuenta, a estos estudiantes les ha ido mejor en


Matemáticas en comparación con las otras dos materias aquí. Pero, ¿puedes
predecir cómo les irá en futuras pruebas? Usted no puede Esto se debe a
que las estadísticas descriptivas simplemente analizan los datos disponibles
y no pueden estimar cuál es el puntaje promedio de dicha materia para
todos los estudiantes que estudian en la misma clase en toda la ciudad.

Si bien este conjunto de datos simple es lo que se conoce como una


muestra, la población del estudio podría ser todos los estudiantes que
estudian en la misma clase en varias escuelas en una ciudad, estado o
incluso en todo el país. Realmente depende de lo que el investigador
considere como la población del estudio en sí.
Incluso si las estadísticas descriptivas parecen limitadas, la mayoría de los
estudios estadísticos que son de naturaleza inferencial tienden a usar los
resultados de un análisis generado a partir de los métodos prescritos en las
estadísticas descriptivas en una muestra como trampolín para hacer
inferencias para la población en general.

Dicho esto, el enfoque de las estadísticas descriptivas está en la tendencia


central, la distribución y la forma que toma un conjunto de datos como una
distribución de valores que puede representarse mediante una serie de
visualizaciones, como se mencionó en una sección anterior. Si no está
seguro de lo que esto significa, tenga en cuenta que exploraremos este tema
en detalle mucho más adelante.

Estadística inferencial
Teniendo en cuenta la diferencia entre una muestra y toda una población de
datos, existe una limitación con la que generalmente se enfrentan los
estadísticos: no pueden recopilar mucho menos datos de análisis de una
población completa.

Con la tecnología, podríamos recopilar datos


de la población mundial pronto

En otras palabras, si quisiéramos calcular el promedio que todos los


estudiantes en un país obtuvieron para el inglés para un examen en
particular ese año, esto simplemente no es posible. Por lo tanto, los
investigadores a menudo recopilarán una muestra de datos mucho más
pequeña y realizarán cálculos para comprender cómo les fue a los
estudiantes. Pero van aún más lejos al usar métodos prescritos por
estadísticas inferenciales para determinar cómo los estudiantes de una
población podrían obtener un examen de inglés.

Esto no significa que el análisis realizado en muestras no se aplique a datos


que representan poblaciones completas cuando sea posible. La única
diferencia es que cuando calcula la media o la desviación estándar de una
muestra, esta es una propiedad de esa muestra en particular de la fecha. En
el caso de una población completa, su media o desviación estándar se
conoce comúnmente como un parámetro. Es importante tener en cuenta la
diferencia entre los dos al principio de su comprensión de las estadísticas en
su conjunto.
Dicho esto, en la mayoría de los estudios, no es posible recopilar datos de
toda la población para estimar estos parámetros. Además, el sentido común
dicta que es probable que haya un error de muestreo si promedia los salarios
anuales de diez empleados en una empresa en comparación con una
población total de un millón de empleados que trabajan en todo el país. O,
para el caso, ¿qué candidato presidencial va a ganar las elecciones?

Por lo tanto, ante este desafío obvio, la estadística inferencial aplica


métodos para estimar los parámetros, así como para probar las hipótesis
estadísticas establecidas por los investigadores en un estudio. Veremos las
estadísticas inferenciales en un capítulo futuro.

En el siguiente capítulo ...


Ahora, veremos las funciones en los menús desplegables de SPSS. Si bien
esto es solo una introducción a las funciones que están disponibles, intente
recordar dónde se ubican ciertas funciones para saber cuándo usarlas en el
futuro. Tenga en cuenta que todavía no tiene que utilizar estas funciones. Al
menos, no hasta que hayamos terminado con un capítulo sobre estadísticas
descriptivas.
Capítulo 6
Los Menús Del
Editor De Datos De SPSS

Dada nuestra introducción a las estadísticas en el capítulo anterior, ahora


analizaremos los menús de SPSS y las opciones disponibles para el usuario.
Ahora, recuerde que este capítulo también es de carácter introductorio.

Examinar los menús de SPSS que contienen las funciones necesarias para
realizar los cálculos estadísticos que realizaremos en los siguientes
capítulos.

Recuerde que aunque todavía no estamos realizando ningún análisis


estadístico, este capítulo lo ayudará a recordar las funciones clave de SPSS
que utilizarán en el futuro.

Así, sin más dilación, veamos cada uno de los menús que se encuentran en
la esquina superior izquierda de su pantalla.

El menú de archivos
El primer menú que ver es el menú Archivo, que tiene ocho funciones que
ayudan a administrar sus sistemas de datos, salida y archivos de sintaxis.
El menú de archivos

Nuevo abierto
Cuando apuntamos el mouse directamente sobre Nuevo, podremos abrir un
nuevo conjunto de datos, un script de sintaxis, un archivo de salida o un
script de Python 2 o 3. Esto no es diferente con la opción Abrir también.

Exportar e importar datos


En cuanto a la función Exportar, debería poder exportar un conjunto de
datos creado en SPSS como un archivo .csv. La función Importar le permite
llenar datos en un nuevo conjunto de datos de SPSS desde archivos .csv y
Excel.

Guardar y Guardar como


Guardar y Guardar como le permite guardar un conjunto de datos recién
creado y un script de Sintaxis como un archivo .spv y .sps.

Cerrar sesión y salir


Finalmente, la opción Cerrar sesión y Salir le permite cerrar la sesión de su
ID de IBM ingresada cuando instaló SPSS por primera vez y cerró. Si no
tiene una razón sólida para hacerlo, entonces es preferible usar la opción
Salir.

El menú de datos
Como se puede decir, el menú Datos se ocupa de una serie de funciones que
implican la manipulación de datos que se encuentran en variables y casos.
Entonces, examinemos algunos de estos que usará más comúnmente:

Identificar Casos Duplicados


Esta función nos ayuda a encontrar casos que se repiten. Como comentamos
anteriormente, los casos faltantes o duplicados pueden significar que el
análisis que llevamos a cabo no producirá resultados precisos.
El menú de datos

Identificar casos inusuales


Esta función le ayuda a identificar casos que son inusuales dentro de un
rango de valores. También conocidos como valores atípicos, estos valores
numéricos se encuentran fuera del rango de los datos que estamos viendo.
En el caso de datos cualitativos, busca entradas que sean diferentes de las
demás. Esta función es muy útil porque le permite detectar datos
incorrectos, ya sea que falten o no.

Casos seleccionados
Ahora, si está buscando un rango de valores numéricos o no numéricos en
el conjunto de datos bajo una variable particular, puede usar esta función
para encontrar estos valores. Por supuesto, tiene que especificar ciertas
condiciones usando operadores para tamizar a través de los datos.

Ordenar los casos


Ahora, puede ordenar los casos según los valores de una variable en
particular, ya sean numéricos o no numéricos. De forma predeterminada,
esta opción le ayuda a hacer esto en el orden ascendente.

Ordenar variables
Con esta opción, puede reorganizar las variables en cualquier conjunto de
datos por Medida, Etiqueta, Nombre, Tipo, Decimales y Valores. Si
recuerda, estas son las características por las que definió sus variables al
principio.

Fusionar archivo
Si desea combinar un conjunto de datos con el actual con el que está
trabajando, puede seleccionar la opción Fusionar archivo.

Archivo dividido
Puede usar esta función para dividir el archivo en grupos de casos que
puede analizar más a fondo. Digamos que tienes un conjunto de datos que
contiene estudiantes de dos escuelas. Puede dividir el conjunto de datos en
dos clasificando los datos de los estudiantes según la escuela a la que
asisten.

El menú Transformar
Mientras que el menú de datos ayuda con las variables y los casos, pero no
manipula directamente los datos en sí, el menú de transformación nos ayuda
a hacer mucho más con los datos que tenemos. Veamos algunas de las
funciones comunes utilizadas en este menú:

Calcular variable
Esta función nos ayuda a calcular nuevas variables a partir de las existentes.
Por ejemplo, si necesita encontrar el rendimiento promedio de los
estudiantes en un conjunto de datos, puede usar las funciones
proporcionadas cuando selecciona esta función para hacerlo. Los datos que
obtenga al calcularlos se agregarán a una nueva variable.

Valores de cambio
Esta función le ayuda a mover una variable completa para cualquier
propósito. A primera vista, esta función parece ser un método mediante el
cual puede copiar los datos de una variable completa en otro lugar.

Recodificar en las mismas variables


Si por alguna razón desea usar números para representar datos cualitativos,
puede usar esta función para recodificar los datos de datos no numéricos a
numéricos. Tan pronto como haya terminado de aplicar los cambios, los
datos de la variable seleccionada cambiarán de inmediato en el editor de
datos.

Por esta misma razón, no es seguro usar esta función, a menos que esté muy
seguro. Una razón para esto es porque no puede deshacer fácilmente los
cambios realizados, lo que puede hacer que pierda los datos ingresados para
esa variable en particular.

Recodificar en diferentes variables


Al igual que la función anterior, esta le ayuda a recodificar los datos en una
variable. Sin embargo, la diferencia es que se rellena en otra variable en
lugar de cambiar los datos en la variable que se ha elegido para la
recodificación.

Reemplazar valores perdidos


Esta función lo ayuda a agregar valores faltantes en cualquier variable para
asegurarse de que ha llenado todos los puntos de datos. Si bien no es bueno
que falten puntos de datos, a veces solo tendrá que usar esta función.

El menú Analizar
El menú Analizar es importante para el usuario principiante, intermedio y
experto de SPSS. Hay varias opciones disponibles en este menú que se
adaptan al tipo de análisis de datos que intenta realizar, desde estadísticas
descriptivas a inferenciales.

El menú Analizar

Si bien es posible que no sea posible ejecutar pruebas para cada una de las
opciones de esta lista, podrá comprender qué harán estas funciones, ya que
cubrimos las opciones en teoría estadística de la manera más simple
posible.
El menú de visualización
Como puede ver, el menú Visualizar solo tiene una opción: Generador de
gráficos.

El menú de visualización

Tan obvio como es Chart Builder, puedes trazar varios tipos de gráficos
dependiendo de las variables y los valores en tu conjunto de datos.

Puede encontrar una lista de los tipos de gráficos tan pronto como
seleccione la opción Generador de gráficos, como se muestra a
continuación:

Chart Types in the Chart Builder Menu

Construiremos algunos de estos gráficos en el futuro, por lo que visitaremos


este menú en capítulos futuros.

El menú de utilidades
El menú Analizar es el segundo último menú que cubriremos en este
capítulo y tiene algunas características extendidas que se pueden usar si
desean automatizar sus tareas.

El menú de utilidades

Ejecutar guión
Como se mencionó anteriormente, podemos abrir los scripts de Python 2 y
3 para SPSS en las opciones Nueva y Abrir en Archivo. La función Ejecutar
secuencia de comandos te ayuda a ejecutar los mismos scripts que has
cargado.

Planta de producción
En función de la rapidez con la que aprenda a utilizar SPSS, llegará un
momento en el que deberá ejecutar el mismo análisis repetidamente. Si bien
esto puede ser aburrido, ser capaz de automatizar y ejecutar ciertos análisis
como este puede ayudarlo a continuar con otras tareas mientras tanto. Un
ejemplo de esto es generar informes semanales. Ahora, cuando usa esta
función, puede continuar trabajando en un análisis mientras este trabajo se
ejecuta en segundo plano. Por supuesto, también puede programarlo para
que se ejecute a una hora específica.

El menú de ayuda
El Menú de Ayuda es el último menú que cubriremos en este capítulo y
tiene mucho que ver con obtener más información sobre cómo usar SPSS o
hacerlo mucho más fácil. Es una curva de aprendizaje nítida cuando se
navega por SPSS por primera vez, por lo que es necesario acceder a los
temas de Ayuda con regularidad.

El menú de ayuda

Ayuda en el editor de datos


La selección de esta opción lo lleva a los archivos de ayuda de SPSS
disponibles en Internet y a una página específica basada en la última acción
que tomó cuando usó el Editor de datos. Por ejemplo, si intentaba
programar un trabajo de producción en Utilidades, al seleccionar esta
opción lo llevará al archivo de ayuda para esta opción.

Temas de ayuda
La selección de esta opción lo lleva a la página principal donde tiene acceso
a Tutoriales, Casos de estudio y Referencia para la sintaxis de comandos, y
así sucesivamente.

Soporte de SPSS
La selección de esta opción lo lleva a la página de desarrollador de IBM,
donde puede obtener información sobre licencias y otras consultas
relacionadas con SPSS. Dado que hay una serie de características que
vienen con los paquetes de software, las personas se atascarán si intentan
realizar análisis estadísticos complejos. El soporte de SPSS puede ayudarte
con eso.

Referencia de sintaxis de comandos


Como se mencionó anteriormente, puede automatizar su análisis utilizando
la sintaxis de SPSS. Como principiante, usará la mayoría de los menús, pero
con el tiempo, puede invocar comandos de Sintaxis para ejecutar análisis
una y otra vez. Cuando selecciona esta opción en el menú Ayuda, se le
dirigirá a una página de Ayuda en línea que enumera todos los comandos de
Sintaxis utilizados.

Herramienta de informe de compatibilidad


Ahora, esta opción le ayuda a encontrar información sobre los sistemas
operativos que admiten un producto en particular. Se le dirige a una página
que lo ayuda a encontrar información sobre cualquier software relacionado
con IBM que le interese utilizar para su negocio.
Comunidad de IBM SPSS Predictive Analytics
Dado que los creadores de SPSS literalmente le dieron vida al campo de
Predictive Analytics, hay toda una comunidad a su disposición para
ayudarlo con sus tareas de análisis de datos. No solo puede leer el blog
oficial de SPSS, sino que también puede obtener respuestas y descargar
extensiones desde la página a la que se dirige cuando selecciona esta opción
en el Menú de Ayuda.

Abrir carpeta de registro


Como era de esperar, cuando seleccione esta opción, se lo dirigirá a una
carpeta que le dará acceso a los archivos de registro que contienen
información cuando está instalando o trabajando con SPSS. Estos archivos
son muy útiles si está resolviendo problemas. Dado que requiere
conocimientos técnicos, esta opción generalmente es para que los
administradores de sistemas o desarrolladores accedan y resuelvan
cualquier problema con su instalación de SPSS.

Háganos saber acerca de su experiencia


Como la última opción en el menú Ayuda, tienes la oportunidad de
compartir tu experiencia sobre SPSS a través de una encuesta de
comentarios. No solo tendrá que proporcionar información sobre su rol de
trabajo, organización y sistema operativo, sino que también puede decirles
qué tan satisfecho estaba con el uso de una serie de funciones de SPSS.

Acceso rápido a funciones importantes


Ahora hay algunas funciones que se muestran en un formato de barra de
herramientas a las que se puede acceder rápidamente y que están resaltadas
en rojo en la figura de arriba. Veamos cada una de estas funciones de
izquierda a derecha.
Funciones clave en un formato de barra de herramientas

Abrir conjunto de datos


Como es evidente, puede abrir un segundo conjunto de datos con esta
opción. O abre el primero, si aún no lo has hecho. Como aprendimos en un
capítulo anterior, se puede acceder al conjunto de datos abierto en una
segunda pestaña.

Guardar como
Al igual que la opción Guardar como en el menú Archivo, puede guardar un
nuevo conjunto de datos seleccionando esta función.

Insertar variable
Puedes insertar una nueva Variable con esta opción, pero primero debes
seleccionar una celda en la columna derecha cuando quieras ingresar tus
valores.

Insertar caja
Puede insertar una nueva caja usando esta opción, pero asegúrese de
seleccionar una celda en la fila derecha para ingresar sus valores.

Exportar
Al igual que la opción Exportar datos en el menú Archivo, puede exportar
un conjunto de datos en formato .csv cuando selecciona esta opción.

Generador de gráficos
Similar a la función Generador de gráficos en el menú Visualizar, puede
seleccionar esta opción para crear un gráfico de su elección.
Encontrar y reemplazar
Puede ubicar datos en cualquier celda usando esta opción. Esto realmente te
será útil si tienes varias variables y casos por los que pasar.

Otro caso y funcionalidad de menú variable


Ahora, cuando hace clic con el botón derecho en el área de la hoja de datos
o en cualquiera de los números de cuadros, encontrará un menú que implica
la manipulación de casos que se abren

Haga clic derecho en el área de Cuadros numerados


Seleccione cualquier opción en este menú para editar sus cuadros

Aquí hay un resumen de lo que estas acciones relacionadas con los cuadros
pueden ayudarlo con:

Inserte el cuadro arriba


La selección de esta opción le ayuda a insertar un solo cuadro sobre la celda
resaltada seleccionada actualmente.

Inserte el cuadro debajo


La selección de esta opción le ayuda a insertar un solo cuadro debajo de la
celda seleccionada actualmente seleccionada.

Eliminar celda
Como es evidente, esta opción elimina un solo cuadro, pero debe resaltar
una celda en ese caso. También puede seleccionar varias celdas en casos
consecutivos y eliminarlas como resultado.

Deshacer rehacer
La mayoría de los usuarios de computadoras estarían familiarizados con
estas dos opciones. El primero le permite deshacer la acción anterior,
mientras que el último repite la acción.

Como se muestra a continuación, podemos acceder a otro menú que se


mostrará cuando haga clic derecho en el área donde se encuentran los
nombres de las variables:
Haga clic derecho en cualquiera de los nombres de variables

Además, otro menú se abre con las siguientes opciones y solo cubriremos
algunas básicas por ahora:

Algunas opciones del menú variable también


están disponibles en otros menús
Como puede ver, todas estas funciones u opciones pertenecen a la edición
de variables. Veamos lo que ofrecen algunas de estas opciones, en términos
de funcionalidad:

Cortar, Copiar y Pegar (cut,copy y paste)


Tan ubicuas como son estas acciones, estas le permiten cortar, copiar y
pegar datos en una sola variable o en varias de ellas.

Mientras que cortar o copiar es simple, la función de pegar es un poco más


compleja. Para pegar datos en una nueva variable, busque los tres puntos
marrón alineados verticalmente en esa etiqueta de Variable y seleccione ese
menú desplegable.

Seleccione este menú para pegar datos variables

Cuando complete esta acción, debe encontrar el menú desplegable como se


muestra a continuación:
Seleccione Pegar en el menú para agregar
los contenidos seleccionados.

Seleccione Pegar e ingrese los datos que ha cortado o copiado de otra


variable.

Insertar variable
Esta opción le permite insertar una variable.

Calcular variable
Esta opción le permite agregar una nueva variable con datos que se han
computado como aritméticos, trigonométricos o incluso estadísticos.

Buscar y reemplazar
Use esta opción para encontrar un punto de datos y reemplazarlo con los
datos correctos.

Quitar variable
Puede utilizar esta opción para eliminar una variable completa.
Claro
Utilice esta opción para borrar los datos de una variable seleccionada.

Ocultar y mostrar variable


Tiene la capacidad de ocultar una sola variable de datos. Después de lo cual,
puede mostrar la variable abriendo nuevamente el menú desplegable
anterior.

En el siguiente capítulo ...


Ahora que hemos explorado los diversos menús de SPSS y sus funciones,
permítanos continuar con nuestra discusión teórica de estadísticas
descriptivas en el próximo capítulo.
Capítulo 7
Estadísticas descriptivas

Como se mencionó en un capítulo anterior, las estadísticas descriptivas


están en todas partes. Lo leemos en los periódicos, blogs, libros de texto, e
incluso los vemos cuando vemos televisión. Si bien varios campos de datos
que pertenecen a un grupo de estrellas de cine o jugadores de fútbol podrían
decirte nada, las estadísticas descriptivas vienen al rescate por esa misma
razón.

Las estadísticas descriptivas te ayudan


a encontrar promedios o medias

En otras palabras, cuando ejecuta un análisis de cualquier conjunto de datos


utilizando los métodos prescritos en las estadísticas descriptivas, revelan
varias perspectivas sobre este conjunto de datos que no podría descifrar de
otra manera. Es incluso mejor si tiene más datos del pasado que sirven de
contexto y puede ayudar a comparar estos dos conjuntos de datos para
detectar una tendencia positiva o negativa.

Por supuesto, solo decir esto no significaría nada sin ejemplos concretos,
donde el análisis de datos utiliza estadísticas descriptivas.

Aplicaciones comunes de estadística descriptiva


Estas son algunas de las situaciones comunes en las que las estadísticas
descriptivas han demostrado ser útiles:

1: Dado que una empresa como Google o Microsoft tiene que publicar
informes trimestrales de ganancias o pérdidas generadas, una serie de
estadísticas desarrolladas en estos informes son generalmente de naturaleza
descriptiva.

2: La gerencia de la escuela o la universidad querría saber cómo se están


desempeñando sus estudiantes cada año en las materias que toman. Por
supuesto, los resúmenes de los datos que recopilan se comparan
generalmente con los datos obtenidos de otras escuelas. Una de las formas
más simples en que se usan las estadísticas descriptivas al final del año es
cuando clasificamos a los estudiantes de acuerdo con sus calificaciones o
calificaciones y donde los estudiantes con mejores calificaciones llegan a
una lista especial. Cuanto mayor sea tu CGPA, mejor estarás en la escuela.
¿Recuerdas cuán divertidas eran las pruebas
para tomar en la escuela secundaria?

3: Durante el tiempo de elección, la gente podría querer saber qué candidato


podría ganar la elección basándose en datos históricos. Este tipo de análisis
de datos se realiza en gran profundidad como una forma de predecir quién
podría ganar la elección. Por supuesto, la recolección de datos para un
análisis tan difícil tiene que ser muestreada, pero las estadísticas
descriptivas todavía se utilizan aquí.

4: otro uso popular de las estadísticas descriptivas en estos días implica la


evaluación de los esfuerzos de marketing en línea.

5: Esta lista no estaría completa sin los bloggers que hacen listas de
clasificación sobre las estrellas de cine, futbolistas y CEO de tecnología
mejor pagados, y así sucesivamente hoy en día.
Dicho esto, examinemos el conjunto de datos una vez más, pero a la luz de
las estadísticas descriptivas.
Examinando conjuntos de datos y su distribución
Como se definió anteriormente, un conjunto de datos limpios consta de
variables y casos con puntos de datos que son auténticos y válidos. Casi
cualquier conjunto de datos contendrá una lista de valores que se
encuentran dentro de un rango, con la excepción de unos pocos valores.

Cuando creamos un gráfico que mapea estos valores, obtenemos lo que


comúnmente se conoce como una curva en forma de campana. Aquí es
donde la mitad de los valores se ubican en la parte izquierda de la curva y la
otra mitad se ubica a la derecha. Además, se puede ver que la mayoría de
los valores tienden a agruparse cerca del centro cuando visualizamos los
valores en el conjunto de datos mediante un gráfico.

La curva en forma de campana.

Se dice que tales distribuciones son simétricas debido a la forma de la curva


en forma de campana que se ha formado, gracias a una dispersión de los
valores que favorecen la agregación en el centro.

¿Por qué deberíamos saber esto?


La mayoría de los conjuntos de datos cuyas observaciones derivadas de la
naturaleza tienden a seguir esta curva en forma de campana. Dicho esto, no
todos los conjuntos de datos cuando se trazan mostrarán esta distribución,
pero aún así es importante entender qué es una distribución normal o
simétrica en relación con cualquier conjunto de datos de valores que pueda
usar para el análisis.

Incluso si este tema generalmente se menciona cuando los alumnos estudian


temas como la probabilidad y las variables aleatorias; ser capaz de
visualizar su conjunto de datos de valores como una distribución de valores
puede establecer el escenario para las mediciones que intentamos llevar a
cabo en las estadísticas descriptivas e inferenciales.
Tenga en cuenta esta curva en forma de campana cuando comencemos a
analizar las medidas de la tendencia central, la distribución y la forma en las
siguientes secciones.

¿Qué miden las estadísticas descriptivas?


Ahora, hay tres aspectos generales que las estadísticas descriptivas intentan
medir: tendencia central, propagación y forma. Todas las medidas descritas
en estos tres aspectos contribuyen a poder hacer predicciones precisas a
partir de una muestra de datos. Pero por ahora, definamos y entendamos
cómo calculamos cada una de estas estadísticas con cualquier conjunto
dado de valores en un conjunto de datos.

Medidas de tendencia central


El término "Tendencia central" se puede entender simplemente como la
probabilidad de que los valores de un conjunto de datos se ubiquen lo más
cerca posible del centro. Ahora, hay tres medidas que entran en esta
categoría:

Media
También conocido como el promedio de los valores, obtenemos esta
estadística al dividir la suma de todos los valores por el número de valores
para una sola variable.

Un ejemplo simple debería explicar cómo calculamos la media aquí, si uno


no está familiarizado con el procedimiento ya.

La primera medida de la tendencia central.

Digamos que tenemos una variable que consta de 5 valores, a saber 10, 12,
8, 16 y 6. Cuando sumamos los valores, obtenemos un total de 52.

De acuerdo con la fórmula, tenemos que dividir 52 por 5 y obtener una


media de 10.4.
Simple, si?

Por lo tanto, vamos a pasar a la siguiente medida de la tendencia central.

Mediana
Por definición, la mediana es el valor que se encuentra en el centro de un
conjunto de valores y que se identifica una vez que el conjunto se ordena en
orden ascendente.

Sí, algo como esta mediana!

Por ejemplo, veamos la misma lista de cinco valores que usamos para
calcular la media que es 10, 12, 8, 16, 6.

Cuando reorganizamos los valores en orden ascendente, obtenemos: 6, 8,


10, 12, 16.

Como es evidente, el tercer valor en el conjunto es el valor más centrado.


Entonces, la mediana para este conjunto de valores es 10.

Ahora, cuando tenemos un número par de valores en un conjunto como


6,6,8,9,10,11, seleccionamos los dos valores medios y encontramos el
promedio. En este caso, 8 + 9/2 nos dará 8.5. Esta es la mediana del
conjunto.
Una buena razón por la que esta medida se usa a veces es porque aún puede
darnos una buena idea de la ubicación del valor central a pesar de tener un
número de valores demasiado alto o bajo.

Modo
Esta medida nos dice qué valor ocurre más en un conjunto de valores. Por
ejemplo, si nuestro conjunto de datos consta de diez puntajes de estudiantes
en una prueba de inglés como 90, 89, 97, 84, 90, 69, 73, 90, 99, 90.

Entonces, ¿qué puntaje de inglés fue más común aquí? 90, como puedes
ver.

Aprender a contar siempre ha sido parte de las matemáticas.

Para este ejemplo simple, se considera que el modo es 90 incluso si hay


ocasiones en que puede obtener dos números que ocurren la mayor cantidad
de veces. Aún así, el cálculo del modo puede ser útil cuando tenemos datos
categóricos como parte de nuestro conjunto de datos.
Dicho esto, hemos analizado las tres medidas de la tendencia central y
ahora pasaremos a una medida menos común que uno podría haber
encontrado en las estadísticas descriptivas.

Medidas de propagación
Mientras que las medidas de tendencia central encuentran el valor medio o
el promedio de un conjunto de valores, las medidas de propagación tienden
a mirar la distribución de los valores desde el valor más bajo hasta el valor
más alto del conjunto. Esta medida importante llamada varianza define qué
tan cerca o alejados están todos los valores de un conjunto.

Mínimo, máximo y rango


Esta medida es fácil de calcular. Encontramos el máximo y el mínimo valor
en el conjunto y encontramos la diferencia.

Por ejemplo, si tomamos este conjunto de 5 valores que consisten en 6, 8,


10, 12, 16, 6 es el valor mínimo, mientras que 16 es el valor máximo.

Por lo tanto, cuando encontramos la diferencia entre los dos, obtenemos el


valor 10. Este es el rango de todo el conjunto de valores.

Rango intercuartil
El término "cuartil" se define como una de las cuatro partes iguales en que
se puede dividir un conjunto de valores. Los valores de estos cuartiles son
el valor medio o la mediana de cada una de estas partes y se suele
denominar Q1, Q2 y Q3.
Cuartiles, como se representa visualmente

Tomemos un conjunto de 10 valores como 30, 32, 32, 35, 38, 42, 46, 48, 50,
50.

Del aprendizaje previo, ¿cuál sería la mediana aquí? Podemos calcular que
sea 38 + 42/2, que es igual a 40.

Ahora que hemos calculado la mediana del conjunto o Q2, es hora de


encontrar los valores medios de los otros dos cuartiles donde Q1 consiste en
los valores 30, 32, 32, 35, mientras que Q3 consiste en valores como 46 48,
50, 50.

Encontramos la mediana del cuartil Q1 encontrando la mediana, donde 32 +


32/2 da 32. Entonces, el valor de Q1 es 32. Finalmente, calculamos el valor
de Q3 encontrando la mediana del cuartil superior, donde 48 +50/2 da como
resultado que la mediana es 49.

Dicho esto, dado que la fórmula para encontrar el rango intercuartil es Q3-
Q1, realizamos el siguiente cálculo: 49-32 = 17.
De acuerdo con la teoría de la curva de campana que vimos al principio, se
dice que la mayoría de los valores de un conjunto de datos se encuentran en
el medio. Entonces, cuando calculamos el rango intercuartil, podemos ver
dónde se encuentran la mayoría de nuestros valores.

Pero ¿por qué calculamos el IQR? Primero, podemos ver la propagación de


valores en el conjunto de datos. Es importante destacar que también
podremos identificar los valores atípicos en el conjunto. Estos son valores
que están alejados de la mayoría de los otros valores en el conjunto.

La forma en que hacemos esto es determinando el rango del conjunto


utilizando dos fórmulas. Para el límite inferior, usamos la fórmula, Q1 - 1.5
* IQR. El límite superior está determinado por la fórmula, Q3 + 1.5 * IQR.
Cualquier valor en el conjunto que se encuentre fuera de estos límites se
conoce como valores atípicos.

Diferencia
Para calcular la varianza, primero encontramos la diferencia entre cada
valor en el conjunto y la media aritmética, que es cuadrada para compensar
las diferencias positivas y negativas. Después de esto, obtenemos la suma
de los valores al cuadrado y la dividimos por el número de valores de datos
menos uno en el conjunto.

Vamos a demostrar esto con un ejemplo. Considera el conjunto con cuatro


números 1,2,3,4. La media aritmética de este conjunto es 2.5. Para calcular
la varianza en este conjunto, esto es lo que hacemos:

Paso 1: (1-2.5) ^ 2 + (2-2.5) ^ 2 + (3-2.5) ^ 2 + (4-2.5) ^ 2


dividido por 4

Paso 2: 2.25 + 0.25 + 0.25 + 2.25 dividido por 4

Paso 3: 5 dividido por 3

Su varianza después de completar este cálculo es 1.67.


Desviación estándar
Uno podría preguntarse si calculamos la varianza, ¿por qué necesitamos la
medición de la desviación estándar? Después de todo, la desviación
estándar es solo la raíz cuadrada de la varianza que acabamos de calcular.

Donde x es la variantecalculada
En el ejemplo anterior, eso equivale a 1.29. Entonces, ¿por qué necesitamos
este valor?

Desafortunadamente, como tuvimos que cuadrar la diferencia entre cada


uno de los valores de la media, el valor final con el que terminamos no es el
mismo que la unidad de medida original. En otras palabras, si nuestro
conjunto consistiera en valores medidos en centímetros, la variación
tomaría la unidad de centímetro cuadrado. Esto se debe a que de 5 a 5 cm
nos da 25 centímetros cuadrados. Nuestro nuevo valor no es la longitud,
pero se ha convertido en una unidad de área.
Para reducirlo a la unidad de medida original, encontramos la raíz cuadrada
de la varianza, que es lo que llamamos desviación estándar.

Dicho esto, cuando se obtiene un alto valor de desviación estándar, significa


que los valores en el conjunto se distribuyen en un amplio rango y
viceversa.
Habiendo examinado estas dos medidas importantes en las estadísticas
descriptivas, veamos la medida final, y esa es la forma de la distribución de
los valores.

Medidas de forma
Al observar este aspecto de las estadísticas descriptivas, nos preocupa sobre
todo si nuestros valores observados adoptan la forma de una distribución
normal o sesgada.

Como ya mencionamos anteriormente que las distribuciones normales


también son simétricas, las distribuciones sesgadas apuntarían al hecho de
que los valores observados que hemos utilizado en nuestro análisis
conducen a una distribución asimétrica.

En el caso de una distribución normal, sabemos que sigue la regla 3-sigma.


Sin embargo, no todas las distribuciones tienen esta forma, que es donde
entran dos medidas: asimetría y curtosis.

Asimetria

La asimetría de una distribución se calcula al determinar qué tan centrada


está la media de la distribución en relación con sus valores. Ayuda a poder
determinar qué medida de tendencia central es más aplicable al conjunto de
datos en cuestión. Se dice que una distribución normal tiene una medida de
sesgo cero.
Sí, existe una medida de falta de simetria

En otros casos, si la mayoría de los valores se concentran hacia la derecha


mientras que la cola hacia la izquierda es más larga, se dice que la
distribución está sesgada negativamente. Cuando la mayoría de los valores
se concentran hacia la izquierda con una larga cola derecha, se dice que está
sesgada positivamente. Otra forma de determinar si está sesgada de manera
positiva o negativa es observar los valores de la media, la mediana y el
modo. En el caso del primero, la media y la mediana serán más pequeñas en
valor que el modo, mientras que en el último, sus valores serán más
pequeños. Una distribución sin sesgo tendrá valores medios, medios y
modos idénticos.

Podemos calcular la asimetría utilizando la fórmula que usa el número de


valores en un conjunto, la desviación estándar de la distribución, así como
el cubo de la suma de la diferencia entre cada uno de los valores y su media
aritmética.

¿Pareces complicado? No te preocupes SPSS calculará esto para usted de


todos modos, que es lo que veremos en el siguiente capítulo.

Curtosis
La curtosis es otra medida de la forma que se ocupa de las colas de una
distribución. Si recuerda la distribución normal que vimos por primera vez,
se dice que las dos líneas que parecen cumplir con el eje x en un punto dado
son las colas de la distribución.

Cómo cada una de las colas tiene forma de contar una historia

Mientras que la asimetría nos ayuda a determinar qué medida de tendencia


central es la más apropiada, la curtosis analiza los valores atípicos en la
distribución. Si hay más valores atípicos, las colas de la distribución serán
mucho más largas. Si hay muy pocos, entonces la distribución en cuestión
es tan normal como puede ser.
Los estadísticos buscan una curtosis alta o baja para determinar si tienen
demasiados valores atípicos en el conjunto de datos en sí. En otras palabras,
puede haber algo malo en la forma en que recopilan las observaciones.
Obviamente, esto significa que tienen que repetir el proceso nuevamente o
eliminar los valores atípicos no deseados del propio conjunto de datos.

La importancia de usar gráficos


Admitámoslo: nos encanta el contenido visual mucho más que textual. Al
menos, la mayoría de nosotros lo hacemos. De hecho, incluso antes de que
hayamos procesado esta información, mostramos interés en la información
visual porque también es atractiva para la vista.
Según los resultados de varios estudios, nuestro cerebro tarda
aproximadamente un cuarto de segundo en procesar la información visual
que captamos. Esto no es así con el texto. En otras palabras, es más fácil.
Este tipo de comunicación realmente ayuda, ya que la atención se ha
reducido a casi 8 segundos en la actualidad.

La obra de arte de Albert Bierstadt sobre la naturaleza ...


¿vale más que un millón de palabras?

Dicho esto, si es más fácil procesar e interpretar la información visual,


también nos resulta mucho más fácil retener esa información. De hecho,
estamos programados para procesar la información de esta manera, por lo
que solo tiene sentido que el mundo, con las nuevas tecnologías digitales a
nuestra disposición, las utilice con gran efecto para convertir información
textual o numérica en imágenes informativas y atractivas.
Claramente, este estudio sobre visuales funciona en conjunto con el uso de
gráficos para estadísticas descriptivas. Incluso si no nos centramos en hacer
atractiva esta forma de información visual, cualquier gráfico que utilicemos
debe ser claro y legible. O bien, el propósito sería derrotado.
¿Claro y legible?

Hay otra razón por la que el uso de gráficos ayuda. Digamos que los datos
son complejos de entender simplemente en términos de números o texto.
Una representación visual puede ayudarnos a obtener información si existe
una relación entre dos variables o si podemos ver una tendencia. En otras
palabras, si un gráfico nos ayuda a comprender la información con claridad,
sería prudente utilizarla. O si no, no sería necesario en absoluto, ¿no?

Otro aspecto a considerar sería el uso del tipo correcto de gráfico para
mostrar información que sería útil para el espectador. Existen varios tipos
de gráficos que se utilizan para tipos específicos de experimentos, que es
algo que vale la pena considerar, dadas las variables dependientes e
independientes de las que ha recopilado datos en dicho experimento.

Por último, hay algunos errores que se deben tener en cuenta al crear un
gráfico. Los datos duplicados son un no-no, mientras que la falta de
leyendas y etiquetas puede hacer que el lector malinterprete lo que está
tratando de transmitir. Aún así, la mayoría de estos errores se pueden
eliminar al usar SPSS, ya que el cuadro que crea requiere información
detallada.

Dado que la preparación de gráficos va de la mano con estadísticas


descriptivas, ahora veremos los tipos más comunes de gráficos disponibles
para diferentes conjuntos de datos.

Presentación de estadísticas descriptivas utilizando tablas y


gráficos
Como se mencionó anteriormente, cada uno de estos tipos de gráficos se
puede usar de manera efectiva dependiendo del tipo de datos que haya
recopilado en su experimento. Para poder usar bien los gráficos en SPSS,
echemos un vistazo más de cerca a los tipos comunes de gráficos que se
utilizan en las estadísticas descriptivas:

Gráficos de líneas y series múltiples


Estos eran los gráficos más comunes que se usaban cuando estábamos en la
escuela, ¿no? Tiene los ejes X e Y en los que trazaría los puntos de datos
para la variable independiente en el eje X y la variable dependiente en el eje
Y.

Cambios de temperatura diaria


¿Puedes ver cómo cambia la temperatura cada 3 horas?
Entonces, ¿qué hace el gráfico de líneas? En este ejemplo, se puede ver que
realmente ganamos velocidad en el cuarto segundo en comparación con la
velocidad en el tercer segundo.

En otras palabras, esto significa que podemos comparar los cambios en la


velocidad con el paso de cada intervalo de tiempo aquí. Para cualquier
persona que viva en una ciudad con tales cambios de temperatura, sabrá qué
calor o frío hace en cualquier momento del día o de la noche, siempre y
cuando haya analizado grandes cantidades de datos.

Comparación de temperaturas multilineal del sábado y el domingo

Comparación de temperaturas en un gráfico multilínea

Se puede decir claramente que la temperatura promedio del domingo fue


mucho más baja que el sábado. A medida que vea esta tendencia durante
varios domingos, sabrá que este día es un excelente día para salir. Puede
analizar las tendencias de temperatura para cada día de la semana durante
varios meses y llegar a qué día es el más fresco de los datos que analiza.

Gráficos circulares

Este es otro gráfico común que se utiliza cuando desea agrupar datos
cualitativos de una manera que produzca resultados cuantitativos. Dado que
el pastel generalmente se corta en trozos grandes y pequeños y nos da un
sentido visual de la proporción, uno puede hacer lo mismo fácilmente
cuando se usa un gráfico circular. Digamos que quería averiguar la
separación de los clientes jóvenes, de mediana edad o ancianos que visitan
su tienda en línea todos los días.

Ventas de frutas representadas en un gráfico circular

Por supuesto, puede recopilar conjuntos completos de datos como este


durante meses y comenzar a atender a los clientes de un grupo de edad
específico mostrando los productos que más les gusten.
Histogramas y gráficos de barras
Mientras que un histograma representa la frecuencia de datos numéricos
que son continuos, los gráficos de barras representan la frecuencia de datos
cualitativos.

Sin embargo, la diferencia entre los dos es que el primero muestra los datos
utilizando intervalos numéricos continuos como contenedores, mientras que
el segundo no lo hace.

Veamos la diferencia entre un histograma y un gráfico de barras usando dos


conjuntos diferentes de datos.

Resumen de puntuaciones de matemáticas

Para el histograma, queremos ver cuántos estudiantes obtuvieron puntajes


entre 50 y 100 en matemáticas. Para los gráficos de barras, veamos cuánta
gente conoce diferentes deportes.
Gráfico de barras para los espectadores deportivos

Si observa la etiqueta del eje X para el gráfico de barra de visores de


deportes, encontrará que es una variable categórica. Por otro lado, la
etiqueta del eje X para el histograma de puntaje de Matemáticas es una
variable numérica donde los intervalos continuos sirven como contenedores
para contar los diferentes valores.

Diagrama de caja
A medida que se acerca la idea de cómo los datos forman una distribución
normal, el diagrama de caja es otro método gráfico que puede revelar la
distribución de valores para dicho conjunto de datos. Si bien las medidas de
la tendencia central son pocas, encontrar la distribución de estos valores
también importa.
Gráfico de caja para los puntajes de las pruebas de matemáticas

Dicho esto, el uso del diagrama de caja no solo le dará la mediana, sino que
también proporcionará información visual sobre el rango intercuartil, los
bigotes, los valores atípicos y los valores mínimo y máximo de la
distribución.

Como resultado de esta información, también podrá averiguar si la


distribución está sesgada o no o si el rango de valores en la distribución
cumple con las condiciones para una distribución simétrica.

Gráfico de dispersión
Por último, pero no menos importante, observamos el diagrama de
dispersión que también traza las variables de manera similar al gráfico de
líneas donde la variable independiente generalmente está en el eje x y la
variable dependiente se traza a lo largo del eje y.
Ventas de limonada utilizando un gráfico de dispersión

El gráfico de dispersión se utiliza cuando intenta encontrar una correlación


entre estas dos variables de datos y le gustaría generar una línea de mejor
ajuste o una línea de tendencia. Para ello tendrás que dibujar una línea lo
más cercana posible a todos los puntos.

Si lo hace con éxito, resultará en la actividad en la que puede obtener


valores de la interpolación y la extrapolación para obtener conclusiones del
conjunto de datos general. Se debe tener cuidado con la extrapolación ya
que esto implica determinar valores que están fuera del rango del conjunto
de datos en uso.

En el siguiente capítulo ...


Veremos los pasos involucrados en el cálculo de cada una de las medidas
que analizamos en estadísticas descriptivas para la tendencia central, la
distribución y la forma en SPSS. En otras palabras, ahora aplicaremos la
teoría aprendida en este capítulo mediante la realización de análisis de datos
en una variedad de conjuntos de datos creados.
Capítulo 8
Cálculo de estadísticas
descriptivas utilizando SPSS

Luego de nuestra comprensión de las estadísticas descriptivas y los gráficos


en los últimos dos capítulos, es hora de poner todo junto realizando un
análisis de datos para encontrar las medidas de la tendencia central, la
dispersión y la forma.
Aunque hemos analizado cómo se calculan estas medidas, realmente no
tendrá que hacer esto ya que SPSS calcula todo por usted y hace mucho
más. Todavía es bueno saber un poco de teoría para que podamos usar estas
medidas de manera mucho más efectiva.

Ahora, dependiendo de los datos que está analizando, puede calcular cada
una de las medidas en estadísticas descriptivas en SPSS y generar un
gráfico junto con él. Sin embargo, dado que puede parecer un poco confuso
a la hora de usar el paquete de software, aprendamos cómo calcular cada
una de estas estadísticas aprendidas una por una.

Para empezar, aprendamos a usar la función de Frecuencia en SPSS para


contar el número de estudiantes de Ciencias de la Computación que
pertenecen a tres universidades diferentes a partir de un conjunto de datos
de 6 variables y 20 casos.

Frecuencia
Una vez que haya abierto su conjunto de datos en SPSS, abra el menú
Analizar, seleccione Estadísticas descriptivas y luego seleccione
Frecuencias.
Seleccione las frecuencias

Una vez que haya seleccionado las Frecuencias como se muestra arriba,
seleccione el nombre de la variable que se debe contar. En este caso,
seleccionaremos la variable disponible conocida como nombre de escuela
para averiguar a qué escuelas asisten estos estudiantes. Presione la flecha
derecha seleccionada en rojo para mover la Variable disponible a la
columna Variable seleccionada.
Presione la flecha hacia la derecha en el motor para la Variable disponible
a la columna.

Seleccione la flecha derecha para mover una variable disponible

Una vez que haya confirmado que la variable está en la sección Variable
seleccionada, seleccione Ejecutar análisis, como se muestra a continuación:
Seleccione Ejecutar análisis para generar el resultado

El siguiente resultado debería estar disponible para determinar la frecuencia


del número de estudiantes que van a Harvard, Stanford y Yale.

Mira las secciones de Estadísticas y Nombre de la Escuela

Las estadísticas que se muestran en la imagen de arriba comprueban si los


20 casos eran válidos o no. En otras palabras, el análisis primero verifica los
datos faltantes antes de continuar con el conteo. En la segunda sección,
encontrará la separación de los estudiantes que van a Harvard, Stanford y
Yale. sino que también se calcula tanto el porcentaje como el porcentaje
válido. El porcentaje acumulativo debería darle una idea del hecho de que el
100% de los datos se ha utilizado en este análisis

No solo obtiene un recuento de frecuencia individual, de frecuencia.


Hay otra característica sobre la que vale la pena hablar porque esto es algo
que puede usar cuando ejecuta un análisis en SPSS. Dado que el análisis se
compila en un archivo de salida, puede guardarlo por separado para futuras
referencias. Seleccione el icono resaltado en rojo a continuación para
guardar este archivo de salida.

Guardar salida

Una vez que seleccione el ícono como se muestra arriba, lo llevarán a un


cuadro de diálogo familiar donde puede ingresar un nombre para el archivo
de salida y luego guardarlo para usarlo en el futuro. Debe señalarse que los
archivos de salida tienen una extensión de archivo .spv, como se muestra a
continuación.

Una vez que selecciones el icono que aparece debajo, tu estarás tomando un
dialogo familiar .
Guardar un archivo de salida

Ahora que hemos cubierto cómo usar la función de Frecuencias en el menú


Analizar, pasemos a aprender cómo calcular las medidas de tendencia
central en las estadísticas descriptivas.

Medidas de tendencia central


Como aprendimos en el capítulo anterior, la media, la mediana y el modo
son las tres medidas de la tendencia central. Veamos cómo podemos
calcular cada una de estas estadísticas siguiendo los pasos prescritos en
SPSS para cada una de estas medidas. Es muy simple

Media
Como aprendimos anteriormente, la media, en relación con este conjunto de
datos de estudiantes universitarios, puede resultar útil al ayudarnos a
determinar el promedio de todas las asignaturas calificadas por cada
alumno.

Entonces, veamos el flujo de pasos necesarios para generar la media de un


determinado tema tomado en las escuelas de Stanford, Yale y Harvard. Solo
recuerde que cuando use esta función para cualquier otro conjunto de datos,
puede guardar el archivo de salida si es necesario.

Seleccione el menú Analizar y luego seleccione Descriptivos.


Abre el menú Descriptivos

Para este propósito, calcularemos la media de las calificaciones de los


estudiantes de una prueba realizada en la programación de Python y la
moveremos de la sección de variables disponibles a la sección de variables
seleccionadas.

Mueva la variable cuantitativa de Disponible a Variables seleccionadas

Después de esto, seleccione el menú Opciones en el encabezado Variables,


como se resalta en rojo a continuación.
Seleccione Opciones para calcular la Media

Seleccione Mean en Central Tendency en el menú de opciones

Ahora, seleccione la opción Ejecutar análisis en la esquina superior derecha


de la pantalla y espere los resultados:
Seleccione la media y la opción Ejecutar análisis

Una vez que se complete el análisis, encontrará un resumen simple del


promedio para la programación de Python, así como el conteo de la
cantidad de puntos de datos válidos en la salida.

Verificación válida de datos y la media del


cálculo de programación de Python
Si bien esto puede parecer bastante simple, SPSS es tan poderoso como una
herramienta de análisis estadístico que le permite calcular la media
geométrica y la armónica, también. Vale la pena analizarlo incluso si no ha
examinado este tipo de medios.

Dicho esto, puede realizar estos cálculos una vez que comience a generar
informes utilizando la función Resumen de casos.

Mediana
La mediana, como aprendimos, es el valor que ocupa la posición más
central en la distribución de valores en la muestra que estamos evaluando.
Si dos valores comparten esta posición, tomamos la media de estos dos
valores y consideramos que es la mediana.

Una vez más, calcular la mediana usando SPSS es muy simple. Pero antes
de comenzar, debemos recordar que el cálculo de la mediana implica contar
y organizar los valores en orden ascendente.

Al decir eso, tendremos que volver a las Frecuencias en el menú Analizar,


como se muestra a continuación.
Seleccione la opción Frecuencias en Estadísticas descriptivas

Ahora, mueva la variable con datos cuantitativos y asegúrese de desmarcar


la opción Mostrar tablas de frecuencia como se resalta en rojo. La razón por
la que debe hacer esto último es porque encontrará el número de
ocurrencias de cada valor en la Variable seleccionada. No lo necesitamos al
calcular la mediana de la variable seleccionada.
Desmarque las tablas de Frecuencia de
visualización en la esquina inferior izquierda

Ahora, seleccione la opción Estadísticas justo debajo de la opción Variables


y seleccione la casilla marcada Mediana. Después de hacer esto, seleccione
Ejecutar análisis para calcular la mediana de la variable seleccionada.

Seleccione Median bajo Central Tendency


Puede encontrar el cálculo final de la Mediana para sistemas informáticos,
como se muestra en la Salida a continuación:

La mediana es de 80.500.

Dicho esto, a pesar de que estamos analizando cada una de las medidas una
por una, no tiene que calcular cada una de estas estadísticas de esta manera.
A medida que te acostumbras a SPSS, estarás generando una serie de
estadísticas de una sola vez.

Habiendo dicho eso, veamos cómo calculamos la medida final de la


Tendencia Central llamada el Modo siguiente.

Modo
Por definición, el modo de cualquier variable seleccionada implica
determinar qué valor ha ocurrido la mayor cantidad de veces. Entonces,
para calcular el modo, comenzamos seleccionando el menú de Frecuencias.
que se encuentra en Estadísticas descriptivas en el menú Analizar.
Seleccione la opción de Frecuencias para calcular el Modo

Ahora, seleccione la variable para la que desea calcular el modo y muévala


de la sección Variables disponibles a la sección Variables seleccionadas. En
este caso, estamos utilizando los puntajes de las pruebas para el álgebra
universitaria. Además, no olvide seleccionar la casilla de verificación
Mostrar tablas de frecuencia, como se muestra a continuación.
Seleccione la opción Mostrar tablas de frecuencia

Ahora, seleccione la opción Estadísticas resaltada en rojo a continuación y


seleccione la casilla de verificación que se lee como Modo en Tendencia
central.

Seleccionar modo y ejecutar análisis


Ahora, seleccione Ejecutar análisis después de seleccionar la casilla de
verificación Modo y espere los resultados.

Como se muestra a continuación en la sección Salida, el Modo es la


cantidad 85.00 de la Variables seleccionada, Álgebra universitaria.

El modo es 85.00+

Como seleccionamos la casilla de verificación Mostrar tablas de frecuencia,


también obtendremos la salida que enumera todos los valores en una tabla
de frecuencia.

Como puede ver, el valor de 85 aparece tres veces, por lo que ha sido
seleccionado como el Modo de esta variable en particular. Mire la tabla de
frecuencias a continuación y descubrirá por qué la cantidad de 85 se
considera el modo.
La cantidad 85.00 se produce tres veces en la Salida.

Ahora que hemos completado las tres medidas de la Tendencia Central,


pasemos al cálculo de las Medidas de Propagación o Dispersión en SPSS.

Pero antes de eso, si ha cometido un error al calcular la Media, la Mediana


o el Modo, o si desea ejecutar el análisis para otra Variable, puede
seleccionar la opción Restablecer como se resalta en rojo a continuación.
Además, si no está seguro de qué hacer a continuación, seleccione Ayuda
para obtener más información sobre el uso de esta función en la página de
ayuda en línea de SPSS Statistics.
Select the Reset option highlighted in red to start over

One last thing: you can select the Format section under Variables so as to
rearrange the display to ascending or descending order.

Puede listar la Salida en orden ascendente y descendente

Ahora que hemos cubierto los procedimientos sobre cómo calcular la


media, la mediana y el modo, pasemos al cálculo de las medidas de
dispersión o dispersión.
Medidas de propagación
Como aprendimos en el capítulo anterior, hay tres medidas de dispersión o
dispersión, como el rango intercuartil, la varianza y la desviación estándar.
Comencemos por calcular el rango intercuartil para una variable
seleccionada.

Rango intercuartil
Para esto, tenemos que volver al submenú de Frecuencias donde puede
calcular una serie de estadísticas relacionadas con la dispersión o
dispersión. Entonces, comencemos con el cálculo del rango y el rango
intercuartil de una Variable seleccionada.

Seleccione Analizar, luego Frecuencias.


Una vez que sigamos la ruta anterior, seleccione la variable que desea
analizar y muévala a la sección Variables seleccionadas. Desmarque la
casilla de verificación Mostrar frecuencias en la sección Variable.

Seleccione Analizar, luego Frecuencias.


Una vez que sigamos la ruta anterior, seleccione la variable que desea
analizar y muévala a la sección Variables seleccionadas. Desmarque la
casilla de verificación Mostrar frecuencias en la sección Variable.

Desmarque la casilla de verificación Tablas de frecuencia

Junto con esto, seleccione la opción Estadísticas y seleccione la casilla de


verificación titulada Cuartiles bajo Valores Percentiles, así como las casillas
de verificación tituladas Rango, Mínimo y Máximo en Dispersión.

Seleccionar rango, mínimo y máximo y cuartiles


Una vez que haya terminado, seleccione Ejecutar análisis resaltado en rojo
en la esquina superior derecha de la pantalla y espere los resultados. Tan
pronto como se complete el análisis, la sección de resultados debe mostrar
las siguientes estadísticas:

Valores calculados de rango, mínimo, máximo y rango intercuartil

Entonces, ¿por qué es importante calcular el rango intercuartil? En


particular, uno puede usar estos valores para calcular los valores atípicos de
cualquier conjunto de valores en una variable. Pero junto con esto, la
puntuación z de una puntuación de prueba en particular puede revelar
mucho sobre dónde se coloca esa puntuación de prueba en particular en una
variable completa de valores. Esto se debe a que el puntaje z de un puntaje
de prueba particular aquí no es más que el número de desviaciones estándar
de la media calculada.

Dicho esto, ahora veamos cómo podemos calcular la desviación estándar y


la variación en la siguiente sección y familiarizarnos con una comprensión
más profunda de lo que significa calcular una puntuación z. Debe señalarse
que dado que la desviación estándar de un conjunto de valores se deriva de
la varianza calculada, es bueno aprender cómo obtener estos dos valores
simultáneamente.

Variación y desviación estándar


Para la variación y la desviación estándar, podemos calcular fácilmente
estas dos medidas seleccionando Estadísticas descriptivas en el menú
Analizar y luego el submenú

Frecuencias.
Una vez que siga esta ruta, mueva una de las Variables disponibles a la
sección Variables seleccionadas. Ahora, seleccione el estándar. Casillas de
verificación Desviación y Desviación en el menú Estadísticas como se
resalta en rojo a continuación. Después de esto, seleccione Ejecutar análisis
para calcular estos dos valores.

Seleccione Std. Desviación y variación en el menú de estadísticas

Una vez que se genera la salida, puede ver los valores de la variación y la
desviación estándar como se muestra en la siguiente imagen:
Valores de variación y std. desviación

Como se puede decir, la desviación estándar medida para esta variable de


datos es muy alta. Como regla general, cuanto mayor sea el valor de
desviación estándar, sus valores de datos tienen una distribución más amplia
de la media. Es posible que esto no sea bueno o malo, ya que realmente
depende de la situación de la que ha recopilado los datos y de la acción que
pretende tomar en función de sus resultados. Los valores atípicos en ciertos
conjuntos de datos tienden a reflejar la vida real con precisión.

Ahora que sabemos cómo calcular la media y la desviación estándar de un


conjunto de valores, es hora de ver el concepto de la puntuación z.

Como se mencionó anteriormente, cuando tomamos una única calificación


de prueba en los Sistemas de Computación de Variables Seleccionados y
queremos saber cómo le ha ido al estudiante en relación con el resto de la
clase, calculamos la puntuación z utilizando la fórmula: Puntuación de
prueba individual - Media dividida por desviación estándar.
La puntuación Z

Entonces, digamos que la puntuación de Larry después de tomar la prueba


de Sistemas Informáticos fue de 86. Esa es nuestra puntuación de la prueba
individual. Al ejecutar un análisis para calcular la media y la desviación
estándar utilizando SPSS, obtenemos los valores 80.6 y 10.20526.
Al usar la fórmula, descubrimos que la puntuación z de Larry es 0.529121.
Podemos redondear esta cifra a 0.53. Ahora, si sabemos que el conjunto de
valores sigue el patrón de una distribución normal, usamos una tabla Z que
nos da un valor que refleja dónde se encuentra Larry en comparación con el
resto de sus compañeros de clase.

Dado que el puntaje z de Larry es positivo, usamos lo que se conoce como


la tabla z correcta, que se correlaciona con los puntajes de las pruebas por
encima de la media. Puedes encontrar la tabla z en este enlace. Obtenemos
un valor de 0.2019. En términos de porcentajes, en realidad el 20.19 por
ciento de la clase obtuvo mejores resultados que Larry. Por lo tanto,
también existe la probabilidad de que una puntuación sea mayor que la
puntuación de Larry para ese mismo porcentaje. Además, esto también
apunta al hecho de que la puntuación de Larry fue superior al 79.81 por
ciento de la clase. Eso es bastante bueno, ¿no?

En pocas palabras, si su puntaje z tiene un valor positivo y alto en


comparación con la media, probablemente sea uno de los que ha puesto
mucho esfuerzo en sus estudios. Si tiene un valor negativo (y usa la tabla Z
izquierda correctamente), esto simplemente significa que los resultados de
sus exámenes simplemente no están a la altura. En otras palabras, ser capaz
de calcular la dispersión puede ayudarnos a ver cómo se comportan ciertas
calificaciones en comparación con otras.
Pero, ¿cómo saber si una distribución es normal o no? Generalmente se usa
una prueba simple para determinar esto al calcular la puntuación z de los
valores de rango intercuartil de Q1 y Q3.

Cuando calcula las puntuaciones z del rango intercuartil (Q1 y Q3), puede
determinar si los valores de la puntuación de prueba en la variable analizada
forman una distribución normal dependiendo de qué tan cerca están los
valores de Q1 y Q3 a -0.67 y +0.67.

Por más difícil que parezca, podemos usar los cálculos del puntaje z para
hacer predicciones sobre qué puntaje se debe obtener para ser considerado
parte del 10 por ciento superior de la clase. Por supuesto, esto depende del
conjunto de valores que está utilizando para analizar y si forma o no una
distribución normal.

Dicho esto, hay una característica más ingeniosa de SPSS que podemos
usar para verificar si los valores que estamos analizando forman una
distribución normal o no. Para ello, seleccione la opción Gráficos, resaltada
en rojo a continuación. Después de esto, seleccione el botón de radio
Histogramas junto con la casilla de verificación titulada Mostrar curva
normal en el histograma.

Puede graficar estadísticas descriptivas al ejecutar un análisis

Cuando selecciona la opción Ejecutar análisis y genera la salida, encontrará


el histograma como se muestra a continuación y también se muestra la
curva normal.
El histograma es el mejor gráfico para mostrar
una distribución normal

Como probablemente pueda decir, esta es una distribución con una


distribución de valores que favorece a la izquierda y también se denomina
distribución normal sesgada negativamente. Esto está claramente indicado
por la cola izquierda que es mucho más larga que la cola derecha.
Pero aún no podemos saber cuánto.

Para eso necesitamos calcular el valor de asimetría, que veremos en la


siguiente sección.

Medidas de forma o distribución


Hemos discutido las medidas de la forma, pero brevemente en el capítulo
anterior. En este, veremos cómo podemos calcular los valores relacionados
con la asimetría y la curtosis de uno en uno.

Si bien este capítulo trata de explicarle cómo se pueden calcular estas


estadísticas básicas, también es bueno comprender cómo podemos aplicar el
pensamiento estadístico a los valores que generamos.

Entonces, veamos primero la asimetría y luego pasemos a la curtosis a


continuación.

Asimetria
Para calcular la asimetría de cualquier variable analizada, seleccionamos los
menús Analizar y Estadísticas descriptivas, así como el submenú
Frecuencias. Como siempre, tenemos que seleccionar la variable que
queremos analizar y moverla a la sección Variable seleccionada, como se
muestra a continuación.
Seleccione Estadísticas y la casilla de verificación etiquetada asimetría
(skewness)

En este caso, estamos utilizando un conjunto de puntuaciones que los


estudiantes obtuvieron al aprender a programar en Python. Una vez que
haya movido la variable seleccionada, seleccione Estadísticas como se
resalta en rojo arriba. Seleccione Skewness y luego Ejecutar análisis para
generar resultados con respecto a esta medida de forma para la variable
seleccionada.
Seleccione la asimetría en Distribución

La salida para la variable Programación de Python nos proporciona una


medida de sesgo que podemos usar para determinar si esta distribución es
negativa o positivamente sesgada.

Valor de la asimetría y su std. Error

Según el valor, que es -1.505, podemos decir que tiene una cola izquierda
más larga. Cuando calculamos el valor de asimetría para la variable
Sistemas informáticos, obtenemos la salida que se muestra a continuación:

Valor de la asimetría y su Std. Error para otra variable


Entonces, ¿qué debería decirle esto sobre la asimetría de los valores en la
variable de Sistemas de Computación? Que es menos sesgada en
comparación con el conjunto de valores de programación de Python.

Pero hay un aspecto más que aún no hemos tomado en consideración. Hay
una estadística llamada Error estándar de sesgo que también se ha calculado
aquí, y también por una buena razón. En estadística, cuando analizamos una
pequeña muestra, esto da lugar a errores. Para asegurarnos de que
obtengamos valores precisos, tenemos que calcular una estadística de
prueba que no sea más que una relación de los valores de sesgo y de Error
estándar de sesgo aquí.
En otras palabras, cuando dividimos 0.057 / 0.512 obtenemos una asimetría
de 0.1113 para la variable de Sistemas de Computación. Entonces, ¿qué
indica este valor de sesgo?

Como regla de oro, si obtiene un valor de sesgo que es menor que -1 y


mayor que +1, esta es una distribución muy sesgada. Si obtienes un valor de
sesgo que está entre -0.5 y -1 y +0.5 y +1, entonces la distribución es
moderadamente sesgada. Si el valor de sesgo se encuentra entre -0.5 y +0.5,
se dice que la distribución es algo simétrica.

Se puede decir que la distribución de valores de los sistemas informáticos


es aproximadamente simétrica aquí. En comparación, la distribución de
Programación Python nos da un valor de sesgo de -2.94, lo que significa
que es altamente sesgado.

Ser capaz de calcular e interpretar la asimetría puede decirnos mucho sobre


los datos que tenemos a nuestra disposición. Hace que nuestro trabajo en
estadística derive de significado y haga predicciones mucho más difíciles,
ya que no sigue la distribución más simple de todas: la distribución Normal.
No importa qué, la asimetría puede decirle mucho sobre sus datos y no debe
ser subestimada. Dicho esto, pasaremos a calcular otra medida de la forma
llamada curtosis.

Curtosis
Curtosis, leemos en un capítulo anterior, tiene mucho que ver con las colas
de la distribución. Cuantos más valores atípicos tenga en un conjunto de
valores, más larga será la cola de su distribución. Ahora, como lo hicimos al
ejecutar un análisis que calculó la asimetría, comenzamos seleccionando los
menús Analizar y Estadísticas descriptivas, así como el submenú
Frecuencias.

Seleccione Estadísticas para encontrar Curtosis

Seleccione Estadísticas como se resalta en rojo arriba y luego seleccione la


casilla de verificación titulada Curtosis. Después de esto, seleccione
Ejecutar análisis y espere a que se genere la salida.
Seleccione Curtosis en Distribución

La salida que se genera nos proporciona el valor de curtosis de la variable


que hemos seleccionado para el análisis, como se muestra a continuación:

Valor de la curtosis y su std. Error

Entonces, ¿qué significa el valor de -0.448 con respecto a la curtosis? ¿Es


esta una medida de la curtosis alta o baja? Además, ¿qué ofrece aquí el
error estándar de valor de Curtosis?

Como prueba de si los datos siguen una forma de una distribución normal,
dividimos el valor de la curtosis con su error estándar, al igual que el
cálculo seguido para la asimetría.
Usando la variable Sistemas de Computación, generamos un valor de
-0.451. ¿Entonces, qué significa esto? Si generamos un valor menor que -2
y mayor que +2, la distribución no es normal. Entonces, uno puede decir
que estamos dentro de esos límites para este conjunto de valores de datos.

Ahora, cuando repetimos esta acción para la variable de puntajes de prueba


de programación de Python, obtenemos el siguiente resultado:

Kurtosis y std. Error para otras variables

Al dividir 1.979 por 0.992, obtenemos el valor de 1.994. Lo que significa


que la distribución de valores es de naturaleza apenas normal.

Una vez más, como se mencionó en la sección sobre la asimetría, si un


conjunto de valores no sigue la distribución normal, esto dificulta el trabajo
del estadístico. En este caso, dado que señala el número de valores atípicos
presentes en el conjunto de valores, es posible que tengamos que volver al
tablero de dibujo para verificar si estos valores atípicos fueron reales o se
deben a un error humano.

Dicho esto, hay una cosa más que debemos discutir para generar todas las
estadísticas descriptivas que hemos analizado en este capítulo.

Uso de la sección de resúmenes de casos en informes


Si bien pudimos calcular las medidas de la tendencia central, la dispersión o
la dispersión y la forma por sí mismas, la necesidad de ver todas las
estadísticas descriptivas en una sección de Resultados puede resultar muy
útil. Mejor aún, si pudiéramos subdividir aún más el conjunto de datos para
el análisis, eso también sería bastante ingenioso, ¿verdad?

Por ejemplo, si quisiéramos generar todas las estadísticas descriptivas que


hemos aprendido hasta ahora pero queremos examinar las estadísticas según
el género, podríamos crear un resumen del caso. Para ello, seleccione los
menús Analizar e Informes, así como el submenú Resumen de casos, como
se muestra a continuación:

Menús de análisis, informes y además de resúmenes de casos.

Una vez que seleccione Resumen de casos, mueva una variable numérica a
las Variables seleccionadas para su análisis y una variable que tenga una
naturaleza categórica para agrupar y analizar los datos generales en mayor
profundidad. En el ejemplo que se muestra, los tres puntajes de prueba de
Computer Systems, College Algebra y Python Programming se agruparán
según el género.

En otras palabras, sería interesante observar si a los hombres o las mujeres


les fue mejor en cada uno de estos temas y por cuánto, además de poder ver
todas las medidas en un informe.

Ejecutar un informe resumen de todas las estadísticas descriptivas

Si lo desea, puede agregar un título y un título para este informe de resumen


que está intentando generar en la sección Opciones. Cuando lo haga,
seleccione Ejecutar análisis y espere a que se muestre la salida, como se
muestra a continuación:
Los resúmenes de celdas calculan todas las estadísticas
descriptivas en una pantalla de salida

Otra opción que se consideró como una variable de agrupación para generar
un resumen del caso fue poder examinar los datos en función de la escuela
en la que estudian. Suponiendo, por supuesto, que las pruebas que se dieron
a todos los estudiantes eran idénticas.
Dicho esto, esta sección busca resumir todas las medidas de estadísticas
descriptivas que hemos estudiado hasta ahora, que se pueden ver en la
imagen de arriba.

En el siguiente capítulo ...


Tenemos la intención de ver los procedimientos involucrados en la
elaboración de todos los cuadros disponibles en SPSS basados en conjuntos
de datos simples para este propósito. Como principiante, es tan vital poder
calcular varias medidas en Estadística descriptiva, pero es tan importante
seleccionar el tipo correcto de tablas para ayudarnos a visualizar los datos
en sí con fines inferenciales. Veamos tantos de ellos como sea posible en el
siguiente capítulo.
Capítulo 9
Creación De Gráficos En SPSS

Como hemos aprendido hasta ahora, uno puede comprender mucho acerca
de un conjunto de valores en variables, pero los gráficos pueden llevar esa
comprensión al siguiente nivel. La visualización de los datos es muy
poderosa, ya que puede ayudarnos a ver las tendencias y las correlaciones
de manera vívida. Entendemos dónde hemos estado y dónde estamos y,
como resultado, comenzamos a considerar qué acción tomar como
resultado.
SPSS es muy útil en este sentido, ya que nos brinda una amplia gama de
gráficos para usar. Desde simples histogramas hasta complejos gráficos Q-
Q. De modo que podamos visualizar nuestros datos para resumirlos o
incluso utilizarlos con fines de análisis predictivo.

A medida que nos adentramos en esta sección, tenga en cuenta que


usaremos el submenú Visualizar y Generador de gráficos para elaborar
todos estos gráficos. También puede preparar estos gráficos en los menús de
Frecuencias y Descriptivos. Ya que hemos examinado este tipo de gráficos
anteriormente en el capítulo sobre estadísticas descriptivas, también nos
centraremos en seleccionar el tipo correcto de gráfico para visualizar un
conjunto de valores correctamente.
Seleccione Chart Builder (generador de gráficos)
en el menú Visualizar

Hay otra forma de acceder al menú del generador de gráficos, que consiste
en seleccionar el ícono de acceso rápido, como se muestra en el siguiente
menú:

Menú del generador de gráficos

Dicho esto, veamos los procedimientos involucrados en la construcción de


algunos de los gráficos más comunes disponibles en SPSS.

Gráficos comunes disponibles en SPSS


Hay una serie de gráficos que uno usará una y otra vez para visualizar
estadísticas descriptivas con el fin de llegar a conclusiones. Habría
encontrado estos gráficos en algún momento u otro, dado que también se
han utilizado en escuelas, negocios y también en instituciones educativas.
Dicho esto, veremos gráficos como los gráficos de líneas y de series
múltiples, el gráfico circular, el gráfico de barras, el histograma, el
diagrama de caja y el gráfico de dispersión.

Gráfico de linea
Supongamos que dirige una tienda de ropa y necesita determinar a qué hora
del día necesita que los miembros de su personal trabajen. No tiene sentido
tener a todos adentro si no hay clientes, ¿correcto?

Estas son dos variables de SPSS que usaremos para registrar los datos:

¿Existe una relación entre el tiempo y los clientes?

Para esto, seleccionemos la opción de gráfico de líneas en Chart Builder


para analizar a qué hora del día es probable que la mayoría de los clientes
visiten la tienda para comprar un artículo de su agrado. Seleccione
Visualizar y Generador de gráficos y luego seleccione el gráfico de líneas,
como se resalta en rojo a continuación:
Seleccione la opción de gráfico de línea

Una vez que seleccione la opción Gráfico de líneas, seleccione las variables
para los ejes X e Y al agregar un título y subtítulo principal, como se
muestra a continuación.

Puede seleccionar la opción Área para mostrar el área que cubren los puntos
de datos en el gráfico. Aparte de esto, puede suavizar la línea seleccionando
la opción Suavizar
Agregue los detalles del gráfico de líneas

Una vez que haya agregado todos los detalles del gráfico de líneas, puede
ver el siguiente gráfico de líneas que se muestra:

El punto más alto en la gráfica apunta


a 1 PM con 22 visitas de clientes
Si bien esta tabla puede proporcionarle una imagen decente de cuándo
ingresan la mayoría de los clientes, es posible que deba analizar al menos
un mes de datos de visitas de clientes para averiguar qué horas del día son
las más ocupadas.

Si el resumen de la tabla es similar a este, sabrá que es durante la tarde que


la mayoría, si no todos los miembros de su personal, deberían estar
presentes.

Gráfico de series múltiples


Para utilizar el gráfico de series múltiples, seleccionemos el menú
Visualizar y el Generador de gráficos.

Conjunto de datos de la población desempleada

Después de esto, seleccione la opción Multi-Series, resaltada en rojo a


continuación:
Seleccione Mes como el eje X

Después de esto, complete los detalles en el gráfico de series múltiples,


como se muestra a continuación:

Rellene el título de la tabla y el subtítulo

Asegúrese de seleccionar la opción en gris "Agregar otra columna" y, por lo


tanto, agregue los dos años al eje Y. Desplácese hacia abajo hasta el área
donde puede ver el título principal y el subtítulo, como se muestra a
continuación:

Desempleo más alto y más bajo: abril de 2010 y enero de 2011

Una vez que haya ingresado los detalles, encontrará el siguiente cuadro
de series múltiples donde puede encontrar el mes durante el cual el
desempleo estuvo en su nivel más alto y más bajo durante los dos años.
En el cuadro se puede ver que durante los dos años, las cifras más bajas de
desempleo se registraron en enero de 2011. mientras que las cifras más altas
de desempleo se registraron en abril de 2010. Hay una tendencia que puede
encontrar y que involucra las más bajas de desempleo en cada año. .
Desempleo más alto y más bajo: abril de 2010 y enero de 2011

En enero, el desempleo alcanzó su nivel más bajo en el año, mientras que


los meses de junio y julio fueron mucho mejores para las personas que
buscan empleo. Por alguna razón, las cifras de desempleo aumentaron
durante los dos años de abril y mayo y se puede atribuir a los eventos que
tuvieron lugar en ese momento.
La recesión podría ser solo un incidente que viene a la mente, que tuvo
efectos de largo alcance en los años venideros. Incluso podría deberse a que
más personas podrían haber estado trabajando a tiempo parcial como
resultado y, por lo tanto, no estuvieron trabajando durante esa época del
año. Dicho esto, podría ser posible que esta misma tendencia continúe
también en los años siguientes y uno deba ser capaz de comprender qué
causa el aumento y la caída de estos valores.

Pase lo que pase, usar un cuadro de series múltiples aquí puede ayudarlo a
ver una tendencia para ambos conjuntos de datos. Puede configurar varias
líneas y compararlas entre sí.

Gráfico circular
Cada rebanada de una ronda completa de pastel o pizza representa un
porcentaje. Si bien es justo para todos que haces partes iguales al compartir,
esto no siempre es así en la realidad.

Especialmente si está utilizando un gráfico circular para visualizar el


porcentaje del total.

Supongamos que dirige una tienda y desea ver el porcentaje de ventas de


cada una de las frutas que vende todos los días. Por supuesto, si obtiene
datos regulares sobre esto con el tiempo, debería poder adivinar
inteligentemente qué fruta es la más popular entre los clientes. Veamos las
ventas de un día en tu tienda:
Frutas vendidas datos para gráfico circular

Ahora, hay que tener en cuenta que ya hemos contado cuántas unidades de
fruta se han vendido. Si tiene datos para cada unidad de fruta que ha
vendido, primero deberá contarlos.

Esto no es un problema porque la función de gráfico circular en SPSS le


brinda la opción de calcular los porcentajes de los datos contados, pero
también los datos no contabilizados.

Seleccione la opción torta como resaltado en rojo

Después de esto, ingrese los detalles en el Gráfico circular que selecciona la


variable Fruta para Categoría y la Suma seleccionada como se muestra a
continuación. Seleccione Unidades Vendidas como el Valor.

Selecciona Fruta como la Categoría

Ahora, no te olvides de ingresar también los detalles del título principal y la


tabla de subtítulos:

Ingrese el título primario y el subtítulo aquí

Puede encontrar el gráfico circular como se muestra a continuación junto


con la leyenda ubicada a la derecha:
Gráficos circulares para las frutas vendidas

Uno debe señalar que la variable Fruta vendida es una que enumera
categorías discretas, al igual que las Horas y Meses que usamos en los
gráficos de Línea y Multi-Series. Sin embargo, el uso de un gráfico circular
le brinda una imagen clara en términos de porcentaje respecto a cuál de
estas categorías se desempeña mejor.

Entonces, puedes ver en este gráfico circular que la mayoría de las unidades
vendidas fueron las de limones y plátanos. Una conclusión general a la que
puede llegar, como comerciante, es que necesita concentrarse en mantener
más unidades de bananas y limones en comparación con guayabas y
cerezas.
No muy diferente, si está tratando de analizar conjuntos de datos con
categorías discretas, otra opción que nos ayuda a ver claramente los conteos
es el gráfico de barras, que es lo que cubriremos a continuación.

Gráfico de barras
Si uno quisiera saber cuántos estudiantes de una lista de 20 asisten a
Harvard, Yale y Stanford, el gráfico de barras considera a cada una de estas
universidades categorías discretas y realiza un conteo.

Conjunto de datos de los estudiantes de informática

Ahora, seleccione Visualizar y luego Generador de gráficos, y seleccione


Barra como se muestra a continuación:

Seleccione el gráfico de barras como se resalta en rojo

Una vez que haya seleccionado Barra, es hora de ingresar los detalles del
gráfico de barras como se muestra a continuación. Asegúrese de seleccionar
la variable que desea contar aquí. En el conjunto de datos que se muestra
arriba, seleccionaremos Nombre de la escuela en la sección Detalles del
gráfico de barras a la izquierda de su pantalla.
Asegúrese de que el tipo de Resumen seleccionado sea Count

Una vez que haya ingresado los detalles, complete el Título del gráfico y el
subtítulo como se muestra a continuación:
Introduzca más información sobre el
estudio en la nota a pie de página.

Una vez hecho esto, puede ver el gráfico de barras que cuenta el número de
estudiantes que van a Harvard, Yale o Stanford, como se muestra a
continuación:

La mayoría de los estudiantes del conjunto de datos van a Harvard

Ahora, hay otra pequeña característica que se puede usar para incluir otras
categorías que podrían arrojar más luz sobre su análisis usando este tipo de
tabla. Se llama la opción Dividir por que se puede encontrar en la sección
Detalles del gráfico de barras.

Use la opción Dividir por para desglosar más sus datos

En este conjunto de datos, también podemos clasificar a los estudiantes


como hombres o mujeres, por lo que podemos usar la variable Género para
dividir el gráfico de barras en divisiones masculinas y femeninas de los
estudiantes que asisten a estas tres universidades.

Puede encontrar el gráfico de barras resultante a continuación:

Recuento de estudiantes varones y mujeres que van a cada universidad.

Como puede ver, Stanford tiene la mayoría de las alumnas, mientras que
Harvard y Yale tienen el mismo número de alumnas.

Histograma
Si bien el histograma se ve muy similar al gráfico de barras, hay una
diferencia significativa. En el caso de los primeros, utilizaremos datos que
caen en intervalos o intervalos numéricos y continuos.

Mientras que en el ejemplo anterior, Yale, Harvard y Stanford fueron


variables discretas, los histogramas mostrarán un recuento de los datos que
caen en categorías numéricas y continuas.

Por ejemplo, si quisiéramos clasificar la cantidad de estudiantes que


obtuvieron calificaciones entre 0 y 100 para un tema como la programación
en Python, usaríamos un histograma para mostrar los datos. En este caso, el
histograma creará intervalos de intervalos como 0-10, 10-20 y 20-30, y así
sucesivamente. Como verá, los intervalos son continuos a diferencia de las
categorías utilizadas en la creación de un gráfico de barras.

Usemos el mismo conjunto de datos que usamos para crear un gráfico de


barras aquí y se muestra a continuación:

Conjunto de datos de los estudiantes de informática

Ahora, seleccione Visualizar y Generador de gráficos, y luego seleccione


Histograma como se resalta en rojo a continuación:

Seleccione Histograma en el menú Generador de gráficos

Una vez que haya seleccionado el histograma como se muestra arriba, se lo


dirigirá a una pantalla donde debe ingresar los detalles del histograma,
como se muestra a continuación. Ya que estamos analizando los puntajes de
Python Programming de los estudiantes que van a Harvard, Yale y Stanford,
seleccione esa variable que contiene sus puntajes.

Además, no olvide ingresar los detalles para el título principal y el subtítulo


como se muestra arriba.

Ingrese el gráfico de histograma - Detalles


Después de completar esto, encontrarás el número de estudiantes que
obtuvieron entre 50 y 100 en la programación de Python.

Use la opción Dividir por para dividir


aún más sus resultados para el análisis

Diez estudiantes registraron puntajes entre 80 y 90 en la programación de


Python

Ahora, puede usar la opción Dividir por aquí también para desglosar los
datos para este análisis. En este caso, contaremos cuántos estudiantes de
cada universidad obtuvieron entre 50 y 100.

Utilice esta opción para desglosar sus datos para su análisis.

En este caso, seleccionaremos el nombre de la escuela para obtener una


ruptura del histograma como se muestra a continuación:
Agregue la variable SchoolName

Al hacer esto, encontraremos que el histograma divide los datos de


programación de Python por cada escuela, como se muestra a continuación:

Cuatro estudiantes de Stanford y Yale puntuaron entre 80 y 90

Como puede ver, a más estudiantes les fue mejor en la programación de


Python en Stanford y Yale para esta misma prueba.

Diagrama de caja
El gráfico de caja, como encontramos, es un gráfico que se usa
comúnmente para mostrar la distribución de los valores de una distribución,
es decir, el mínimo, primer cuartil, mediana, tercer cuartil y el máximo. Aún
otro valor que se mostrará son los valores atípicos presentes en el conjunto
de valores elegidos para el análisis.
Usemos el conjunto de datos que contiene los puntajes de los estudiantes
para demostrar cómo podemos usar este cuadro para comprender mejor la
distribución de los datos:

Conjunto de datos de estudiantes de informática

Seleccione Visualizar y Generador de gráficos, y luego seleccione la flecha


hacia abajo resaltada en rojo para revelar todos los gráficos disponibles en
SPSS:

Seleccione la flecha que apunta hacia abajo


Una vez que haga esto, se mostrará una lista de 21 Gráficos, de los cuales
tendremos que seleccionar el gráfico de Cuadro de Caja como se muestra a
continuación:

Seleccione Box Plot como está resaltado en rojo

Una vez que haya seleccionado Box Plot, debe ingresar los detalles en la
sección Detalles de la gráfica de Box Plot como se muestra a continuación.
NO use las opciones Dividir por y Agregar otra columna todavía.
A Como puede ver a la derecha de su pantalla, el diagrama de caja se ha
preparado, como se muestra a continuación: ¿
El diagrama de caja con dos valores atípicos

Cuando pase el puntero del mouse sobre los bigotes, los dos puntos y el
cuadro mismo, encontrará los cinco valores que aprendimos en Mediciones
de dispersión o dispersión calculados aquí.

Si desea ver los datos más detenidamente, puede agregar otra columna de
datos para analizar dos puntajes a la vez. Para esto, agregaremos Sistemas
de Computación como otra columna en el campo que se muestra a
continuación:

Seleccione esto para agregar otra columna de datos

Ahora, agregue otra columna para el análisis de forma similar a los sistemas
informáticos aquí:

Otra columna agregada para análisis

Ahora, deberías encontrar dos diagramas de caja lado a lado y que tengan
distintos colores como una forma de diferenciar entre los dos. Además, pase
el mouse sobre los diagramas de caja para encontrar las cinco medidas de
propagación y valores atípicos, si los hay.
Dos diagramas de caja separados que puedes analizar para los valores de
lado a lado

Finalmente, puede usar la función Dividir por cuando explore una columna
de datos para separar aún más los datos. En este caso, dividiremos los datos
en forma escolar y observaremos las medidas de propagación que se
generan para los puntajes de programación de Python.

Tres Box Plots separados para analizar datos por universidad.

Gráfico de dispersión
En este tipo de gráfico, graficará dos variables entre sí y sacará
conclusiones en función de si el SPSS encuentra una correlación positiva,
negativa o no.

Pero antes de ver el procedimiento, una correlación positiva es aquella en la


que, al aumentar una variable, la segunda variable aumenta de valor. Una
correlación negativa significa que cuando una variable aumenta, la otra
disminuye. Finalmente, si las variables no forman una correlación negativa
o positiva, no hay ninguna.
Dicho esto, donde existe una correlación, usamos una línea de mejor ajuste
para indicar esto. Esta línea se encuentra lo más cerca posible de todos los
puntos de datos y, al hacerlo, representa los datos de la mejor manera
posible.

Para demostrar el uso de un diagrama de dispersión, usaremos las siguientes


variables para buscar una correlación. Queremos saber si un aumento o
disminución de la temperatura afecta las ventas de limonada. En este caso,
la temperatura es la variable independiente, mientras que las ventas de
limonada son la variable dependiente.

Conjunto de datos de venta de limonada y temperatura.


Ahora, seleccione Visualizar y Generador de gráficos y luego seleccione
Dispersión como se muestra a continuación:

Seleccione el gráfico de gráfico de dispersión como se resalta en rojo

Una vez que haga esto, seleccione la variable independiente para el eje X y
la variable dependiente para el eje Y. También, ingrese el título primario y
el subtítulo también.

Selecciona entre las opciones para la línea de mejor ajuste.


Siempre asegúrese de ingresar los detalles del título principal, el subtítulo y
la nota al pie.

Nunca olvides ingresar los detalles del cuadro.

Una vez que termine de ingresar estos detalles, encontrará la gráfica de


dispersión en el lado derecho de su pantalla.

La línea de mejor ajuste

Se puede decir que existe una relación positiva entre la temperatura y las
ventas de limonada, como se muestra arriba.
Hasta ahora, hemos visto gráficos que se utilizan comúnmente en las
estadísticas. Por lo tanto, sigamos analizando algunos otros que ofrece
SPSS y que podrían ser útiles al realizar el análisis de datos.

Otras cartas disponibles en SPSS


Incluso si hemos explorado todos los cuadros que se analizaron al cubrir
estadísticas descriptivas, sería bueno tener en cuenta los tipos de gráficos
menos comunes que se pueden utilizar para visualizar datos.

Tabla de la pirámide de población


Este tipo de cuadro, si bien es una combinación de histogramas colocados
espalda con espalda, nos ayuda a encontrar la distribución de la población
según una categoría como el sexo y la edad. Para demostrar cómo se puede
crear este tipo de gráfico, analicemos un conjunto de datos de estudiantes
que toman Ciencias de la Computación de Yale, Harvard y Stanford.

Conjunto de datos de estudiantes de ciencias de la computación en Yale,


Harvard y Stanford

Usando este conjunto de datos, vamos a construir un gráfico de pirámide de


población que evalúa la edad de estudiantes masculinos y femeninos. Una
vez que seleccione Visualizar y Generador de gráficos, seleccione la opción
de gráfico de pirámide de población como se muestra a continuación:
Seleccione el gráfico de la pirámide de población

Una vez que haga esto, seleccione las variables que desea comparar y
agréguelas tanto al eje x como al eje y. Para este análisis, estamos
comparando la edad y el género de los estudiantes en Yale, Harvard y
Stanford. Además, asegúrese de agregar un título primario y un subtítulo
apropiados.
Seleccione el gráfico de la pirámide de población

Una vez que haga clic aquí, seleccione las variables que desea comparar y
desarrollar las agujas. Para este análisis, estamos comparando la edad y el
género de los estudiantes en Yale, Harvard y Stanford. Además, asegúrese
de agregar un título primario y un subtítulo apropiado.
Análisis de edad vs. género

De los datos, podemos ver que seis mujeres asisten a la universidad entre la
edad de 20 a 22 años, mientras que cinco hombres asisten a estas
universidades entre las edades de 18 a 20. En general, no hay mujeres en la
universidad después de los 22 años, mientras que hay cinco hombres que
siguen una educación después de esa edad.

Mapa de treemap
Este tipo de gráfico puede ayudarnos a visualizar los datos y la jerarquía
que existe dentro del conjunto de datos. Usando el conjunto de datos de
puntajes de los estudiantes de Ciencias de la Computación, podríamos
querer saber cuántos hombres o mujeres van a cada universidad.
Conjunto de datos de los estudiantes de informática

Usando el conjunto de datos que se muestra arriba, seleccione Visualizar y


Generador de gráficos, y luego seleccione Treemap como se muestra a
continuación:

Seleccione la flecha hacia abajo y luego el gráfico Treemap

Una vez que lo haga, seleccione las variables cuya jerarquía desea ver.
Entonces, según las variables en el conjunto de datos dado, seleccione las
variables de Nombre de la escuela y Género, como se muestra a
continuación:
Cuenta el número de hombres y mujeres en cada universidad.

Ingrese los detalles en la sección Título principal y subtítulos también,


como se muestra a continuación:

Siempre ingrese los detalles en los cuadros que usa

Una vez hecho esto, encontrará el Treemap con la siguiente jerarquía que
cuenta el número de hombres y mujeres en cada universidad en este
conjunto de datos:
El gráfico TreeMap que muestra el género en cada universidad

Si mueve el puntero del mouse sobre cada uno de estos segmentos,


encontrará la frecuencia de los hombres o mujeres en Harvard, Stanford y
Yale.
Ahora, veamos otro gráfico que puede comparar varios conjuntos de
variables numéricas y revelar correlaciones o patrones en el conjunto de
datos.

Gráfico paralelo
Comúnmente usado en la profesión académica para analizar la correlación
entre variables, es mejor usarlo para variables que contienen datos
numéricos. Usaremos el conjunto de datos que contiene la información de
los puntajes de los estudiantes de informática en sistemas informáticos,
programación en Python y álgebra universitaria.
Conjunto de datos de estudiantes de informática

Para acceder a este tipo de gráfico, seleccione Visualizar y Generador de


gráficos y luego seleccione Paralelo, como se muestra en la siguiente
imagen:

Seleccione el gráfico paralelo

Una vez que haga esto, ingrese las columnas que consisten en datos
numéricos para dibujar las líneas a través de sus respectivos ejes. En este
caso, vamos a seleccionar College Algebra, Computer Systems y Python
Programming, como se muestra a continuación. No olvide ingresar un
Título y Subtítulo Primarios. Además, no seleccione ningún tipo de variable
categórica en la sección Mapa de color.
Gráfico paralelo - Detalles

Ahora, mire el gráfico paralelo que se muestra a la derecha de su pantalla y


como se muestra a continuación:
Si la pendiente de varias líneas coincide, existe una correlación.

En cuanto al campo Mapa de color, puede usarlo para profundizar su


análisis por escuela, género o edad. En este caso, uno puede evaluar si la
edad es importante al ver la correlación de estas tres puntuaciones. Por lo
tanto, para el propósito de este análisis, seleccionemos la variable Edad en
el Mapa de color.

Usa Color Map para agrupar y analizar datos.

Al hacer esto, se usan varios colores para diferentes líneas según la edad
individual de cada estudiante cuyas calificaciones se están analizando.
Las diferentes líneas de color muestran la edad

En otras palabras, podemos segregar las líneas según los intervalos de edad
e inspeccionarlos para detectar patrones dentro de ese grupo de edad. Dicho
esto, este es un ejemplo de análisis multivariado porque comparamos dos
variables pero refinamos aún más el análisis al seleccionar una variable que
es de naturaleza categórica.

En el siguiente capítulo ...


Ahora que hemos cubierto los tipos de gráficos que puede utilizar para
visualizar datos para obtener valores de resumen en estadísticas
descriptivas, avancemos hacia la profundización de nuestros conocimientos
en el área de estadísticas inferenciales.
Capítulo 10
Introducción A La Estadística Inferencial

En virtud del término inferir, llegamos a comprender que la rama de las


estadísticas inferenciales tiene que ver con hacer predicciones basadas en
los datos disponibles. Una gran parte de las estadísticas inferenciales tiene
que ver con la comprensión de la probabilidad y la existencia de
distribuciones para valores discretos y continuos que podemos usar para
determinar los valores o intervalos esperados.

El enfoque matemático para encontrar la probabilidad


comenzó con una disputa de juego

Sin embargo, uno debe tomar nota del hecho de que nuestra comprensión de
las estadísticas inferenciales y sus métodos para determinar la precisión de
los parámetros de la población depende de nuestra comprensión de las
estadísticas descriptivas. Como se mencionó en un capítulo anterior, el
objetivo de las estadísticas inferenciales es sacar conclusiones sobre toda la
población a partir de las muestras que analizamos.
Solo un caso en una muestra de datos de los fanáticos del fútbol.

Esto se debe a que si quería saber con seguridad si a todos los hombres de
Europa les gustaba el fútbol o no, simplemente no puede realizar una
encuesta que recoja todos sus puntos de vista sobre este asunto.
Simplemente no es factible. Como resultado, las muestras son seleccionadas
y analizadas por sus parámetros. Para llevar a cabo estos cálculos, se deben
hacer ciertas suposiciones aparte de la necesidad de incluir la probabilidad
como un factor en la inferencia final. Aún así, uno debe admitir que nunca
calcularemos con precisión cuáles serán estos parámetros, a menos que
sigamos adelante y recabemos información de cada miembro de la
población.

Muestra, Población y Muestreo Aleatorio


Entonces, ¿qué es una muestra y la población?

El conjunto de datos que contenía las puntuaciones de los estudiantes que


utilizamos anteriormente contenía variables que eran tanto de naturaleza
numérica como categórica. En pocas palabras, el conjunto de datos de 20
estudiantes universitarios de tres universidades de la Ivy League. Esto es,
como ya deberíamos saber, una muestra. En comparación, toda la población
serían todos los estudiantes que desean obtener un título en Ciencias de la
Computación en Yale, Stanford y Harvard.

Entonces, ¿qué puede decirnos este conjunto de datos sobre la población de


estudiantes de ciencias de la computación? Muy poco o nada si no podemos
obtener una muestra que refleje los datos o las estadísticas generadas por la
población en igual proporción. Realmente depende de la selección de
muestras aleatorias de la población que se dice que lo representa por igual.

Cuando calcule las estadísticas para estas muestras, debe esperarse que no
produzca exactamente el mismo valor que la media poblacional, sino que
sea más o menos el mismo. Esto se debe a que la muestra no es más que un
subconjunto de la población con su propia desviación estándar única y
media. Dicho esto, los datos recopilados en cada muestra están
influenciados por el azar, por lo que incluir la probabilidad como un factor
cuantitativo juega un papel importante para ayudarnos a hacer inferencias
en estudios sobre toda la población.

El teorema del límite central


Ahora, hay un teorema fundamental en las estadísticas inferenciales que
asume que al analizar más y más muestras aleatorias, las estadísticas
calculadas siguen la forma de una distribución Normal.
La distribución normal

En otras palabras, la media de cada muestra considerada puede tomarse


como una distribución única de valores cuyo valor medio o valor esperado
no será más que la propia población. Generalmente, este teorema tiene
efecto en tamaños de muestra muy altos desde 50 en adelante.

Además, podemos calcular el error estándar de la media, que no es más que


la desviación estándar de esta distribución de valores. Este valor suele ser
más pequeño que la desviación estándar de la población real. En este caso,
no es como el valor exacto de la media que discutimos anteriormente.
El propio maestro de la inferencia - ¡Holmes!

Aparte de esto, hay otros valores que generalmente se estiman en la


inferencia estadística, como la proporción de la población que suele ser un
porcentaje, la diferencia entre dos proporciones de la población y la media.
Hay razones específicas por las que uno querría comparar diferentes
poblaciones que difieren de un estudio a otro. Podemos encontrar funciones
en SPSS que nos ayudan a ejecutar estas pruebas. Por supuesto, las
variables tendrían que ser independientes y seguir la forma de una
distribución Normal.
Como hemos discutido anteriormente sobre la distribución normal,
debemos recordar que este teorema es particularmente influyente porque,
incluso si los valores de las muestras en sí no siguen la forma de esta
distribución, no importará.

Estadística inferencial: entonces, ¿qué te dicen tus datos?

Dicho esto, la mayoría de los conjuntos de datos que usará si toma


estadísticas inferenciales toma seriamente la forma de una distribución
Normal y es una condición que permitirá a las personas realizar pruebas.

Distribuciones de probabilidad
Ahora, la distribución Normal no es la única distribución de probabilidad
que existe. Hay varios otros que se usan comúnmente, que se clasifican en
dos categorías: valores cuantitativos discretos y continuos.
Un ejemplo de valores discretos.

Por definición, estas distribuciones de probabilidad son muy importantes ya


que tratan con las posibilidades de ciertas ocurrencias que resultan en
ciertos resultados en cualquier experimento. Las distribuciones binomial,
binomial negativa y Poisson, así como las distribuciones exponencial y
uniforme, se usan comúnmente para calcular el valor esperado y la
variación de la distribución de los valores en sí.
Comprender este tipo de distribuciones y poder usarlas en problemas de la
vida real que reflejan las tendencias de la distribución es muy importante en
las estadísticas inferenciales.

Enfoques utilizados en estadística inferencial


Un enfoque que las estadísticas inferenciales a lo largo del tiempo es la
estimación puntual y que generalmente se deriva de modelos estadísticos.
El objetivo es derivar valores únicos de parámetros poblacionales. Por
supuesto, hay ocasiones en que estos parámetros o estadísticas de población
no se pueden obtener, por lo que la estimación de intervalos también se
considera otro enfoque en las estadísticas inferenciales.

Un minuto consiste en un intervalo de tiempo de sesenta segundos.

Mientras que el primero considera el sesgo y el error de media cuadrática


mínima como propiedades que reducen la precisión, el segundo adopta
intervalos de confianza, lo que lo ha convertido en uno de sus enfoques más
populares. Dicho esto, los estadísticos, en general, prefieren la estimación
de intervalos debido al grado de confianza que viene con tales cálculos para
indicar dónde se encuentra el parámetro de la población. La proporción de
la población es uno de los parámetros que comúnmente se estima utilizando
este método.

Cuando se trata de pruebas de hipótesis, utilizamos la hipótesis nula y


alternativa para hacer afirmaciones sobre nuestros experimentos. Hacer los
supuestos estadísticos correctos sobre los valores de la muestra es tan
importante como seleccionar el estadístico de prueba correcto que rechazará
o validará la hipótesis nula o alternativa. Las puntuaciones P son
importantes para la toma de decisiones, que es algo que uno tendrá que
considerar en algún momento de este proceso de prueba de hipótesis.

En el siguiente capítulo ...


Ahora que hemos cubierto ciertos aspectos importantes de la estadística
inferencial, veamos algunos procedimientos comunes que aplican tanto la
estimación como la prueba de hipótesis que se utilizan en el análisis
inferencial en SPSS.
Capítulo 11
Uso De SPSS Para
Estadísticas Inferenciales

Como comentamos en el capítulo anterior, existen características potentes


disponibles en SPSS que se pueden usar para trabajar en la generación de
resultados de naturaleza inferencial.

Incluso si este es un libro que cubre los aspectos básicos de las estadísticas
y trata de ayudar a los principiantes a utilizar SPSS, no estaría completo sin
cubrir las características de las estadísticas inferenciales que SPSS ofrece a
sus suscriptores.

Para empezar, al igual que las estadísticas en sí mismas se desglosan en


estadísticas descriptivas e inferenciales, la última se divide en dos métodos:
la estimación y la prueba de hipótesis. Para la estimación, no solo
intentamos obtener el valor de un parámetro de población, sino que también
intentamos estimar el intervalo de números entre los que se encuentra el
valor de este parámetro.

En cuanto a la prueba de hipótesis, intentamos determinar la significación


estadística o la relación entre dos conjuntos de variables. Al examinar las
relaciones entre las variables, no solo queremos descubrir que existe una
relación positiva o negativa, sino también qué tan fuerte es y si es confiable
y relevante.

Entonces, comencemos por entender cómo ejecutar una prueba de


estimación en SPSS, después de lo cual veremos la prueba de hipótesis.

Estimación
Como se mencionó en un capítulo anterior, hay dos tipos de estimaciones,
que incluyen la estimación de puntos e intervalos. Mientras que la
estimación puntual intenta encontrar el valor exacto del parámetro, la
estimación de intervalo no solo encontrará un valor, sino que la salida
también le proporcionará un intervalo de confianza mayor y menor en valor
que ese parámetro.

Dado que la precisión de la estimación puntual es generalmente discutible,


los estadísticos prefieren la estimación de intervalos, ya que esto implica un
cálculo adicional: el intervalo de confianza. Con este nuevo valor, se puede
decir si el parámetro de población en cuestión se encuentra realmente
dentro de estos dos intervalos aleatorios.
Dicho esto, dado que el estudio de las estadísticas inferenciales depende de
la precisión para calcular los parámetros de la población, la estimación del
intervalo parece ser más confiable. Nadie querría usar una estimación
incorrecta de un parámetro para sacar conclusiones erróneas. Hay otra razón
por la que la estimación de intervalos se considera adversa al riesgo: por
naturaleza, se dice que está más cerca de la prueba de hipótesis, que
veremos más adelante.

Entonces, ahora vamos a ilustrar cómo funciona la estimación de intervalos


en SPSS examinando los datos de 474 empleados. Es bastante simple, de
verdad!
Ahora, antes de comenzar a analizar el procedimiento, entendamos lo que
buscamos en este conjunto de datos. Como se mencionó anteriormente,
estamos buscando el número promedio de años que los empleados han
pasado en la universidad para encontrar empleos de tiempo completo. No,
no solo los empleados cuyos registros están presentes en este conjunto de
datos, sino de toda la población de empleados en un país como los Estados
Unidos.

Entonces, comenzaremos seleccionando el menú Analizar y las estadísticas


descriptivas y luego seleccionando la opción Explorar, como se muestra a
continuación.
Seleccione Estadísticas descriptivas y los menús Explorar

Después de esto, agregaremos el número de años en educación a la Lista de


Dependientes. Seleccione Estadísticas después de esto. Finalmente,
seleccione Ejecutar análisis como se resalta a continuación.
Agregue la variable numérica a la Lista
de dependientes y seleccione Estadísticas

Una vez que haya seleccionado Ejecutar análisis, espere la salida como se
muestra a continuación:

Media resaltada en rojo; Intervalo de confianza resaltado en verde

Como se mencionó anteriormente, ahora tenemos la Media de la población


y el Intervalo de confianza para este valor. Dado que el intervalo de
confianza es del 95%, podemos estar seguros al 95% de que la media de la
población existe entre esos dos valores, como se resalta en verde.
Finalmente, si desea aumentar el nivel de confianza a valores más altos,
esto también funciona. Sería más inteligente seleccionar intervalos de
confianza más bajos si desea un valor más preciso de la media real de la
población.
Intervalo de confianza resaltado en verde

Dicho esto, hay más que podemos hacer con esto, lo que implica introducir
un factor que nos ayude a encontrar la verdadera media de la población
basada en este mismo factor. En este caso, encontremos el promedio de
años pasados en la universidad por empleados en función del género.

Para esto, tendremos que agregar otra variable para dividir la información
en dos secciones diferentes. En otras palabras, esperamos calcular la media
real de la población de los años promedio pasados en la universidad para
hombres y mujeres.
Como se muestra a continuación, agregue el género a la Lista de factores y
seleccione Ejecutar análisis.
Agregar una variable categórica a la lista de factores

Una vez que lo haga, espere los resultados como se muestra en la sección de
Salida a continuación:

Dividir los medios resaltados en rojo; Intervalos de confianza divididos en


verde

Como puede ver, la media real de la población se ha calculado para


empleados de ambos sexos junto con un intervalo de confianza del 98%. En
otras palabras, puede estar seguro de que la verdadera media poblacional
del número de años que pasaron en la universidad hombres y mujeres se
encuentra entre los respectivos intervalos de confianza.

Entonces, este es un ejemplo simple como se demuestra en SPSS en cuanto


a cómo se puede calcular un parámetro de población basado en una
muestra. A continuación, veremos las pruebas de hipótesis y entenderemos
por qué esto es tan importante en las estadísticas inferenciales.

Prueba de hipótesis
Ahora, las estadísticas inferenciales no son solo para calcular parámetros,
sino también para probar una hipótesis utilizando métodos estadísticos que
se han desarrollado a lo largo del tiempo. En particular, queremos saber si
existe una relación entre dos variables, pero lo más importante, queremos
saber si esta relación es real o no.

Esto se hace estableciendo una hipótesis nula o alternativa donde la primera


establece claramente que no hay relación entre los dos. En otras palabras, es
falso. El último confirma que existe una relación o la afirmación hecha es
verdadera, que se basa en cálculos confiables.
Una vez que haya configurado las dos hipótesis, podrá trabajar para calcular
el valor de probabilidad (o valor p) del experimento, de modo que podamos
elegir entre la hipótesis nula o alternativa.
En cuanto a los resultados, puede rechazar la hipótesis nula en lugar de la
hipótesis alternativa o no rechazar la hipótesis nula a favor de la hipótesis
alternativa, ya que la evidencia podría no estar disponible para anular la
hipótesis nula aquí.

Incluso si las pruebas de hipótesis están bien configuradas para que pueda
determinar si existe una relación basada en el valor p que calcula, todavía
existe la posibilidad de un error humano, ya que no siempre obtenemos un
valor p que nos ayude hacer conclusiones sólidas. Especialmente en el caso
donde se encuentra marginalmente alrededor del valor de 0.05 p.
Clasificado como error Tipo I y II, el primer tipo de error es cuando uno
rechaza la hipótesis nula a pesar de ser verdadero, mientras que el segundo
tipo de error implica no rechazar la hipótesis nula cuando es falsa. Los
expertos concluyen que el error de tipo I es mucho más serio que el de un
error de tipo II que generalmente ocurre debido al análisis de tamaños de
muestra pequeños.

Ahora, sobre la base de nuestra comprensión básica de las Pruebas de


hipótesis, vamos a afirmar que la verdadera media de la población de
empleados basada en nuestras muestras anteriores es de 27 años.
Hipótesis nula: esto apoya la afirmación de que la media de la población es
igual a la variable de prueba.

Hipótesis alternativa: esta hipótesis establece que existe una diferencia entre
la media de la población y el valor de prueba seleccionado.

Ahora, antes de comenzar, el objetivo de ejecutar esta prueba es obtener un


valor p. Por lo tanto, seleccionemos los menús Analizar y Comparación de
grupos - Parámetros, así como la opción etiquetada T-Test de una muestra
para llevar a cabo el análisis.
Seleccione Analizar, Comparación de grupo - Prueba de T paramétrica y
de una muestra

Una vez que seleccionamos esta opción, lo siguiente que debe hacer es
ingresar el Valor de prueba y seleccionar Ejecutar análisis, como se muestra
a continuación:
Ingrese la Variable de prueba y el Valor de prueba resaltados en rojo

Una vez que haga esto, espere los resultados donde puede ubicar el valor p.
Puedes encontrar el valor obtenido.

Encuentra el valor de p bajo Sig. Categoría (2 colas)


Ahora, ¿cómo se interpreta este valor y se valida si la hipótesis nula o
alternativa es la opción correcta?

Como regla general, si el valor de p obtenido es inferior a 0.05, esto sugiere


una fuerte evidencia en contra de la hipótesis nula. Por otro lado, si obtiene
un valor que es mucho mayor que 0.05, esto apunta a evidencia débil en
contra de la hipótesis nula. Por supuesto, si obtienes un valor muy cercano a
0.05, esto no es concluyente.

Como obtuvimos un valor menor a 0.05, esto significa que debemos


rechazar la hipótesis nula en favor de la hipótesis alternativa. En otras
palabras, el valor 27 no es igual a la media de la población.

Ahora, esta no es la única prueba que se puede realizar cuando se compara


un valor con una media. Existen pruebas que le permiten probar dos medios
que son variables independientes o dependientes. De hecho, puede llevar
esto aún más lejos probando tres medios y más haciendo la selección
ANOVA de una vía como se muestra en la Muestra de grupo - Paramétrico
anterior.

Otras características de SPSS disponibles en estadísticas


inferenciales
Ya que vimos dos ejemplos que trataron con la estimación y las pruebas
hipotéticas, veamos algunas otras características que están disponibles en
SPSS que nos ayudan a hacer inferencias importantes sobre los conjuntos
de datos que estamos usando.

Análisis de correlación
El análisis de correlación trata de probar la relación entre dos variables
continuas para ver si existe una relación o no. Mejor aún, también verifica
en qué dirección se dirige la relación. En otras palabras, si es positiva o
negativa. La fuerza de la relación en tal prueba se expresa como el
coeficiente r de Pearson que oscila entre +1 y -1. Cuanto más cerca están
los valores de +1 o -1, la fuerza de la relación tiende a ser perfecta. A
medida que el coeficiente se acerca a cero, reduce su fuerza. En pocas
palabras, si obtiene un valor de r de cero de Pearson, no hay relación.

En cuanto a la salida en SPSS, un valor p que es menor que 0.05, como se


muestra a continuación, significa que existe una fuerte relación entre los
dos. La fuerza de la correlación como se indica en el siguiente Coeficiente
de Pearson muestra que existe una relación sólida entre estas dos variables.

El análisis de correlación se puede realizar siguiendo el camino

Análisis factorial
El análisis factorial nos ayuda a determinar la estructura entre la correlación
de varias variables en nuestro conjunto de datos. Esto es muy útil si
tenemos un gran número de variables en nuestro conjunto de datos y eso se
puede reducir a dimensiones.

Para llevar a cabo este análisis, debe verificar si se cumplen las siguientes
condiciones: variables continuas, asociaciones lineales entre sí, un tamaño
de muestra grande y no valores atípicos. Sin entrar en demasiados detalles,
las dos pruebas que generalmente se realizan para el análisis factorial
incluyen la Medida de Adecuación de Muestreo Kaiser-Meyer-Olkin y la
Prueba de Esfericidad de Bartlett.
Análisis de regresión
Finalmente, analizamos el análisis de regresión y los tipos más comunes
disponibles en SPSS. Los análisis lineal, logístico, multinomial, ordinal y
de regresión de Poisson son los tipos que podemos usar según los tipos de
variables que desea usar en su análisis, así como el resultado deseado. Una
vez más, este tipo de análisis también busca confirmar la existencia de una
relación entre una variable dependiente y una cantidad de otras variables
independientes.

Cuando usamos esta técnica predictiva, examinamos cómo cada una o una
combinación de estas variables independientes afectan la variable
dependiente. No solo podemos usar este tipo de análisis para el pronóstico y
el modelado de series de tiempo, sino también para establecer relaciones
causales. Dicho esto, dados los numerosos modelos de regresión
disponibles para su uso, uno debe tener cuidado de seleccionar uno de estos
tipos para cumplir con los objetivos establecidos antes de utilizar esta
técnica de estadística inferencial.

En el siguiente capítulo ...


Ahora, hemos analizado las dos ramas de las estadísticas inferenciales que
se utilizan para calcular los parámetros de las poblaciones, así como el
enfoque para determinar relaciones prácticas y confiables entre dos
variables, veamos brevemente el uso de los comandos de Sintaxis en SPSS.
Capítulo 12
Uso de los comandos
de sintaxis de SPSS

Al concluir nuestro viaje con IBM SPSS, hay un último tema que debemos
cubrir. Incluso si algunas personas no están familiarizadas con la escritura
de código. son los comandos de Sintaxis que se pueden utilizar para
automatizar el análisis de datos.
Imagínese utilizando SPSS en una empresa que requiere que realice un
análisis de datos y envíe sus supervisores informes semanales, mensuales y
trimestrales. Ahora, esto podría ser simple, como resumir las ventas de la
semana. O incluso hacer predicciones para las próximas semanas por venir.

Archivo de sintaxis - Un ejemplo

Sin los comandos de Sintaxis, tendrá que apuntar y hacer clic, apuntar y
hacer clic y apuntar y hacer clic semana tras semana. ¿No es eso
simplemente triste? Por lo tanto, para aliviar a los usuarios de SPSS de esta
fuente de dolor, guardar ciertas acciones de apuntar y hacer clic en las suyas
en forma de comandos de Sintaxis le facilita la ejecución de un largo
procedimiento de comandos sin tener que hacer nada en absoluto.
Piense en esto como ejecutar un archivo por lotes en Windows o incluso un
script de Linux que le permite ejecutar una serie de comandos que
generalmente ejecuta cada dos días. Sin embargo, es genial!

En este punto, podría estar pensando: no sé cómo codificar, entonces,


¿cómo guardo un archivo de comando de Sintaxis para ejecutar estas
acciones todos los días, semanas o meses?

Realmente no tiene que saber cómo codificar, ya que con cada acción de
apuntar y hacer clic que hace, SPSS genera un código que puede guardar en
un archivo .sps.

Dicho esto, repasemos el procedimiento que te ayuda a hacer precisamente


esto. En cuanto a los que están familiarizados con la programación de
Python, puede llevar la automatización aún más al usar scripts que pueden
acortar el código en sus archivos de comandos de Sintaxis.

Python 3 - Los lenguajes para el análisis de datos.

Creación y uso de archivos de comandos de sintaxis


Ahora, supongamos que desea crear un archivo de comandos de Sintaxis
que le gustaría ejecutar para calcular la media, la varianza y la curtosis de
un conjunto de datos.

¿Cómo harías esto?


Como aprendimos en secciones anteriores, a medida que selecciona los
menús y submenús para realizar un cálculo, el código de Sintaxis se genera
en el fondo.

Para acceder a este código, todo lo que tiene que hacer es esperar a que la
Salida termine de ejecutarse para poder copiar y pegar los comandos de
Sintaxis en un archivo. Al igual que el conjunto de datos y los archivos de
salida, también podemos crear y ejecutar archivos de sintaxis.

Veamos cómo podemos crear un archivo de sintaxis y luego cómo podemos


ejecutarlo desde el menú Archivo para diferentes conjuntos de datos.

Creando un archivo de sintaxis


Como se mencionó anteriormente, supongamos que desea calcular la media,
la varianza y la curtosis de un conjunto de datos. Ahora, este conjunto de
datos podría variar cada dos semanas debido a la adición de nuevos casos y
variables. SPSS le permite crear un archivo de sintaxis que puede usar para
calcular los mismos valores en otro conjunto de datos también. Asegúrese
de guardar todos los archivos de Sintaxis para cada conjunto de datos para
los que lo use.

Ahora, digamos que queremos calcular estas estadísticas para una variable
de sistemas informáticos que consta de decenas de estudiantes de ciencias
de la computación en Yale, Harvard y Stanford. Como de costumbre,
iríamos a los menús Analizar y Estadísticas descriptivas y seleccionaríamos
Descriptivos, como se muestra a continuación:
Seleccione Analizar, Estadística Descriptiva y Descriptivos.

Ahora, mueva la variable a la sección Seleccionar variables y muévase al


menú Estadísticas como se resalta en rojo a continuación:
Seleccione el menú de opciones y las casillas de verificación etiquetadas
como media, estándar. Desviación, y Curtosis.

Ahora, una vez que haya hecho esto, seleccione Ejecutar análisis y espere
los resultados. Busque la opción Editar sintaxis, como se resalta en rojo en
la imagen a continuación:
Seleccione Editar sintaxis como resaltado en rojo

Una vez que seleccione Editar sintaxis, se abrirá una nueva pantalla con una
serie de comandos de sintaxis, como se muestra a continuación:

Código de sintaxis para calcular la media, Std. Desviación, y Curtosis.

Seleccione este código con su mouse y luego péguelo en un nuevo archivo


de Sintaxis que puede abrir en el menú Archivo:
Copie y pegue este código en un nuevo archivo de sintaxis

Para pegar este código, deberá abrir un nuevo archivo de sintaxis utilizando
la siguiente ruta, como se muestra a continuación:

Seleccione Nuevo y Sintaxis para abrir un nuevo archivo

Así es como se ve un nuevo archivo de sintaxis


Un nuevo archivo de sintaxis

Ahora, una vez que haga esto, pegue el código en este archivo y guárdelo
seleccionando Guardar como en el menú Archivo.

Select Save to save the Syntax file


If you want to run the analysis for the same dataset over and over again, all
you have to do is open the Syntax file in SPSS and select this option
highlighted in red:

Seleccione el icono Ejecutar sintaxis para volver a ejecutar el análisis.

Por supuesto, si desea ejecutar el mismo análisis para otro conjunto de


datos, solo tiene que cambiar el nombre de la variable, como se muestra a
continuación:

Cambió el nombre de la variable de


ComputerSystems a salario (salary)

Ejecute el archivo de sintaxis en el conjunto de datos que tiene esta variable


y debe obtener el resultado para la media, la desviación estándar y la
curtosis.

Mira, es muy simple!


¿Pero qué sucede si desea escribir estos comandos de Sintaxis de SPSS
usted mismo?

Cómo escribir comandos de Sintaxis de SPSS usted mismo ...

Para que usted mismo escriba estos comandos de Sintaxis, necesita saber
qué palabras clave se utilizan para crear una lista de comandos de Sintaxis
que funcionarán tan bien como poder apuntar y hacer clic a través de los
menús.

Para ello, debe acceder a la URL de la Referencia de sintaxis de comandos,


donde encontrará una lista de comandos, tal como lo analizamos en un
capítulo anterior.

Seleccione la opción Referencia de sintaxis de comandos

Tenga en cuenta que si tiene poca o ninguna experiencia en programación,


puede tomar un tiempo. Asegúrese de guardar el código para cada
procedimiento que desee repetir y modificarlo para otros conjuntos de
datos.

Con el tiempo, debería poder abrir un nuevo archivo de sintaxis y escribir


estos comandos usted mismo.

Para concluir
Hemos cubierto los conceptos básicos absolutos de guardar y ejecutar
comandos de Sintaxis. En cuanto a nuestra discusión sobre las
características de SPSS, estamos casi listos. Solo una cosa más: en cuanto
esté familiarizado con la sintaxis de SPSS, puede intentar integrar Python 2
o 3 con este increíble paquete de software.

Pensamientos finales
Admitamos una cosa: SPSS es difícil de usar al principio. Sin embargo,
dado que sus funciones están disponibles tanto para estadísticas descriptivas
como para inferenciales, se puede usar esta herramienta para mejorar su
conocimiento de las estadísticas en general, pero también para usar el poder
de la tecnología para calcular grandes cantidades de datos con facilidad.

Imagine tener una herramienta que lo ayude a calcular la media de una


variable pero que también realice pruebas hipotéticas. Así es como funciona
SPSS.
Pensamientos finales

Admitamos una cosa: SPSS es difícil de usar al principio. Sin embargo,


dado que sus funciones están disponibles tanto para estadísticas descriptivas
como para inferenciales, se puede usar esta herramienta para mejorar su
conocimiento de las estadísticas en general, pero también para usar el poder
de la tecnología para calcular grandes cantidades de datos con facilidad.

Imagine tener una herramienta que lo ayude a calcular la media de una


variable pero que también realice pruebas hipotéticas. Así es como funciona
SPSS.

¡Puedes tirar esa calculadora!

Si bien este libro ha servido para ayudar a los principiantes a aprender


estadísticas desde cero, también ha intentado ayudar a los alumnos a usar
SPSS para aplicar todos los conceptos estadísticos aprendidos. Tan simple
como sea posible. O al menos, este ha sido el objetivo dado que las
estadísticas pueden llegar a ser confusas a medida que avanzamos hacia las
estadísticas inferenciales.

Entonces, aprovechemos la oportunidad para resumir este esfuerzo de


aprendizaje tanto de SPSS como de estadísticas de una sola vez. No solo
cubrimos medidas de estadísticas descriptivas, sino que también
aprendimos cómo usarlas con conjuntos de datos reales pero simples.
Además, también intentamos comprender en qué pueden ayudarlo todas y
cada una de las funciones de SPSS, desde el menú Archivo hasta el menú
de ayuda. Por supuesto, uno no puede olvidar lo importante que es crear
buenos gráficos que puedan revelar mucho en función de los datos que está
utilizando para su análisis.

Se colocó intencionalmente un capítulo de SPSS después de un capítulo de


teoría estadística para que usted aplique los mismos conceptos aprendidos
antes, pero de manera gradual y paso a paso.

También intentamos comprender ciertos conceptos y procedimientos


utilizados en las estadísticas inferenciales que van desde una prueba T de
muestra hasta un análisis de correlación. Lo que quedaba fuera del alcance
de este libro eran los análisis estadísticos complejos, ya que habrían
demostrado ser perjudiciales para su aprendizaje de los conceptos básicos.
Dicho esto, realmente depende de usted llevar este estudio de estadísticas al
siguiente nivel, dado que hay una serie de recursos académicos disponibles
en Internet y en su universidad local.
Hay muchos recursos gratuitos para aprender
Análisis de datos a través de Internet.

Como ya sabe, el menú Analizar es probablemente el más importante entre


todos, incluso si se pueden usar las funciones contenidas en otros menús
para acelerar y automatizar su análisis de datos. Por supuesto, la
familiaridad con estas características solo puede mejorar con el tiempo, por
lo que uno debe esforzarse por seguir utilizando SPSS tanto como sea
posible. Siéntase libre de usar esta guía para ayudarlo con las funciones, ya
que algunas de ellas se han movido o cambiado completamente desde que
se lanzó la versión 25.

Dado que la ciencia de la información requiere que uno aprenda y se adapte


constantemente a los nuevos métodos, lo mejor para usted es revisar cada
una de estas características en los próximos meses. Esto es cierto también
sobre el estudio de las estadísticas, donde los conceptos teóricos requerirán
una aplicación constante. Nunca se sabe cuándo es posible que necesite una
variedad de técnicas para probar una hipótesis.
Puede comenzar buscando datos cualitativos y cuantitativos. Hay suficiente
para encontrar en todas partes estos días. Ya sea el clima, las ventas y el
marketing, la medicina, la política, la aplicación de la ley, lo que sea. Jugar
con diferentes tipos de datos también lo hará interesante y divertido.

Sí, muchos datos cualitativos en una biblioteca, ¡seguro!

Por divertida que sea esta tarea, desarrollar esa mentalidad estadística nos
ayudará no solo a recopilar buenos datos, sino también a aprender a usarlos
de manera inteligente con una herramienta tan poderosa a nuestra
disposición. Aún mejor, si puede aprender a usar los comandos de Sintaxis
y guardarlos para usarlos en el futuro, esto reducirá la cantidad de esfuerzo
y tiempo que tiene que invertir, especialmente a medida que avanza hacia
tipos más complejos de análisis de datos.

Al decir eso, sería fantástico si esta guía lo ayudara a orientarse en SPSS


mientras reduce en gran medida la incomodidad que conlleva el aprendizaje
de un nuevo paquete de software por cualquier motivo. Incluso si SPSS
puede resultar un poco difícil de aprender, hay características que le dan una
clara ventaja sobre la competencia. No hay nada como esta herramienta en
el mercado en este momento, gracias a los años que hemos pasado para
mantenerla actualizada o los tiempos en que vivimos.

Hablando de eso, sería un placer considerar aprender tanto los idiomas de


Python como de R, ya que los analistas de datos de buena fe consideran que
esto es una necesidad si recién está comenzando con el análisis de datos y la
ciencia de datos.
Finalmente, me gustaría dejarles con una cita de Lao Tzu, quien dijo que un
viaje de mil millas comienza con un solo paso.

Miguel Ángel, a los 87 años, dijo que todavía estaba aprendiendo.

Al leer este libro, has hecho exactamente eso. Nunca dejes de aprender.
Nunca dejes de mejorar. Para la carrera a la perfección realmente no tiene
línea de meta!
Bibliografía

Textos Académicos
Isotala, J. (n.d.). Basics of Statistics. Tampere, Finland: University of
Tampere.

Lane, D.M. (n.d.). Introduction to Statistics. Houston, TX: Rice University.

McCormick, K & Salcedo, J. (2015). SPSS for Dummies (3rd ed.). Hoboken,
NJ: Wiley Publishing.

Yakir, B. (2011). Introduction to Statistical Thinking (With R, without


Calculus). Jerusalem, Israel: The Hebrew University.

Almquist, Y.B., Ashir, S. & Brännström, L. (n.d.). A Guide to Quantitative


Methods. Stockholm, Sweden: Stockholm University.

Fuentes en linea
Anderson, D.R., Sweeney, D.J., & Williams, T.A. (2019). Statistics.
Encyclopædia Britannica. Retrieved from
https://www.britannica.com/science/statistics

About SPSS Inc. (2009). IBM SPSS. Retrieved from


http://www.spss.com.hk/corpinfo/history.htm
Bose, B. (2018). Top 10 Python Libraries for Data Science in 2018. Digital
Vidya. Retrieved from https://www.digitalvidya.com/blog/top-10-
python-libraries-for-data-science/

What is SPSS and How Does It Work? (2019). Educba. Retrieved from
https://www.educba.com/what-is-spss-and-how-does-it-work/
IBM SPSS Statistics. (2019). IBM. Retrieved from
https://www.ibm.com/products/spss-statistics

IBM SPSS Statistics Desktop 25.0.0.0. (n.d.). IBM. Retrieved from


https://www.hearne.software/getattachment/03761183-bc74-420e-
984d-8ee688b80af0/SPSS-Statistics-v25-System-Requirements-
Windows.aspx

SeattleDataGuy. (2018). 7 Use Cases For Data Science And Predictive


Analytics. Towards Data Science. Retrieved from
https://towardsdatascience.com/7-use-cases-for-data-science-and-
predictive-analytics-e3616e9331f9

Bobriakov, I. (2018). Top 7 Data Science Use Cases in Healthcare.


ActiveWizards. Retrieved from https://medium.com/activewizards-
machine-learning-company/top-7-data-science-use-cases-in-
healthcare-cddfa82fd9e3

Petersen, R. (2019). 37 Big Data Case Studies with Big Results. Businesses
Grow. Retrieved from https://businessesgrow.com/2016/12/06/big-
data-case-studies/

Data. (2019). Merriam-Webster Dictionary. Retrieved from


https://www.merriam-webster.com/dictionary/data

Raw data. (2019). Wikipedia. Retrieved from


https://en.wikipedia.org/wiki/Raw_data

Bhat, A. (2019). Quantitative Data: Definition, Types, Analysis and


Examples. QuestionPro. Retrieved from
https://www.questionpro.com/blog/quantitative-data/

McLeod, S. (2017). What’s the difference between qualitative and


quantitative research? Simply Psychology. Retrieved from
https://www.simplypsychology.org/qualitative-quantitative.html
Summarising and Presenting Data. (2019). SurfStat Australia. Retrieved from
https://surfstat.anu.edu.au/surfstat-home/1-1-1.html

Minitab Blog Editor. (2017). Understanding Qualitative, Quantitative,


Attribute, Discrete, and Continuous Data Types. The Minitab Blog.
Retrieved from http://blog.minitab.com/blog/understanding-
statistics/understanding-qualitative-quantitative-attribute-discrete-
and-continuous-data-types

Anatasia. (2017). Overview of Qualitative And Quantitative Data Collection


Methods. Cleverism. Retrieved from
https://www.cleverism.com/qualitative-and-quantitative-data-
collection-methods/

Utsav, G. (n.d.). Data Cleansing | Introduction. Geeks for Geeks. Retrieved


from https://www.geeksforgeeks.org/data-cleansing-introduction/

Ma, X., Hummer, D., Golden, J.J., Fox, P.A., Hazen, R.M., Morrison, S.M.,
Downs, R.T., Madhikarmi, B.L., Wang, C., & Meyer, M.B. (2017).
Using Visual Exploratory Data Analysis to Facilitate Collaboration
and Hypothesis Generation in Cross-Disciplinary Research.
International Journal of Geo-Information, 6(11), 368.
https://doi.org/10.3390/ijgi6110368

Valcheva, S. (n.d.). Qualitative vs Quantitative Data: Definitions, Analysis,


Examples. Intellspot. Retrieved from http://intellspot.com/qualitative-
vs-quantitative-data/

Types of Data & Measurement Scales: Nominal, Ordinal, Interval and Ratio.
(2019). My Market Research Methods. Retrieved from
https://www.mymarketresearchmethods.com/types-of-data-nominal-
ordinal-interval-ratio/

IBM SPSS Statistics Subscription - New documentation. (2019). IBM SPSS


Statistics. Retrieved from
https://spsssub.ibm.com/docs/content/SSLVMB_subs/statistics_kc_dd
ita_cloud/spss/product_landing_cloud.html?context=analytics

Descriptive and Inferential Statistics. (2018). Laerd Statistics. Retrieved from


https://statistics.laerd.com/statistical-guides/descriptive-inferential-
statistics.php

Normal Distribution. (n.d.). University of Connecticut. Retrieved from


https://researchbasics.education.uconn.edu/normal-distribution/#

Sullivan, L. & LaMorte, W.W. (2016). InterQuartile Range (IQR). Boston


University. Retrieved from http://sphweb.bumc.bu.edu/otlt/mph-
modules/bs/bs704_summarizingdata/bs704_summarizingdata7.html

Measures of Shape. (2013). Australian Bureau of Statistics. Retrieved from


http://www.abs.gov.au/websitedbs/a3121120.nsf/home/statistical+lan
guage+-+measures+of+shape

Donges, N. (2018). Intro to Descriptive Statistics. Towards Data Science.


Retrieved from https://towardsdatascience.com/intro-to-descriptive-
statistics-252e9c464ac9

Chapter 1: Descriptive Statistics and the Normal Distribution. (n.d.). ER


Services. Retrieved from https://courses.lumenlearning.com/suny-
natural-resources-biometrics/chapter/chapter-1-descriptive-statistics-
and-the-normal-distribution/

Statistics Dictionary. (2019). Stat Trek. Retrieved from


https://stattrek.com/statistics/dictionary.aspx?
definition=interquartile%20range

Measures of Central Tendency. (2018). Laerd Statistics. Retrieved from


https://statistics.laerd.com/statistical-guides/measures-central-
tendency-mean-mode-median.php
Gardner, M. (n.d.). Statistics - A Guide. Data Analytics. Retrieved from
http://www.dataanalytics.org.uk/Data%20Analysis/Statistics/summari
zing-data.htm#shape_statistics

Jain, D. (2018). Skew and Kurtosis: 2 Important Statistics terms you need to
know in Data Science. Code Burst. Retrieved from
https://codeburst.io/2-important-statistics-terms-you-need-to-know-
in-data-science-skewness-and-kurtosis-388fef94eeaa
French, K. (n.d.). Why Your Brain Loves Visual Content [Infographic].
Column Five Media. Retrieved from
https://www.columnfivemedia.com/why-your-brain-loves-visual-
content-infographic

Slutsky, D.J. (2014). The Effective Use of Graphs. Journal of Wrist Surgery,
3(2), 67-68. https://10.1055/s-0034-1375704

Measures of Skewness and Kurtosis. (2013). NIST SEMATECH. Retrieved


from
https://www.itl.nist.gov/div898/handbook/eda/section3/eda35b.htm

Helmenstine, T. (2018). What Is the Difference Between Independent and


Dependent Variables? ThoughtCo. Retrieved from
https://www.thoughtco.com/independent-and-dependent-variables-
differences-606115
Taylor, C. (2018). 7 Graphs Commonly Used in Statistics. ThoughtCo.
Retrieved from https://www.thoughtco.com/frequently-used-statistics-
graphs-4158380

Line Graph. (2019). SmartDraw. Retrieved from


https://www.smartdraw.com/line-graph/

Collecting Data. (2019). BBC Skillswise. Retrieved from


http://www.bbc.co.uk/skillswise/factsheet/ma35data-l1-f-collecting-
and-representing-data-using-line-graphs

Galarynk, M. (2018). Understanding Boxplots. Towards Data Science.


Retrieved from https://towardsdatascience.com/understanding-
boxplots-5e2df7bcbd51

Standard Score. (2018). Laerd Statistics. Retrieved from


https://statistics.laerd.com/statistical-guides/standard-score.php

Z-Score: Definition, Formula and Calculation. (2019). Statistics How To.


Retrieved from
https://www.statisticshowto.datasciencecentral.com/probability-and-
statistics/z-score/

Z-table (Right of Curve or Left). (2019). Statistics How To. Retrieved from
https://www.statisticshowto.datasciencecentral.com/tables/z-table/

Brown, S. (2011). Measures of Shape: Skewness and Kurtosis. Retrieved


from
http://web.ipac.caltech.edu/staff/fmasci/home/astro_refs/SkewStatSig
nif.pdf

Chapter 3 Evaluating the Characteristics of Data. (2016). SAGE Publishing.


Retrieved from https://us.sagepub.com/sites/default/files/upm-
binaries/70453_Pett_Chapter_3.pdf

Case Summaries. (2019). IBM Knowledge Center. Retrieved from


https://www.ibm.com/support/knowledgecenter/en/SSLVMB_subs/sta
tistics_mainhelp_ddita/spss/base/idh_summ.html

Line Graphs. (2017). Math Goodies. Retrieved from


https://www.mathgoodies.com/lessons/graphs/line

Multiple Line Graphs. (2019). CK-12. Retrieved from


https://www.ck12.org/statistics/multiple-line-graphs/lesson/Multiple-
Line-Graphs-MSM7/
How to Analyze a Line Graph. (n.d.). SAISD Social Studies Department.
Retrieved from
https://www.saisd.net/admin/curric/sstudies/resources/teacher_zone/s
kills/howto_line_graph.pdf

Population Pyramid. (n.d.). The Data Visualisation Catalogue. Retrieved


from https://datavizcatalogue.com/methods/population_pyramid.html
Parallel Coordinates Plot. (n.d.). The Data Visualisation Catalogue.
Retrieved from
https://datavizcatalogue.com/methods/parallel_coordinates.html

Why It Matters: Probability and Probability Distributions. (n.d.). Lumen


Candela. Retrieved from https://courses.lumenlearning.com/wmopen-
concepts-statistics/chapter/introduction-6/

Sampling Distribution of the Mean. (n.d.). Retrieved from


http://www.skidmore.edu/~hfoley/Handouts/Samp.Dist.pdf

Distribution of Sample Means (1 of 4). (n.d.). Lumen Candela. Retrieved


from https://courses.lumenlearning.com/wmopen-concepts-
statistics/chapter/distribution-of-sample-means-1-of-4/

Williams, T.A., Sweeney, D.J., Anderson, D.R., Gaur, A., Higgins, J., Lotha,
G., Sampaolo, M & The Editors of Encyclopaedia Britannica.
Random variables and probability distributions. Encyclopædia
Britannica. Retrieved from
https://www.britannica.com/science/statistics/Random-variables-and-
probability-distributions#ref367442

The Editors of Encyclopaedia Britannica. (2016). Point estimation.


Encyclopædia Britannica. Retrieved from
https://www.britannica.com/science/point-estimation
Estimator. (2019). Wikipedia. Retrieved from
https://en.wikipedia.org/wiki/Estimator

Stephanie. (2016). Population Proportion. Statistics How To. Retrieved from


https://www.statisticshowto.datasciencecentral.com/population-
proportion/

Central Limit Theorem: Definition and Examples in Easy Steps. (2019).


Statistics How To. Retrieved from
https://www.statisticshowto.datasciencecentral.com/probability-and-
statistics/normal-distributions/central-limit-theorem-definition-
examples/

Point Estimates and Confidence Intervals. (n.d.). CQE Academy. Retrieved


from http://www.cqeacademy.com/cqe-body-of-
knowledge/quantitative-methods-tools/point-estimates-and-
confidence-intervals/

Kenton, W. (2018). Statistically Significant. Investopedia. Retrieved from


https://www.investopedia.com/terms/s/statistically_significant.asp

Rumsey, D.J. (2019). What a p-Value Tells You about Statistical Data.
Dummies. Retrieved from
https://www.dummies.com/education/math/statistics/what-a-p-value-
tells-you-about-statistical-data/

One-Sample T-Test using SPSS Statistics. (n.d.). Laerd Statistics. Retrieved


from https://statistics.laerd.com/spss-tutorials/one-sample-t-test-
using-spss-statistics.php

Jones, J. (2019). Hypothesis Testing with SPSS. Richland College


Community. Retrieved from
https://people.richland.edu/james/lecture/spss/testing/
Foley, B. (2018). What is Regression Analysis and Why Should I Use It?
Survey Gizmo. Retrieved from
https://www.surveygizmo.com/resources/blog/regression-analysis/

broadcasttom10 [Screen name]. 2015, January 11). Estimation and


Confidence Intervals in SPSS [Video file]. Retrieved from
https://www.youtube.com/watch?v=8LnvZB9IWJw

Imagenes
Froztbyte. (Photographer). (2010). The logo of SPSS [Digital Image].
Retrieved from
https://commons.wikimedia.org/wiki/File:SPSS_logo.svg

Felsenburgh, J. (Photographer). (2013). Karl Pearson, 1910 [Digital Image].


Retrieved from
https://commons.wikimedia.org/wiki/File:Karl_Pearson,_1910.jpg

Wills, T. (Photographer). (2013). Card puncher - NARA - 513295 [Digital


Image]. Retrieved from
https://en.wikipedia.org/wiki/File:Card_puncher_-_NARA_-
_513295.jpg

Hammond, C (Photographer). (n.d.). FORTRAN The Pioneering


Programming Language [Digital Image]. IBM. Retrieved from
https://www.ibm.com/ibm/history/ibm100/us/en/icons/fortran/impacts
/

Harris, D. (Photographer). (2019). Math Hurts: Risks of Predictive Analytics


for Small Businesses [Digital Image]. Software Advice. Retrieved
from https://www.softwareadvice.com/resources/predictive-analytics-
for-small-business/
marketingapponfly (Photographer). (2016). IBM SPSS Statistics Base on
AppOnFly [Digital Image]! Windows Remote Desktop. Retrieved
from
https://windowsremotedesktopcom.wordpress.com/2016/01/08/ibm-
spss-statistics-base-on-apponfly-2/

Stevens, J (Photographer). (2018). How to choose between R and Python for


careers in data science [Digital Image]. Working Nation. Retrieved
from https://workingnation.com/r-python-data-science-careers/

McZusatz (Photographer). (2017). Matlab Logo [Digital Image]. Wikiversity.


Retrieved from https://en.wikiversity.org/wiki/File:Matlab_Logo.png

Ringstrom, D (Photographer). (2016). An Easier Way to Open CSV Files in


Excel [Digital Image]. Accounting Web. Retrieved from
https://www.accountingweb.com/technology/excel/an-easier-way-to-
open-csv-files-in-excel

Hamrick, C. (Photographer). (2016). Stop Touching the Hot Stove [Digital


Image]. Daily PS. Retrieved from https://dailyps.com/stop-touching-
the-hot-stove/

Barman, S. (Photographer). (2010). Konrad Zuse - Inventor of Modern


Computer [Digital Image]. Code Pen. Retrieved from
https://codepen.io/shuvongkor/full/bMLgxx

Valcheva, S. (Photographer). (n.d.). Qualitative vs Quantitative Data:


Definitions, Analysis, Examples. Intellspot. Retrieved from
http://intellspot.com/qualitative-vs-quantitative-data/
IBM SPSS

Consejos y Trucos para Aprender y Estudiar


Estadística con IBM SPSS desde la A hasta
la Z

WALKER SCHMIDT
Introducción

IBM SPSS: Consejos y Trucos para Aprender y Estudiar Estadística


utilizando IBM SPSS desde la A hasta la Z contienen pasos y estrategias
probadas sobre cómo realizar análisis estadísticos utilizando el software
SPSS. Para aquellos que se sienten ansiosos y abrumados por los términos
técnicos y las teorías de la mayoría de los textos y cursos de estadística, este
libro representa un enfoque de fácil lectura y comprensión para estudiar
estadística utilizando IBM SPSS.

El análisis de datos es un proceso que requiere una cierta habilidad si se


quieren obtener los resultados correctos. Es fundamental para la
investigación porque actúa sobre la información codificada con datos para
generar nueva información que será interpretada y generalizada. El
resultado del análisis de datos se relaciona con la pregunta de investigación
y se presenta en un informe. Por lo tanto, el dominio de los procesos
implicados en el análisis de datos es esencial para el resultado final de un
esfuerzo de investigación o una práctica estadística.

Este libro pretende dar un paso sabio para guiar al lector en el proceso de
análisis de datos utilizando IBM SPSS como herramienta. Lo que diferencia
a este libro de otros libros de estadística es que no aburre al lector con los
rigores matemáticos que conlleva el análisis estadístico. En su lugar, se
centra en cómo el software IBM SPSS puede ayudarte a despejar el
desorden y llegar a un resultado fiable y válido.

El paquete de software obtuvo su nombre actual—IBM SPSS, en 2010. Las


explicaciones de este libro se han diseñado utilizando la versión 23 del
software. Si tienes alguna de las versiones anteriores del paquete este libro
te seguirá siendo útil porque la mayor parte de la información que contiene
también se aplica a las versiones previas.
Este libro trata en detalle el sistema de análisis de datos IBM SPSS
Statistics (¡llamado brevemente PASW Statistics en 2009!). ¿Por qué sólo
SPSS Statistics y no otro paquete estadístico? SPSS-Statistics es
probablemente el sistema estadístico con mayor distribución en todo el
mundo.

Las numerosas evaluaciones realizadas con SPSS Statistics para fines de


investigación en las ciencias sociales y otras disciplinas, demuestran la
aceptación general del sistema.

1. Cuando se toma un primer contacto con los sistemas de análisis de


datos, tiene sentido dar preferencia a un sistema universal de amplio
uso y difusión sobre otros programas. Esto permite al lector realizar
un gran número de análisis habituales en la práctica empírica. No
obstante, también podría considerarse un producto como STATA,
SAS o R con una argumentación similar.

2. El factor decisivo para SPSS Statistics es, en última instancia, la


larga experiencia del autor con el programa.

Desde la publicación de la primera descripción del programa SPSS en 1970,


el sistema ha experimentado un gran auge. Está disponible en numerosas
versiones para diferentes computadoras y sistemas operativos. Durante un
breve periodo de tiempo, el programa no se llamó SPSS, sino PASW-
Statistics, donde PASW significaba "Predictive Analytics Software" o
Software de Análisis Predictivo.

Desde que la empresa SPSS Inc. fue adquirida completamente por IBM en
octubre de 2009, el producto se llama IBM SPSS Statistics. Así que el
antiguo nombre está (casi) de vuelta. Sin embargo, predominantemente
seguimos utilizando el nombre SPSS Statistics, que entonces siempre se
entiende como "IBM SPSS Statistics". Desde el 10.01.2010, la compañía
SPSS está completamente integrada en IBM.
¿Quién utiliza este sistema de programas? Los usuarios son todas las
instituciones que se ocupan de la evaluación y presentación de datos. Por lo
tanto, no es de extrañar que SPSS no sólo se utilice en las universidades,
sino también en el sector privado y en las administraciones públicas.

El uso universitario del sistema de análisis se extiende a muchas disciplinas:


sociología, ciencias políticas, psicología, administración de empresas,
economía, biología, medicina, geografía, historia, educación, entre otras.
Algunos ejemplos prácticos demostrarán dónde se ha utilizado ya el SPSS
con éxito:

Biblioteconomía: en la teoría de la biblioteconomía, las exposiciones de


libros se consideran generalmente positivas como parte importante de la
labor de relaciones públicas de las bibliotecas. Una encuesta realizada en
Alemania a 95 bibliotecas científicas universales debería proporcionar
información sobre el estado de las actividades de exposición en la práctica.
Los resultados de la encuesta se analizaron con el programa SPSS y se
presentaron en forma de tabla.
Se ha demostrado que las bibliotecas universitarias académicas ofrecen un
rico espectro de servicios de exposición, a veces con grandes gastos. Las
exposiciones se consideran un medio eficaz y, la biblioteca como institución
cultural y

-para concienciar a un público más amplio de la importancia del papel del


mediador.
Folclore: Existe un interesante estudio sobre el cambio de la cultura
folclórica a través de la migración al vecindario Lucero de Bogotá. En la
capital de Colombia (Bogotá), se preguntó a los habitantes del vecindario
Lucero que se habían trasladado desde dos departamentos vecinos cómo
había cambiado su vida a raíz del traslado en cuanto a la cultura folclórica
(vestimenta, trajes tradicionales, costumbres, fiestas, entre otras) y la
calidad de vida (trabajo, comida, bebida, vivienda, finanzas).
El análisis de los datos con el SPSS muestra que la emigración reduce
significativamente la cultura popular y mejora la calidad de vida, pero su
número aumenta drásticamente. Para frenar el éxodo rural por parte del
Estado, hay que mejorar la calidad de vida en las zonas rurales con medidas
adecuadas.
Administración de Empresas: Los empresarios deben elaborar un
inventario al final de cada ejercicio en el que registran los activos y las
deudas (§ 240 HGB Código de Comercio). Según el § 241 (1) HGB, el
inventario de activos también puede determinarse a partir de muestras
aleatorias.
Con la ayuda del SPSS, es posible realizar los trabajos preliminares
necesarios a partir de los datos pertinentes, tomar muestras y, una vez
recogidos los activos, estimar el valor total de un colectivo de activos. En
función de la información preliminar disponible, deben utilizarse distintos
métodos de estimación.

Esos pocos ejemplos ilustran la amplia gama de usos de SPSS Statistics.


La versión actual del programa es SPSS-Statistics 26. En este documento
introductorio se enseñan los comandos básicos de SPSS-Statistics 26 para
Windows. Los comandos también pueden utilizarse en SPSS Statistics bajo
otros sistemas operativos.
SPSS Statistics no es un paquete de programas monolítico, sino que consta
del paquete básico "SPSS Statistics Standard" y de variantes con
funcionalidad amplia (Professional, Premium).
Por ejemplo, no hay que exagerar el hecho de que SPSS (el sistema más
utilizado) es el mayor factor de influencia en la práctica de la investigación
de los últimos 10 años y en el campo de las ciencias sociales, SPSS se ha
convertido en una especie de estándar.
Hay que destacar que se utilizan muchos otros programas, como LISREL,
MSP, PML y una serie de desarrollos propios. Por ejemplo, Woodward /
Elliott/Gray/Matlock (1988), en su "Dictionary of Statistical
Microcomputer Software", ya describe más de 200 programas estadísticos
sólo para computadoras personales.
Este libro es una introducción a SPSS Statistics. Dado que no todos los
lectores tienen los mismos requisitos previos para tratar con SPSS Statistics,
se ofrece aquí una orientación para los diferentes grupos de lectores.

Público Objetivo Pasajes Recomendados


Poco o ningún Comenzar con los
conocimiento básico de Capítulos 1 y 2 como
Windows y SPSS Trabajo Preliminar e
Statistics Introducción
Disponer de Para orientarte, debes
conocimientos de leer el capítulo 3, para
Windows más información ver el
capítulo 4.
Se dispone de Capítulos 5, 6 y 7
conocimientos básicos de
estadística de SPSS
Conocimientos básicos Orientación sobre la tabla
en el manejo de las de contenidos o el índice
estadísticas SPSS o la literatura secundaria

Se recomienda encarecidamente aprender con la práctica. Para sacar el


máximo partido a este libro, asegúrate de que tienes instalado IBM SPSS en
tu sistema y practica los pasos que se ofrecen en el libro. Dicha práctica
aumentará tu confianza y te ayudará a comprobar que lo estás haciendo
bien.
Capítulo Uno
Trabajo Preliminar

Los datos son tan buenos como la información que los proporciona.
—Daniel Jimi

Imaginemos a una enfermera que toma la temperatura de un paciente con


un termómetro roto o a un radiólogo que toma una radiografía con una
máquina defectuosa. El resultado de esa medición podría alterar todo el
curso del tratamiento de ese paciente como consecuencia del diagnóstico
erróneo. El análisis de datos funciona de forma similar. Si los instrumentos
utilizados para obtener la información son defectuosos, tu nivel de destreza
con el SPSS de IBM resulta irrelevante porque los datos que estás
analizando son erróneos.

Los instrumentos de toma de datos deben ser adecuados para el estudio que
has diseñado. El diseño del estudio se basa en los instrumentos que se
utilizan para recopilar información. La información obtenida al realizar el
estudio debe codificarse en el software IBM SPSS. Para comunicarte
eficazmente con el software, debes hablar en el lenguaje que éste entiende
—los códigos. Por lo tanto, necesitas un libro de códigos que te ayude a
convertir la información en datos o códigos. Conseguir estos fundamentos
correctamente te dará una base sólida cuando navegues por algunos
aspectos más complejos de los análisis. Y lo que es más importante, los
resultados que obtengas serán válidos y fiables porque has gestionado bien
los aspectos básicos.

El primer trabajo preliminar y que hay que hacer es afinar los determinantes
de la calidad de los datos que se obtienen para el análisis. Estos
determinantes son el diseño general del estudio, la elección de las escalas y
las medidas y los instrumentos utilizados para recoger la información.
Hay diferentes enfoques de la investigación. Se puede emplear un enfoque
experimental o un enfoque cuasi-experimental (con encuestas, cuestionarios
y observación). Estos enfoques no son superiores entre sí. Tu pregunta de
investigación determinará el diseño de investigación más adecuado.
Consultar a personas que ya han investigado en tu área de investigación
puede proporcionar información valiosa sobre el diseño de investigación
qué debes utilizar.

Si tu investigación requiere el uso de un diseño de investigación


experimental, cerciórate de que tienes suficientes participantes para el
experimento. Ten cuidado de no utilizar grupos que limiten las conclusiones
que puedas sacar. Normalmente, el número de variables independientes y
dependientes debe informar del número de grupos que crees. Vale la pena
tener un grupo de control sobre el que no realizarás ninguna prueba.
También puedes decidir si probar los mismos casos en todas las condiciones
o probar diferentes casos en cada condición experimental.

En la medida de lo posible haz de forma aleatoria la asignación de los


participantes a las condiciones experimentales. Vigila las variables extrañas
o intervinientes y controlarlas de ser posible. Si no se pueden controlar,
mídelas. Medirlas permite controlarlas estadísticamente.

Realiza una prueba piloto y ensayos generales. Esto te proporcionará los


ajustes necesarios para evitar la contaminación de los resultados. Aunque
no puedes controlar las circunstancias imprevistas, debes hacer lo posible
por controlar todo lo que puedas. Las pruebas piloto deben realizarse con el
mismo tipo de personas que utilizarás para el principal.

La recopilación de datos requiere mediciones. Y la medición implica el uso


de alguna escala específica. Las escalas validadas abundan. Saber cuál es la
adecuada para tu investigación es otra historia. Algunas escalas son de
dominio público, mientras que otras hay que comprarlas al editor. Debes
realizar una prueba piloto de cualquier escala que decidas utilizar para
asegurarte de si es adecuada para tu muestra.

Hay dos criterios básicos para elegir una escala para tu investigación:

1. ¿Es fiable?

2. ¿Es válida?

Una escala es fiable si está libre de errores aleatorios. Una escala es fiable si
tiene estabilidad temporal y consistencia mental. La estabilidad temporal se
refiere a la fiabilidad de una escala con respecto a la prueba. Se administra
la escala o la medida a las mismas personas en diferentes intervalos
(normalmente no más de dos semanas) y se calcula la correlación entre las
puntuaciones. Si la correlación es alta, la escala es fiable. La medida de
estabilidad temporal es fiable sólo cuando mide características estables que
probablemente no cambien en un periodo de tiempo tan corto.

La consistencia interna mide el nivel de coherencia entre los ítems que


componen la escala. ¿Todos los ítems miden el mismo atributo subyacente?
El estadístico más utilizado para medir la consistencia interna de una escala
es el coeficiente alfa de Cronbach. Sus valores van de 0 a 1. Cuanto más
alto sea el valor, mayor será la fiabilidad. Normalmente, no debe ser inferior
a 0,7, salvo que los ítems sean inferiores a 10. ¿Mide una escala lo que se
supone que debe medir? Si es así, la escala es válida.
Los principales tipos de validez son la validez de contenido, de criterio y de
constructo. La validez de contenido también se conoce como validez de
materia. Se utiliza para comprobar si la escala ha cubierto el ámbito de
contenido previsto. La validez de criterio compara las escalas con algún
criterio medible. La validez de constructo pone a prueba una escala en
términos de algunas hipótesis derivadas teóricamente sobre la naturaleza de
la variable o constructo subyacente. ¿En qué medida está relacionado
(validez convergente) o no (validez discriminante) este constructo con otros
constructos?

El tipo de cuestionario que prepares para tu encuesta dependerá de la


técnica estadística que quieras utilizar. Existen dos tipos principales de
preguntas:
1. Preguntas abiertas
2. Preguntas cerradas
Las preguntas cerradas requieren que el encuestado elija entre un número
específico de opciones. La codificación de las preguntas cerradas en IBM
SPSS es fácil. A cada opción se le atribuye un código. Por ejemplo, una
elección entre Hombre y Mujer puede codificarse como Mujer-1 Hombre-2.
Los valores numéricos son requeridos por IBM SPSS. Debes atenerte a la
convención que elijas para la numeración a lo largo de un determinado
cuestionario.

Las preguntas abiertas no son restrictivas. Permiten a los encuestados dar


las respuestas que consideren oportunas. La codificación de las preguntas
abiertas requiere resumir las respuestas en categorías específicas. A
continuación, se asignan valores numéricos a las categorías.

La tercera opción para el cuestionario es combinar preguntas abiertas con


preguntas cerradas. Este tercer enfoque te permite saber si tu cuestionario
cubre todas las categorías de respuestas que tus encuestados desean dar. La
elección del formato de respuesta también determina lo que ocurre durante
el análisis. En algunos análisis te permiten obtener una banda de
puntuaciones, por ejemplo, 5-10; 11-15; 16-20, etc. mientras que otros
pueden requerir cifras exactas. Los estudios de correlación, por ejemplo,
requieren cifras exactas. Evita en lo posible las opciones binarias. Utiliza
una escala de tipo Likert que ofrezca opciones que vayan desde totalmente
en desacuerdo hasta totalmente de acuerdo. El aumento de la gama de
puntuaciones posibles aumenta el número de análisis estadísticos que
puedes realizar.

Realizar una prueba piloto de tu cuestionario te ayudará a ver los ajustes


necesarios que debes hacer. La elaboración de un cuestionario requiere
evitar algunos de estos errores comunes:
1. Hacer preguntas con formatos complejos.

2. Utilizar dobles negaciones que puedan causar confusión.

2. Introducir términos específicos de la cultura que pueden inducir un


error a los encuestados.

3. Hacer preguntas capciosas que puedan afectar a la objetividad de la


respuesta.

4. Utilizar palabras ambiguas con más de un significado.

5. Utilizar palabras con carga emocional.

6. Hacer preguntas de doble sentido.

7. Usar términos técnicos o abreviaturas que no son comunes o


conocidos por los encuestados.
Cómo Preparar un Libro de Códigos (Codebook)
Es necesario preparar un libro de códigos porque el software de IBM SPSS
no se comunica de la misma manera que los humanos. Por lo tanto,
necesitas interpretar cada caso en un lenguaje que el paquete pueda
entender. Esto significa que tienes que decidir y registrar cómo vas a definir
y etiquetar cada una de las variables. También hay que decidir los números
que se asignarán a cada una de las posibles respuestas.

Usualmente, un libro de códigos debe contener la siguiente información;

1. Nombre del SPSS, por ejemplo ID


2. El nombre de la variable, por ejemplo, Número de Identificación

3. Instrucción de codificación, por ejemplo, Número asignado a cada


encuesta

4. Escala de medición, por ejemplo, Escala

Las instrucciones de codificación contienen la forma de codificar cada una


de las respuestas obtenidas. Existen tres escalas de medición en IBM SPSS,
a saber:

Nominal (sin orden)

Ordinal (ordenada)
Escalas (puntuaciones continuas con muchos valores)

En IBM SPSS, existen reglas para asignar nombres a las variables. Éstas
son:

1. Los nombres de las variables deben ser únicos

2. Los nombres de las variables deben empezar por una letra

3. Los nombres de las variables no deben tener espacios, puntos ni


símbolos

4. Los nombres de las variables no deben incluir palabras de comando


en inglés de SPSS (one, all, too, it, by, or, eq, gt, with, not, and, ge).

5. Los nombres de las variables no pueden superar los 64 caracteres.

6. El primer nombre de variable en cualquier conjunto de datos debe


ser ID.
Algunas respuestas ya tienen códigos numéricos, por ejemplo, la edad en
años, pero a otras hay que asignarles un código antes de poder introducirlas
en IBM SPSS. Esto es bastante sencillo para las preguntas cerradas. Para las
preguntas abiertas, tendrás que trabajar un poco más. Encuentra categorías
comunes en las respuestas proporcionadas. Enumera las categorías
principales en tu libro de códigos y asigna valores numéricos a cada
categoría. Cuando encuentres respuestas que no encajen en ninguna de las
categorías, asigna un nuevo número.

Una vez tengas listo tu libro de códigos, lo siguiente es crear un archivo de


datos y convertir la información proporcionada por tus encuestados en datos
que puedas analizar. Pero antes, hay alguien que me gustaría que
conocieras: IBM SPSS.

IBM SPSS es un paquete de software estadístico utilizado para el análisis


de datos. SPSS es la abreviatura de Statistical Package for Social Sciences
que en español significa Paquete Estadístico para Ciencias Sociales.
Originalmente, SPSS fue diseñado para los campos de Ciencias Sociales.
Sin embargo, ha ganado una amplia aplicación en otros campos de las
Ciencias y el Comportamiento, las ciencias de la salud y el marketing.

El funcionamiento de IBM SPSS utiliza diferentes 'ventanas' para diferentes


acciones. Para utilizar las ventanas, necesitas tener un archivo de datos.
Puedes importar uno o crear un archivo de datos nuevo desde cero. Lo que
vamos a aprender es cómo crear archivos de datos, abrir y cerrar archivos
de datos y explorar las ventanas de IBM SPSS con estos archivos de datos
en la mano.

Nota: Se supone que está familiarizado con el sistema operativo Windows.


Por lo tanto, las explicaciones que siguen se basarán en esa suposición.

Puedes iniciar el paquete IBM SPSS haciendo doble clic en el icono de


SPSS del escritorio. Si no hay ningún icono etiquetado como SPSS en tu
escritorio, no te preocupes. Busca el icono de Windows o el icono de Inicio
dependiendo de la versión de tu sistema operativo y selecciona "Todos los
Programas" o "Todas las Aplicaciones". Busca la carpeta denominada IBM
SPSS Statistics. Haz clic en ella. Deberías encontrar la aplicación llamada
"IBM SPSS Statistics 23". Es posible que tengas otras versiones de SPSS.
Una tercera forma de iniciar IBM SPSS es hacer doble clic en un archivo de
datos de IBM SPSS existente en el Explorador de Windows. Los archivos
de IBM SPSS suelen guardarse con una extensión .sav.

Una vez que hayas puesto en marcha tu paquete, lo siguiente es aprender a


abrir un archivo de datos existente. Para abrir un archivo de datos existente,
debe haber un archivo de este tipo en tu computadora. Desde la parte
superior de la ventana o pantalla de SPSS, haz clic en Archivo en el menú y
elige Abrir. Es similar a abrir un documento existente en una aplicación de
Microsoft Word. Desde Abrir, selecciona Datos. Este cuadro de diálogo te
permitirá buscar en los directorios de tu computadora para localizar el
archivo de datos específico que deseas usar. Asegúrate de que el archivo de
datos que quieres abrir está guardado en el disco duro de tu sistema y no en
algún dispositivo de almacenamiento externo conectado a tu computadora.
Una vez localizado el archivo de datos, haz clic en Abrir. Si has
seleccionado el archivo de datos correcto, el paquete responderá abriendo
los datos que acabas de llamar en la ventana del Editor de Datos.

Puedes abrir varios archivos de datos en cualquier momento. Para evitar


confusiones, es aconsejable limitarse a un archivo de datos cada vez.
Cuando termines con el archivo de datos, puedes cerrarlo. SPSS te
preguntará si deseas guardar el archivo de datos antes de cerrarlo. Guardar
el archivo de datos asegura que los datos adicionales que has suministrado o
las modificaciones que has hecho al archivo de datos se guarden. De lo
contrario, perderás cualquier dato nuevo que hayas añadido o cualquier
trabajo de cálculo que hayas realizado desde que abriste el archivo. ¿Cómo
se guarda un archivo de datos?

En primer lugar, es importante señalar que SPSS no guarda los archivos


automáticamente. Guardar regularmente tu trabajo es la forma de evitar la
pérdida de archivos debido a algunos factores extraños. La opción de
guardar se encuentra en el menú Archivo. Alternativamente, puedes hacer
clic en el icono que parece un disquete en la parte superior izquierda de la
barra de herramientas de la ventana. Recuerda que el archivo se guardará en
el disco duro desde el que abriste el archivo. Debo advertir que corres el
riesgo de perder tu trabajo al guardar en un dispositivo de almacenamiento
externo que no sea el disco duro de la computadora.

La primera vez que guardes un archivo de datos, se te pedirá que


proporciones un nombre para el archivo y que especifiques el directorio y la
carpeta donde lo almacenarás. El paquete dará al nombre del archivo la
extensión .sav automáticamente. No manipules esta extensión porque así es
como IBM SPSS puede reconocer el archivo cuando quieras utilizarlo
posteriormente.

Si deseas iniciar un nuevo archivo de datos, el procedimiento es sencillo.


En el menú Archivo, selecciona Nuevo y luego haz clic en Datos. Se
iniciará un nuevo archivo de datos y podrás empezar a definir tus variables
e introducir tus datos. Para jugar con un nuevo archivo de datos es
necesario tener un conocimiento básico de las ventanas y cuadros de
diálogo que utiliza IBM SPSS.

IBM SPSS tiene cinco ventanas principales. Son:

El Editor de Datos

El Visualizador

El Editor de Tablas Dinámicas

El Editor de Gráficos

El Editor de Sintaxis

El objetivo de este capítulo es presentarte estas ventanas. En un capítulo


posterior se hablará de ellas con más detalle.
Pueden abrirse varias ventanas al mismo tiempo. El Editor de Datos
contiene los datos que deseas analizar. El Visualizador muestra los
resultados de tu análisis. Se abre una vez que se inicia el análisis. Puedes
alternar las ventanas abiertas, dependiendo de lo que hagas en cada
momento. También puedes maximizar y minimizar las diferentes ventanas.
Para ello, puedes utilizar los tres iconos situados en la esquina superior
derecha de la ventana. El botón del medio maximiza la ventana (modo de
pantalla completa) y también la devuelve a su tamaño normal. El icono de
la izquierda minimiza la ventana, mientras que el icono de la derecha del
medio la cierra.

La Ventana del Editor de Datos


El archivo de datos que estás analizando se abre en la ventana del Editor de
Datos. Esta ventana suele estar siempre abierta porque es la madre de otras
ventanas. En otras palabras, los datos que se van a analizar se codifican en
esta ventana. El editor de datos es esencial también porque de la calidad de
la información que demuestre dependerá la calidad de los resultados que
obtengas del análisis de los datos. En esta ventana se pueden realizar las
siguientes poblaciones:

1. Crear un nuevo archivo de datos


2. Abrir un archivo de datos existente
3. Realizar cambios en un archivo de datos existente
4. Guardar un archivo de datos
5. Ejecutar el análisis estadístico.
La Ventana del Visualizador
Esta ventana muestra el resultado de tu análisis. Se abre automáticamente
una vez que se inicia el análisis. Si no se abre automáticamente, puedes
abrirla haciendo clic en la opción Ventana del menú y seleccionando el
Visualizador de la lista. Puedes realizar las siguientes operaciones en la
Ventana del Visualizador:
1. Modificar la salida

2. Borrar la salida
3. Copiar la salida

4. Guardar la salida

5. Transferir el resultado a otra aplicación, como un documento de


Word.

El Visualizador tiene dos partes—el panel de navegación y el panel de


resultados. El panel de navegación se encuentra en la parte izquierda de la
ventana y enumera todos los análisis que has realizado. Permite navegar
fácilmente por los resultados. Al hacer clic en cualquier sección de los
análisis, el resultado se muestra en el panel de resultados, que se encuentra
en la parte derecha de la ventana del Visualizador. En el panel de resultados,
encontrarás tablas, gráficos y cualquier otro resultado de tu análisis que
desees mostrar.
El resultado de IBM SPSS se guarda en un archivo separado con una
extensión diferente a la de los archivos de datos. Recuerda que los archivos
de datos se guardan con una extensión .sav. Los archivos de salida se
guardan con una extensión .spv. Para versiones de SPSS anteriores a la
versión 18, la salida tendrá una extensión .spo. Los archivos más antiguos
pueden leerse en IBM SPSS Statistics 23, pero tendrás que descargar un
programa Legacy Viewer del sitio web de SPSS para poder hacerlo.

Desde la ventana del Visualizador, puedes hacer clic en el menú Archivo y


seleccionar Guardar en el menú desplegable. Guarda el resultado con un
nombre que te ayude a saber a qué se destinan los resultados. La fecha y el
tipo de datos analizados son algunas sugerencias. Llevar un buen registro es
una habilidad inestimable en el análisis de datos. Mantén un libro de
registro que contenga una lista de los nombres de tus archivos y los detalles
del análisis que realizaste en ellos.
Una cosa peculiar de los archivos de IBM SPSS es que sólo pueden abrirse
con el software. No puedes abrirlos en otra aplicación. Para ello, debes
"exportar" tus resultados. Para exportar tus resultados debes elegir Exportar
en el menú Archivo. Tienes la posibilidad de elegir el formato. Te aconsejo
que elijas la opción Word/rtf porque te permite modificar tus resultados en
Word. Desde Word, puedes convertir a muchos otros formatos diferentes
que quieras. El archivo exportado debe guardarse en un directorio adecuado
con un nombre que te ayude a recordar el resultado que has exportado.

Si deseas guardar partes seleccionadas del resultado, lo que suele ser el


caso, puedes utilizar el panel de navegación para seleccionar las partes de
los resultados que deseas exportar. A continuación, en el menú Archivo,
seleccione Exportar. Aparecerá un cuadro de diálogo en el que deberás
marcar la casilla "Seleccionado" y elegir el formato del archivo y el
directorio en el que deseas guardar el resultado seleccionado.

También puedes imprimir tus resultados. En el panel de navegación de la


ventana del Visualizador, selecciona las partes de tu salida que deseas
imprimir. Para ello, haz clic en la primera sección, mantén pulsada la tecla
Ctrl y selecciona las demás secciones que desees. En el menú Archivo, haz
clic en Imprimir.
El Editor de Tabla Dinámicas
El Editor de Tabla Dinámicas es una rama de la ventana de visualización.
IBM SPSS reconoce las tablas de salida como tablas dinámicas. Puedes
acceder al modo de edición de las tablas dinámicas. Puedes acceder al modo
de edición de las tablas dinámicas haciendo doble clic en la tabla. Las líneas
punteadas alrededor de la tabla dinámica muestran que ahora puedes editar
la tabla. El de editor de tablas dinámicas te permite:
1. Cambiar al aspecto de la tabla

2. Cambiar el tamaño de la tabla


3. Cambiar los tipos de la letra del texto

4. Modificar las dimensiones de las columnas

5. Transponer filas y columnas para cambiar la presentación de las


variables

6. Crear gráficos a partir de los resultados de la tabla.

Para crear gráficos, haz doble clic en la tabla y pulsa el botón derecho del
ratón para obtener más opciones, una de las cuales es la opción Crear
gráfico. Mantén pulsada la tecla Ctrl y selecciona las partes de la tabla que
deseas ver gráficamente.

Ventana del Editor de Gráficos


Los gráficos incluyen histogramas, gráficos de barras, gráficos de
dispersión y otras descripciones gráficas de tus resultados. En la ventana del
editor de gráficos, puedes realizar cambios en la apariencia del gráfico. Haz
doble clic en tu gráfico para acceder a la ventana del editor de gráficos. Esta
ventana te permite:

1. Modificar la apariencia y el formato de tu gráfico

2. Cambiar las fuentes, los colores, los patrones y los marcadores de


línea.
Más adelante se hablará de esto.

Ventana del Editor de Sintaxis


Si necesita tomar el control de los análisis realizados por IBM SPSS, la
ventana del editor de sintaxis es el lugar donde puedes hacerlo. En la
ventana del editor de sintaxis, puedes:

1. Hacer un seguimiento del comando que has utilizado

2. Recodificar las variables o calcular nuevas variables


3. Repetir los análisis muchas veces o producir al menos varios
gráficos similares.

Puedes modificar, copiar y pegar comandos generados por IBM SPSS.


Puedes reescribir comandos complejos para permitir una recodificación y
manipulación más sofisticada de los datos. Hay una referencia de sintaxis
de comandos en el menú de ayuda de IBM SPSS. Para ello, debes tener un
cierto nivel de dominio del software.
Cuando pegues los comandos en el Editor de sintaxis, deberás ejecutarlos.
Para ello, resalta el comando y haz clic en el menú Ejecutar. Se pueden
añadir comentarios adicionales al archivo de sintaxis iniciándolos con un
asterisco.

Puedes guardar la sintaxis siguiendo el mismo procedimiento para guardar


otros archivos mencionados anteriormente. La sintaxis se guarda con una
extensión .sps en un archivo separado. Para ver la sintaxis en una aplicación
diferente, por ejemplo Word, puede resaltar la sintaxis en la interfaz de IBM
SPSS y elegir Editar en el menú. A continuación, selecciona Copiar en el
menú desplegable. Abre un documento de Word y pega la sintaxis para
facilitar su visualización en una computadora sin el software IBM SPSS.

Hay muchas opciones del menú que vienen con IBM SPSS Windows. Estas
opciones aparecen como menús desplegables e iconos. Ve poco a poco.
Aprende primero los iconos más importantes y desarrolla tu habilidad a
partir de ahí.

Los cuadros de diálogo son un medio de comunicación con el software


cuando se elige en el menú. Es como pedir una Pizza de Pepperoni y
especificar las cosas que quieres en ella. En el caso de IBM SPSS, los
cuadros de diálogo te permiten ajustar tu pedido para satisfacer tus
necesidades específicas en ese momento. Por ejemplo, cuando selecciones
Analizar en el menú, tendrás varias opciones para elegir. Puedes seleccionar
Estadísticas Descriptivas y hacer clic en Frecuencias de las opciones bajo
Estadísticas Descriptivas. Un cuadro de diálogo te pedirá que especifiques
las variables que deseas utilizar para calcular la frecuencia.

Resalta las variables que deseas utilizar de la lista proporcionada y


muévelas a la casilla denominada Variable(s) utilizando el botón de flecha
en el centro de la pantalla. Si las variables que deseas utilizar aparecen
juntas, puedes seleccionarlas manteniendo pulsada la tecla Shift después de
seleccionar la primera variable y resaltar todas las variables deseadas antes
de moverlas. Si están dispersas, mantén pulsada la tecla Ctrl y haz clic en
todas las variables que desees calcular.

Si accidentalmente seleccionaste una variable que no deseas calcular,


puedes eliminarla invirtiendo el proceso utilizado para su selección.

Los botones estándar en la mayoría de los cuadros de diálogo son: Aceptar,


Pegar, Reiniciar, Cancelar y Ayuda. Estos botones realizan diferentes
funciones.

La opción OK o Aceptar se utiliza cuando se han especificado las variables


que se quieren analizar o el procedimiento que quieres ejecutar.

Pegar se utiliza para transferir los comandos generados por IBM SPSS al
Editor de Sintaxis para mantener un registro o para un análisis que se
repetirá muchas veces.
Reiniciar limpia el cuadro de diálogo de todos los comandos anteriores para
generar una pizarra limpia para un nuevo análisis. Es como cancelar una
orden anterior para hacer una nueva.

Cancelar básicamente cancela todos los comandos que has dado para un
procedimiento en particular. También cierra el cuadro de diálogo.

Ayuda te proporciona información sobre el procedimiento o el análisis que


se va realizar.
Los cuadros de diálogo a veces abren subcuadros que te piden información
o datos adicionales. Básicamente, todos los cuadros de diálogo funcionan
de forma similar y tienen una apariencia similar.

Al final de una sesión de SPSS, puedes cerrar el programa seleccionando la


opción Salir del menú Archivo. IBM SPSS te pedirá que guardes el archivo
de datos y el archivo de salida. Sin embargo, deberías haber guardado todos
estos archivos antes de proceder a la opción Salir. Un fallo puede ocurrir en
medio de una sesión debido a varias razones. Guardar regularmente el
archivo de datos y el archivo de salida garantiza que no tengas que empezar
desde cero cuando esto ocurra.
El paquete IBM SPSS suele venir con un tutorial que puede serte útil.
Además, hay un menú de ayuda incorporado que puede proporcionarte
respuestas a algunas preguntas específicas que tengas mientras utilizas el
software.

Ahora que hemos establecido los 'primeros principios' de IBM SPSS, es el


momento de profundizar en los detalles del trabajo. Te aconsejo que hagas
un simulacro de los fundamentos explicados en este capítulo antes de pasar
a la siguiente fase. Si estás realizando un trabajo de investigación, puede ser
útil discutir el diseño de tu estudio con tu supervisor.
Capítulo Dos
Los Fundamentos de IBM SPSS

Este capítulo está dirigido a los estudiantes que tienen poca experiencia con
los sistemas Microsoft® Windows® y funciones básicas de SPSS Statistics.
La llamada a SPSS puede variar dependiendo de la instalación. Sin
embargo, lo siguiente debería funcionar (casi) siempre.
Llamar a SPSS Statistics
Para Windows 10, utiliza el botón de Windows (INICIO) en la barra de
tareas para localizar IBM SPSS Statistics, IBM SPSS Statistics 25 y espera
hasta que se cargue SPSS Statistics. En la primera ventana que aparece, se
decide el procedimiento a seguir. Ahora se puede empezar a trabajar con
SPSS Statistics.

También puedes introducir SPSS en el "campo de búsqueda" de la esquina


inferior izquierda de Windows 10. La "mayor coincidencia" debería ser
entonces 25 para IBM SPSS Statistics, resaltada en color.
Presiona la tecla "Enter" para iniciar SPSS.

2.2 Trabajar con las ventanas de SPSS

SPSS Statistics suele trabajar con tres ventanas: Editor de datos y sintaxis y
el visualizador:

Editor de datos (siempre aparece al llamar al programa): Aquí, se


muestran los distintos atributos de las variables en la vista de datos
del conjunto de datos y en la vista de variables. Al guardar los datos
de SPSS Statistics, se especifica la extensión de archivo .sav.

Visualizador (aparece automáticamente después de un análisis):


Aquí se muestran los resultados. Esta ventana se abre
automáticamente cuando se ejecuta un procedimiento que produce
resultados. Los archivos del visualizador tienen la extensión .spv.

Editor de Sintaxis (llamado a través del menú ARCHIVO NUEVA


SINTAXIS): Aquí se introducen los comandos que indican a SPSS
Statistics cómo se deben seguir procesando los datos. Los comandos
se ejecutan resaltando los comandos introducidos y haciendo clic en
el icono de la barra de iconos o pulsando simultáneamente las teclas
Ctrl y R. La extensión de los archivos con comandos de SPSS
Statistics es .sps. La ventana cuyo nombre está resaltado en color (es
azul por defecto) está activa, es decir, se está trabajando actualmente
en o con esta ventana. Hay tres maneras de cambiar entre las
ventanas de SPSS.

Haz clic en la ventana con la que deseas trabajar, si está visible.

Haz clic en la VENTANA de la barra de menú de una ventana del


SPSS (PLCS) y selecciona la ventana a utilizar de la lista.

Utilizar la combinación de teclas Alt y la tecla Tab para cambiar de


ventana.

En cada una de estas tres ventanas están disponibles los elementos de menú
ARCHIVO, EDITAR, VER, DATOS, TRANSFORMAR, ANALIZAR,
DIAGRAMAS, EXTRAS, VENTANAS y AYUDA.

En el menú principal del visualizar, hay elementos de menú adicionales,


INSERTAR y FORMATO. El editor de sintaxis ofrece las opciones
EJECUTAR y HERRAMIENTAS. Los botones (iconos) están adaptados a
las respectivas funciones de una ventana.

El uso de módulos adicionales puede hacer que la disposición sea diferente.


Por ejemplo, al obtener la licencia del módulo "SPSS Direct Marketing", se
muestra un "punto de entrada" adicional en el editor de datos, el editor de
sintaxis y ventana del visualizador.
Editor de Datos
En SPSS Statistics, el editor de datos proporciona una lista completa de
todas las variables y sus propiedades en la vista de variables, además de la
vista de datos. El editor de datos consta de dos niveles. El usuario puede
seleccionar entre estos niveles utilizando las etiquetas VISTA DE DATOS y
VISTA DE VARIABLES. La vista de datos muestra los datos.

Los casos individuales y las variables se muestran en el conjunto de datos


(ver sección 3.2, página 16). La vista de variables permite ver y definir los
atributos de las variables, como el tipo de datos y las etiquetas de las
variables y los valores.

Visualizador
El visualizador es de particular importancia cuando se trabaja con SPSS
Statistics es del visualizador. Muestra los resultados de todos los cálculos,
que son la preocupación central del trabajo con SPSS.

El visualizador muestra en la mitad izquierda un esquema de los resultados


existentes. Los puntos individuales del contorno se pueden visualizar
haciendo clic en el símbolo - y haciendo clic en el símbolo +. En la mitad
derecha del visualizador, los resultados se muestran en forma de tabla. Cada
tabla se denomina objeto, que a su vez está conformada de componentes
individuales, como columnas, celdas y textos. Al hacer clic en un punto del
esquema, el objeto correspondiente aparece en la ventana derecha. El
esquema sirve así de ayuda a la navegación para una rápida orientación.

En principio, es posible editar todos los objetos o tablas del visualizador


haciendo doble clic sobre ellos. Así, los componentes de un objeto pueden
adaptarse a las necesidades individuales.

En los campos de textos, por ejemplo, se puede cambiar el texto. Dentro de


una tabla, el campo de texto que se va a cambiar se debe pulsar
adicionalmente dos veces. Entonces el texto estará dentro de este campo de
Texto editable.
Además de editar el texto, también se puede cambiar el ancho de las
columnas y de los campos de texto individuales. Para corregir el ancho de
las columnas, el puntero del ratón se dirige a una de las líneas de
delimitación. Si se convierte en una flecha en forma de cruz, mientras se
pulsa el botón izquierdo del ratón, se puede modificar el ancho de la
columna. Si también quieres hacer esto en los campos individuales, primero
debes marcar con un clic, para que luego puedas editarlas de la misma
manera.

Editor de Sintaxis
En el editor de sintaxis, que no se inicia automáticamente, se introducen y
ejecutan los comandos del SPSS. El editor de sintaxis se llama con FILE
�� NEW �� SYNTAX.

Los comandos se activan a través de o el elemento de menú EJECUTAR


(combinación de teclas Ctrl + R).
Guardar los Datos, el Editor de Sintaxis y el Contenido del
Visualizador
En particular, la sintaxis debe ser almacenada con mayor frecuencia (datos
y visor en casos especiales, por ejemplo, el conjunto de datos después de la
entrada o la preparación del conjunto de datos) para que no se pierda el
contenido durante el trabajo. Para ello, hay que activar la ventana deseada y
seleccionar con el ratón el menú GUARDAR ARCHIVO (combinación de
teclas Ctrl+S).

Carga de Datos, Editor de Sintaxis y Visualizador de Contenidos


Si existe un archivo con un editor de datos (nombre de archivo .sav), editor
de sintaxis (nombre de archivo .sps) o visualizador de contenido (nombre
de archivo .spv), se llama en SPSS Statistics de la siguiente manera:

1. Selecciona ABRIR ARCHIVO con el ratón en la ventana SPSS


(datos, salida, sintaxis).
2. Selecciona el tipo de archivo deseado (archivo de Datos...,
Sintaxis..., Salida..., o Script...).

4. Aparece la ventana Abrir Archivo (Datos, Sintaxis, Salida, Script).

Selecciona la unidad o el directorio correcto: Las unidades disponibles


(disco duro, DVD, USB,...) son visibles haciendo clic en la flecha situada a
la derecha del campo "Buscar en". A continuación, hay que seleccionar la
unidad deseada.

En la ventana de Abrir Archivo, aparecen ahora todos los archivos del tipo
correspondiente (es decir, todos los archivos de datos, todos los archivos de
sintaxis del SPSS o todo los archivos de salida del SPSS) que están
almacenados en el soporte de datos. Selecciona el nombre del archivo
deseado y haz clic en Abrir.

Desde la versión SPSS 14, se pueden abrir varios registros de datos dentro
de una sesión de SPSS. Para ello, se repiten los pasos anteriores hasta que
se hayan abierto todos los registros de datos necesarios. Los análisis se
refieren al llamado "conjunto de datos activo" cuando hay varios conjuntos
de datos abiertos. Se trata del registro cuya ventana está actualmente en
primer plano. Alternativamente, en la ventana de sintaxis, puedes utilizar el
comando:
CONJUNTO DE DATOS datasetname
Un determinado registro puede convertirse en el "registro activo", donde el
nombre del conjunto de datos representa el nombre del "conjunto de datos"
o en inglés "dataset" en la cabecera de la ventana del conjunto de datos
(como DataSet0).
La Asistencia
Básicamente, el programa SPSS Statistics ofrece numerosas opciones de
ayuda. Éstas se tratan con más detalle en la siguiente unidad. Además,
existe un gran número de manuales que acompañan a la literatura para
apoyar el uso de SPSS. Por ello, en el siguiente capítulo se enumeran
brevemente los más importantes con el fin de proporcionar al lector una
visión general.

Más Literatura y Manuales


Todo el sistema SPSS Statistics está documentado en manuales. La
información básica se proporciona en la Guía del Usuario de IBM SPSS
Statistics 26 Core System. Además, hay descripciones de varios módulos
del sistema, como "Estadísticas Avanzadas", "Categorías", "Pronósticos",
"Tablas Personalizadas". La obra de referencia del lenguaje de comando de
SPSS Statistics (SPSS) se llama "IBM SPSS Statistics 25 Command Syntax
Reference".

Está disponible en el menú COMMAND SYNTAX REFERENCE pero no


pretende ser una introducción a la fábrica. En general, nos remitimos a las
versiones actuales de estos manuales del programa, que IBM pone a
disposición a través de internet:

Documentación en línea:
https://www.ibm.com/support/knowledgecenter/SSLVMB_26.0.0/statistics_
kc_ddita/spss/product_landing.html

En reglas generales, la documentación sobre el SPSS se reedita tras la


publicación de nuevas versiones del programa. Por lo tanto, es necesario
comprobar si existen versiones actualizadas de las investigaciones que se
enumeran.

Funciones de Ayuda en el Programa


Si hay problemas para trabajar con SPSS Statistics, el programa ofrece una
completa función de ayuda. El menú TEMAS DE AYUDA de la barra de
menús activa esta función de ayuda.

La etiqueta CONTENIDO muestra un resumen de los complejos de temas


más importantes, como en una tabla de contenidos. De este modo, se
pueden buscar específicamente una respuesta al problema respectivo en
términos de contenido.

La opción BÚSQUEDA ofrece la posibilidad de realizar una búsqueda de


texto completo. Aquí puedes introducir un término (como una palabra
completa) en el campo en blanco de la parte superior izquierda. SPSS
Statistics busca entonces en los archivos de ayuda el término
correspondiente. En el campo central, se obtienen algunos equivalentes de
palabras, que pueden restringirse de nuevo haciendo doble clic. Los temas
se enumeran en el campo inferior. La utilización de la búsqueda de texto
completo sólo es posible, sin embargo, si la búsqueda en las fichas
Contenido e Índice no ha tenido éxito.

Si los procedimientos se ejecutan a través de los menús, SPSS Statistics


ofrece más posibilidades de información. En cada cuadro de diálogo, hay un
botón denominado AYUDA que puede utilizarse para recuperar
información relacionada con el contexto.

En consecuencia, la ayuda para los términos desconocidos en las tablas de


salida también puede solicitarse en el Visualizador. Para ello, en primer
lugar, haz doble clic en la tabla correspondiente y, a continuación,
selecciona el término desconocido. Haciendo clic con el botón derecho del
ratón y seleccionando la opción de menú Ayuda Directa, el usuario obtiene
una explicación del término (en el ejemplo: Máximo - El mayor valor de
una variable numérica).

Además de la ayuda normal del menú y de las adiciones automáticas de


comandos (revisa la segunda unidad: "Estructura y sintaxis de los
comandos" del capítulo 5), el editor de sintaxis ofrece la posibilidad de
llamar a la información sobre la sintaxis de los comandos individuales
mediante un botón. Hay que marcar el comando deseado y hacer clic en el
botón marcado con un círculo en el siguiente gráfico.
Capítulo Tres
El Registro de Datos de Ejemplo

Para que la introducción al paquete SPSS Statistics sea lo más clara posible,
este libro utiliza muchos ejemplos de trabajo práctico con SPSS Statistics.
Estos ejemplos se basan en los datos de la investigación y la encuesta. Este
conjunto de datos ha sido acortado por nosotros de tal manera que sigue
permitiendo una amplia gama de opciones de análisis, pero no está
sobrecargado de preguntas innecesarias. El término "nuestro registro" se
refiere al registro abreviado y utilizado.
Recolección de Datos
Una encuesta contiene las respuestas de los encuestados de una muestra de
la población adulta de Estados Unidos. Para el muestreo se utilizó un
procedimiento de sorteo de personas en dos etapas. En la primera etapa de
selección, se extrajo una muestra de municipios proporcional al tamaño. En
la segunda etapa de selección, se tomaron las direcciones personales de los
registros de población de los municipios en cuestión de forma aleatoria y
con igual probabilidad. Los entrevistadores entrevistaron a las personas así
determinadas. Recibieron un cuestionario a partir del cual elaboramos el
extracto.

Se entrevistó a 2827 personas. El cuestionario contiene una serie de


preguntas sobre los datos personales y las circunstancias de los encuestados
(edad, sexo, ingresos netos mensuales,...). También hay preguntas
relacionadas con las actitudes hacia la situación personal y económica, las
actividades de ocio y el uso de los medios de comunicación, las actitudes
políticas, el progreso técnico y las computadoras, la salud y muchas otras
características interesantes. Con los añadidos, nuestro conjunto de datos
contiene 981 variables.
El objetivo de recopilar y proporcionar estos datos a los estudiosos de las
humanidades es tanto investigar las situaciones sociales, las actitudes y los
valores en los Estados Unidos como describir el cambio social a lo largo del
tiempo. Además, esto debería permitir poner los datos a disposición de los
investigadores y estudiantes que no tienen acceso directo a los datos
primarios correspondientes.

En la práctica empírica, las preguntas deben construirse con el máximo


cuidado. Sin embargo, esto no se trata en detalle en este libro.
Codificación del Cuestionario
Al final de la encuesta se disponía de 2827 cuestionarios con las
correspondientes respuestas de los entrevistados. Cada pregunta mide una
característica de los entrevistados, es decir, una característica de los objetos
de investigación que es de interés en el contexto de los hechos. En la
medición, se asigna un valor característico a cada objeto de búsqueda para
cada pregunta (característica) en función de la respuesta en una escala (es
decir, según ciertas reglas). 11 Las expresiones de las características pueden
ser números o símbolos. La escala es el conjunto de valores posibles para
una característica. 12 Se subestima:
clasificatorio (escala nominal),
comparativa (escala nominal),
y características métricas (de escala de intervalo, de proporción).
En el caso de los caracteres clasificatorios, sólo existe una "relación de
igualdad o desigualdad" entre los caracteres. En cambio, las marcas
comparativas son una relación de orden (mayor, menor, mejor, peor) entre
las características (por ejemplo, el estado de salud). Además de la
formación de una secuencia de valores ordenados por tamaño, las
características métricas permiten interpretar las distancias entre las
impresiones y formar diferencias.
Las expresiones de las características métricas son números reales. Las
características a escala de intervalo no tienen un punto cero natural, por lo
que la escala puede asumir números positivos y negativos (por ejemplo, la
temperatura en grados Celsius). En cambio, las características de escala de
relación tienen un punto cero natural (por ejemplo, los ingresos netos) y,
por lo tanto, sólo pueden consistir en números reales positivos.

La escala determina las operaciones permitidas (es decir, significativas) que


pueden realizarse con una característica. Por ejemplo, no está permitido
calcular los valores promedios de las características clasificatorias o
comparativas. Por lo tanto, la escala también determina las posibilidades de
evaluación y, por lo tanto, debe determinarse con cuidado.

Para la evaluación automática mediante un programa estadístico, es útil que


las respuestas (valores de las características) estén representadas por un
valor numérico. Este es el caso de algunas características basadas en el
nivel de escala que ya es el caso desde el principio (año de nacimiento,
ingresos). Sin embargo, dado que es posible formar escalas con valores no
numéricos, dichos valores deben ser primero "codificados numéricamente".

A cada valor de la característica se le asigna un número para que la


información contenida en la característica no se modifique. Esto significa
que sólo se realiza una transformación admisible de la escala de un carácter.
Los números enteros suelen representar las expresiones de los caracteres
clasificatorios. Lo mismo ocurre con las expresiones de los caracteres
comparativos, en las que hay que tener cuidado de que se conserve la
relación de orden de las expresiones.

Hay que destacar expresamente que esta asignación de cifras a las


expresiones de la característica no cambia el nivel de escala de una variable.
Sólo se realiza una asignación admisible de la escala, que no modifica el
contenido informativo de la característica.
En los estudios empíricos, a cada pregunta se le asigna adicionalmente
(como mínimo) un valor, que se asignará si no hay respuesta o si no hay
respuesta útil a la pregunta, por ejemplo, por negarse a contestar (ver la
unidad de valores faltantes).

La Simple Estructura de un Conjunto de Datos


Un registro de datos está formado por filas. Cada línea está dividida en
columnas y cada columna puede contener uno o varios caracteres (número,
letra).

En nuestro conjunto de datos de ejemplo, la respuesta a cada pregunta se


representa ahora con un valor (normalmente numérico). Estos valores se
introducen fila por fila en las columnas de cada cuestionario (objeto de
investigación). Por lo tanto, las columnas de una fila se asignan a las
preguntas (características) de manera que un personaje se encuentra siempre
en la misma columna.

Si el cuestionario de un objeto de examen está completamente introducido,


una nueva línea comienza con el cuestionario del siguiente objeto de
examen. Cada fila, por lo tanto, representa un cuestionario y, por lo tanto,
un objeto de investigación. Todas las filas tienen una estructura fija, lo que
significa que las características están en la misma posición en cada fila.
Ahora hay que tener en cuenta que SPSS Statistics utiliza una terminología
especial para describir los objetos investigados y sus características:

Los objetos investigados se llaman casos y las características se llaman


variables.

Así, cada cuestionario pertenece a un caso y cada pregunta a una variable.


En el futuro, los términos caso y variable se utilizarán casi exclusivamente.

La siguiente figura muestra la estructura básica de un conjunto de datos


(matriz de datos NxM):
instancia Variabl Variabl Variabl Variabl ... Variabl
s e1 e2 e3 e4 eM

1 1 2 1964 12 ... 1
2 2 3 1972 3 ... 1
3 3 1 1960 3 ... 1
4 4 3 1976 9 ... 1
5 5 2 1962 8 ... 1
… … … … … ... ..
N N 3 1961 1 ... 1
Capítulo Cuatro
Definición de Datos

Fuentes de Datos para SPSS Statistics


Como ya ha quedado claro en el Capítulo 1, un programa estadístico
universal es capaz de analizar datos empíricos de una gran variedad de
áreas de aplicación. El sistema estadístico SPSS Statistics no sabe nada de
los datos que están disponibles para su evaluación en caso concreto. Por lo
tanto, es necesario aclarar la forma en que están disponibles los datos y
cómo deben incorporarse a SPSS Statistics.

La segunda unidad del capítulo tres ofrece una descripción relativamente


breve de la estructura de un conjunto de datos sencillo. Los datos que se van
a analizar pueden almacenarse en un archivo "con la ayuda de un sistema de
programa adecuado " (Word, Excel, entre otros).

En estos sistemas de programas se distingue entre los programas que


almacenan los datos en un formato específico del programa y los que
almacenan los datos como archivos de texto puro (archivos ASCII).
Adecuado en este contexto significa que los programas en cuestión deben
almacenar los datos de tal manera que sean estructuralmente utilizables para
SPSS Statistics.
Esto significa que debe cumplirse el requisito estructural básico "casos en
filas y variables en columnas". No obstante, hay que tener en cuenta que, en
principio, también es concebible una vista transpuesta. Como era de esperar,
SPSS Statistics para Windows es un programa que cumple idealmente estos
requisitos.

Así pues, distinguimos (a grandes rasgos) entre dos fuentes de datos


esenciales:

Registros de SPSS y Otros Archivos de Datos Específicos del Programa


En la Visualización de Datos del Editor de Datos de SPSS Statistics, se
pueden introducir y guardar directamente los datos utilizando GUARDAR
ARCHIVO DE DATOS... como archivo del sistema de SPSS Statistics con
la extensión ".sav". Los datos se almacenan entonces en un formato
específico de SPSS Statistics. Como se muestra en el siguiente capítulo, la
definición de los datos en SPSS Statistics es relativamente sencilla. La
estructura de datos de los programas de hojas de cálculo es similar a la de
SPSS Statistics. SPSS Statistics puede leer datos almacenados en programas
de hojas de cálculo populares como Excel.

Los archivos de datos de SPSS Statistics, es decir, los archivos de datos


creados al introducir los datos en el propio SPSS Statistics o en un
programa que pueda crear dichos archivos, siempre tienen la extensión
".sav". Para editar un archivo de datos de SPSS Statistics, haz clic en Abrir
archivo de datos. Te aparecerá la ventana de Abrir Datos:
Se selecciona un archivo y se confirma haciendo clic en Abrir. Los datos
aparecen entonces en el Editor de Datos de SPSS Statistics.

Si el archivo está guardado en otro formato que SPSS Statistics puede leer,
se selecciona el formato correspondiente (.sys, .por, .xls, .w, .slk, .dbf, .dta)
en formato de archivo, se busca el archivo y se confirma con Abrir. Los
datos aparecen entonces en el editor de datos. Aquí hay que comprobar si el
programa fuente utiliza formatos de datos (fecha, fórmulas, entre otros) que
no son conocidos por SPSS Statistics.

Archivo de Texto ASCII


Una situación completamente diferente se produce cuando los valores de las
variables se transfieren simplemente número a número en líneas de archivo
y luego se almacenan en un formato de texto "puro" (texto ASCII), como es
posible con el editor de Microsoft® por ejemplo. Los datos también pueden
almacenarse de esta forma con Microsoft Office Word® especificando
"Texto" como tipo de archivo al guardar. Si los datos se almacenan de esta
manera, el archivo con los datos no contiene ninguna información sobre qué
columnas pertenecen a qué variables. Esto debe definirse dentro del
programa SPSS Statistics.

Introducción de Datos Directamente en SPSS Statistics

Definición de Variables en la Visualización de Variables


Como se ha explicado anteriormente, los datos pueden introducirse en una
ventana de datos de SPSS statistics "vacía". Para ello, primero debes definir
las variables necesarias. Esto se hace utilizando la pestaña
VISUALIZACIÓN DE VARIABLES en el editor de datos.

Debe introducirse un nombre de variable único en la columna "Nombre"


para cada variable (ve la sección 3.2, página 16). Si no se introduce ningún
nombre, SPSS Statistics nombra las variables "VAR" y añade un número de
cinco dígitos (VAR00001, VAR00002,...).
Al asignar los nombres de las variables, deben observarse ciertas reglas, que
se describen en las unidades intermedias del capítulo 5.
Tipo de Variable (Tipo) Columna
SPSS Statistics distingue entre variables numéricas ("numeric") y de cadena
("string") al introducir los datos. Los valores de las variables numéricas
consisten sólo en números. Las cadenas de caracteres o variables de cadena
aceptan cualquier carácter (letras, números, caracteres especiales) (para la
definición de números y cadenas y caracteres, ve el capítulo cinco.

El tipo se define como sigue:

Selecciona la nueva variable en la columna Tipo. Aparece un área azul


sombreada dentro de la celda (ver figura). Haciendo clic con el ratón en esta
zona se accede al menú Definir tipo de variable.

Los tipos de variables coma, punto, notación científica, fecha, dólar y


moneda especial son variantes especiales de las variables numéricas y no es
necesario discutirlas aquí.

Ejemplo: La variable v556 (género, encuestado <r>) se define como una


variable numérica que ocupa un puesto (1 para mujer, 2 para hombre) y no
tiene decimales.
Etiquetado de Variables – Etiquetado de Valores – Valores faltantes
Mediante la asignación de etiquetas, antes también llamadas rótulos, es
posible describir las variables o los valores de las variables con mayor
precisión. Esto se explica en detalle en las unidades anteriores de este
capítulo.

La etiqueta de la nueva variable (en nuestro ejemplo v737) se introduce


simplemente en la columna Etiquetado registrado (estado civil).

Las etiquetas de valores de la nueva variable v737 se definen seleccionando


la celda de la columna Valores donde serán asignadas.

Los valores faltantes son un problema de todos los estudios empíricos. Se


definen en la columna Faltas haciendo clic en la celda. SPSS Statistics
conoce dos tipos de valores faltantes: valores faltantes por el sistema y
valores faltantes por el usuario. En las unidades anteriores del presente
capítulo se ofrecen más detalles.

Ejemplo: Para definir los valores, haz clic en la columna "Valores


faltantes" en la celda correspondiente del cuadro gris. Se abrirá el menú
anterior. Activando la casilla "Valores faltantes individuales", se pueden
definir como faltantes de uno a un máximo de tres valores.

Una vez terminada la definición de las variables, se pueden iniciar la


introducción de datos. Para ello, los valores de los cuestionarios se
introducen simplemente línea por línea con las variables correspondientes.
El resultado de la entrada de datos tiene entonces el aspecto de una hoja de
Excel.
El contenido del editor de datos se guarda como un archivo de SPSS
Statistics.

Descripción de Variables Usando Comandos en el Editor de Sintaxis


Después de que en las primeras unidades de este capítulo ya se habló de la
descripción de variables a través de menús, en las siguientes secciones se
tratará la descripción de variables a través de comandos. Estos comandos
deben ser ejecutados a través del editor de sintaxis (revisa el primer par de
unidades del capítulo cinco). Para una mejor comprensión de la estructura y
sintaxis de los comandos, así como su representación en este texto
introductorio, se hace referencia aquí a las unidades posteriores del Capítulo
5.
Etiquetado de Variable
Usualmente, la información sobre una variable obtenida por el nombre de la
misma no es suficiente. Por lo tanto, la sola identificación de las variables
por su nombre es, a menudo, bastante poco pacífica. Las listas de
resultados no deberían mostrar los nombres cortos de las variables de SPSS
Statistics, sino explicaciones de las variables en la terminología técnica del
analista. Incluso si las huellas de las variables aparecen en la lista de
resultados, las codificaciones sin sentido requieren una explicación. Otro
problema para muchos es el manejo de los "valores faltantes" en los datos.

El comando ETIQUETAS DE VARIABLES se utiliza para asignar una


explicación en el idioma del usuario a las variables (ver las dos unidades
anteriores de este capítulo, para el menú asociado). El comando tiene la
siguiente estructura:

ETIQUETAS DE VARIABLES varname 'label' [[/]varname ... ].


varname es el nombre de la variable ya definida.

label es un nombre más detallado, una "etiqueta" para una variable.


La "etiqueta" explica lo que significa la variable en términos de
contenido. Una "etiqueta" debe cumplir con las convenciones para
las cadenas de caracteres. La longitud máxima de una "etiqueta" es
de 255 caracteres. Los resultados del análisis muestran al menos 40
caracteres de la "etiqueta", por lo que no siempre se muestra toda la
"etiqueta". Cada variable sólo puede tener una "etiqueta". Las
variables de la lista de salida pueden ser etiquetadas de forma que su
significado sea transparente. Para nuestro ejemplo, se otorgaron,
entre otras, las siguientes ETIQUETAS DE VARIABLES:
o ETIQUETAS DE VARIABLES
o V554 'Edad del encuestado<r>'
o /v556 'Género de los encuestados<r>'
o /v557 'Confesión de los encuestados<r>'
o /v737 'Estado civil'
o /v563 'Certificado general de estudios'
o /v707 'Ingresos netos mensuales'.
Etiquetado de Valores
El comando ETIQUETAS DE VALOR o VALUE LABELS, por su parte,
también permite asignar etiquetas para los valores (valores) de las variables
(para el menú asociado, ve la sección "Etiquetado de Variables – Etiquetado
de Valores – Valores faltantes" de este capítulo):

ETIQUETAS DE VALOR valor varlist 'etiqueta' valor 'etiqueta' o en


inglés varlist value 'label' value 'label' ...
/[varlist ….] Sintaxis

varlist es la lista de variables ya definidas (al menos una variable).


Si la "var- list" está conformada por muchas variables de cadena
("strings" – ve la Sección 4.2.2, página 18), todas deben tener la
misma longitud.

Worth es la posible expresión de las variables de la "varlist". Los


valores de las variables de cadena de caracteres deben ir entre
comillas.

label es una explicación (etiqueta) de hasta 120 caracteres sobre el


significado de este valor. La "etiqueta" suele aparecer cuando el
"valor" correspondiente está en la lista de resultados. No todos los
procedimientos imprimen toda la longitud de la etiqueta.

ETIQUETAS DE VALOR

V556 1 'Hombre' 2 'Mujer'.

Valores faltantes
Un problema particular de todos los estudios empíricos son los llamados
valores faltantes. SPSS Statistics distingue entre "valor faltante por el
sistema" y "valor faltante por el usuario", pero maneja ambas variantes de la
misma manera para los análisis, a menos que esto cambie explícitamente.

Valores faltantes por el Sistema


Si SPSS Statistics encuentra un carácter que no es un número o solo un
espacio como valor de una variable numérica, SPSS Statistics asigna el
valor faltante por el sistema al caso en cuestión. Los "valores faltantes por
el sistema" pueden ser causados por ejemplo por la terminación prematura
de la encuesta o la ilegibilidad de la entrada al escanear el cuadro de
preguntas.

El resultado de cálculos no permitidos, como la división por cero, también


es el valor faltante por el sistema. SPSS Statistics identifica el caso como
"defectuoso" A – aparece un en la lista de salida para este valor. 14 Estos
casos no se incluyen en los cálculos y evaluaciones. Los "valores ausentes
del sistema" se representan con una coma en el editor de datos y con un
punto en el visualizador. Los caracteres en blanco al principio y al final de
un valor numérico "ignoran" a SPSS Statistics.

Nota: Los espacios en blanco en los datos pueden leerse como números
arbitrarios si se hace con el comando: SET BLANKS=number es
requerido.
Valores faltantes por el Usuario
No es raro que las encuestas de datos empíricos muestren que, en algunos
casos, faltan los valores de las variables individuales. Esto puede deberse a
muchas razones. A continuación se exponen brevemente algunas de ellas:

Al entrevistar a las personas, algunas preguntas pueden referirse a un área


sensible sobre la que algunos de los encuestados no quieren hacer
comentarios (por ejemplo, preguntas sobre los ingresos, el comportamiento
sexual o el consumo de videojuegos).

Otra posibilidad de crear valores faltantes es que los valores de ciertas


variables no puedan medirse en algunos objetos investigados. Por ejemplo,
un análisis de los registros contemporáneos sobre las enfermedades de los
pacientes de un hospital del siglo XV no arrojará datos completos de cada
paciente, ya que los registros son parcialmente ilegibles.

¿Qué hay que hacer aquí? En el primer ejemplo, las razones por las que una
pregunta queda sin respuesta residen probablemente en el valor real
(desconocido). Algunas personas no quieren dar a terceros ninguna
información sobre sus ingresos.

Tal vez porque es muy alto o muy bajo según nuestra propia valoración, en
el segundo ejemplo (hospital del siglo XV), no hay tal razón para la
ausencia de valor: la ilegibilidad de los registros no depende de las
características del paciente. En este caso se trata de influencias aleatorias,
como consecuencia de las cuales no se realizan mediciones.

Además, los valores también pueden ser simplemente registrados (medidos)


de forma incorrecta. Una temperatura de 40º Celsius el 24 de diciembre en
Bamberg será probablemente un error de la encuesta.

SPSS Statistics ofrece ahora el comando VALORES FALTANTES (ve a la


sección 4.2.3, página 19 para el menú asociado) para marcar los casos en
los que hay un valor faltante. Para ello, deben especificarse valores que
sustituyan al valor desconocido (verdadero). Estos valores se denominan
valores faltantes por el usuario.

Estos valores en los datos indican que en un caso no es posible obtener


información sobre el valor real (verdadero) de una variable. Para poder
distinguir por qué falta un valor, se puede declarar un máximo de tres
valores faltantes para una variable. Por ejemplo, significa "9" como valor de
la variable que alguien se negó a responder, "99" que no estaba en casa y
"999" que se olvidó.

SPSS Statistics utiliza los comandos MVA (Menú: ANÁLISIS DE LOS


VALORES FALTANTES.VALOR… o en ingles Menu: ANALYSE
ANALYSIS OF MISSING.VALUES...) e IMPUTACIÓN MÚLTIPLE
(Menú: ANÁLISIS IMPUTACIÓN MÚLTIPLE o en ingles Menu:
ANALYSIS MULTIPLE IMPUTATION)

Existen herramientas para sustituir los valores faltantes por valores


estimados. El comando para definir los "valores faltantes por el usuario" es:

VALORES FALTANTES varlist (value list) [[/]varlist ... ].


Varlist es el nombre de una o varias variables ya definidas. Las
variables de una lista deben ser del mismo tipo ("numérico" o
"cadena"). La longitud de las variables de la cadena de líneas de una
"varlist" puede ser diferente. La palabra clave TODO u ALL en
lugar de una lista de variables específica los mismos valores
faltantes para todas las variables. Además, en este caso, todas las
variables deben ser del mismo tipo.

La lista de valores puede constar de los siguientes elementos:


1. Hasta tres valores individuales separados por una coma o un
espacio. Los valores de las variables de cadena deben ir entre
comillas. Si los valores listados (que faltan) de las variables de
cadena de caracteres constan de menos caracteres de los que la
variable puede contener, el lado derecho se rellena con espacios
en blanco. Si un valor es más largo que una variable de cadena,
se corta a la derecha.
2. De un rango de valores formado por la palabra clave THRU:

Valor1 THRU valor2

Valor1 y valor2 son números. Todos los números desde el valor1 hasta el
valor2 (valor1 ≤ "valores faltantes por el usuario" ≤ valor2) se declaran
valores faltantes. El valor más grande y el más pequeño se direccionan por
el MÁS ALTO y el MÁS BAJO (abreviatura HI, LO). Los rangos de
valores no están permitidos para las variables de cadena.

En total, sólo se permiten tres valores individuales dentro de los paréntesis,


incluyendo los que están a la izquierda y a la derecha del THRU. HI y LO
se tratan como valores únicos.

Son posibles las siguientes combinaciones de valores y rangos:

MISSING VALUESvarlist (valor1).

MISSING VALUESvarlist (valor1, valor2).

MISSING VALUESvarlist (valor1, valor2, valor3).

MISSING VALUESvarlist (valor1 THRU valor2).

MISSING VALUESvarlist (valor1, valor2 THRU valor3).

MISSING VALUESvarlist (valor1 THRU valor2, valor3).

Los valores faltantes definidos por la "lista de valores" de un comando


MISSING VALUES se denominan, como se ha explicado anteriormente,
"valores faltantes por el usuario" en la terminología de SPSS Statistics. Sólo
pueden definirse con el comando VALORES FALTANTES. Los "valores
faltantes por el sistema", por otro lado, son asignados por el propio
programa, como se ha descrito anteriormente, si un valor de los datos no
coincide con el tipo de variable (por ejemplo, si una variable numérica debe
contener letras) o si una transformación conduce a un valor indefinido
(división por cero).

A continuación, un ejemplo ficticio para demostrar algunas posibilidades


del comando VALORES FALTANTES:

MISSING VALUES parks (9999).

MISSING VALUESsex ('X') /nme (-9, -99, -9999).

MISSING VALUESgew (1 THRU 20) /short, long (LO THRU


0, 99999).

/vx (-1, 200 THRU HI).

En nuestros datos de ejemplo, tenemos valores faltantes para casi todas las
variables. En el caso de "v9", por ejemplo, todos los valores superiores a 8
son valores faltantes. 0 significa "NO RECOGIDO". Esto ocurre cuando
alguien no responde o no sabe la respuesta a la pregunta. Estos valores se
marcan como "faltantes" mediante el siguiente comando:

MISSING VALUESv9 (0, 8 THRU HI).

Se permiten varios comandos de VALORES FALTANTES. Si una variable


aparece en varios comandos, sólo el último comando es efectivo. Todos los
acuerdos anteriores se "sobrescriben". La siguiente sentencia cancela todos
los acuerdos de valores faltantes para la varlist:

MISSING VALUESvarlist ( ).

Todavía hay dos cosas que no están claras:

¿Cómo se procesan los valores faltantes y qué valores deben usarse como
valores faltantes por el usuario?
Los casos con valores faltantes suelen excluirse simplemente del cálculo.
Mediante el uso de especificaciones, normalmente es posible desviarse de
esto y controlar si los valores faltantes se incluyen en las evaluaciones y
cómo. El tratamiento de los valores faltantes debe aclararse antes del
análisis.

No se puede utilizar ninguna expresión posible de las variables en cuestión


para indicar un valor faltante. La consecuencia de esto sería que ya no sería
posible distinguir qué caso tiene un valor faltante.
Por lo tanto, un valor faltante suele definirse como un valor muy grande o
muy pequeño que se encuentra fuera del rango de valores de la variable (por
ejemplo, 9 para las variables dicotómicas con 0 y 1 como expresiones). Hay
que tener cuidado con las variables cuyo rango de valores no se conoce
desde el principio. Sería peligroso tomar 9999.99 como valor faltante en la
pregunta de ingresos netos mensuales, ya que podría ser un posible ingreso
para un encuestado. En estos casos, un valor negativo puede ser útil como
valor faltante (como -1).

Definición de los datos de Entrada de Texto ASCII


Los datos de entrada en formato de texto "puro" no contienen información
sobre la asignación de las columnas de las filas de datos a las variables. Por
lo tanto, los datos deben darse a conocer al programa SPSS Statistics. Para
este 'anuncio' o 'descripción' de los datos (definición de los datos) se
requiere al menos la siguiente información:

¿Qué archivo contiene nuestro registro de datos?

¿Cómo se llaman las variables?

¿Dónde están y cuáles variables en el conjunto de datos?

¿Cómo se separan las variables en el conjunto de datos (espacio,


como, ...)?
Los datos podrían introducirse directamente en la ventana de datos de SPSS
Statistics, como se ha explicado anteriormente. Sin embargo, esto no es
factible para un conjunto de datos más grande, ya que el "editor de datos"
de SPSS Statistics es bastante incómodo. Por lo tanto, los datos suelen
almacenarse en simples archivos de texto, los llamados archivos ASCII,
utilizando programas de entrada especiales. En este caso, están disponibles
como puras columnas de dirección (sin ninguna información de formato) en
lo que sigue, asumimos este caso.

Estos llamados "datos brutos" sólo adquieren importancia mediante la


definición de los datos. Sin descripción, siguen siendo sólo columnas de
cifras. Sólo la descripción llena estas columnas en términos de contenido.
Esto puede hacerse utilizando el control del menú (ABRIR ARCHIVO DE
DATOS...) y el tipo de archivos "Texto (*.txt, *.dat, *.csv)" o el comando
de sintaxis LISTA DE DATOS que se muestra a continuación.
DATA LIST FILE='file' [FIXED] [RECORDS=n]
Syntax /[sentence#] varlist column[column]

[(format)] [varlist ...][/ ...] .

Ejemplo: Un ejemplo con nuestro registro de datos sería entonces (...


representa las líneas que no fueron listadas en el ejemplo para mayor
claridad):

DATA LIST FILE = 'analysis2010.dat' RECORDS=1

/1 v1 1-4 v2 5-8 v3 9 v4 10-15 v5 16 v6 17 v7 18

v1568 1144-1154 (F11.9) v1569 (A21).

El comando tiene una estructura muy compleja, que no se explicará aquí.


Para obtener más información sobre el lenguaje de comando de SPSS
Statistics, consulta la Referencia de Sintaxis de Comandos de IBM SPSS
Statistics 23.
Capítulo Cinco
Análisis en SPSS Statistics (Procedimientos)

El Camino hacia el Análisis


Los requerimientos de análisis deben concretarse de forma comprensible
para el sistema estadístico. En SPSS Statistics, hay básicamente dos formas
de hacerlo:

1. Un análisis se solicita a través de un menú.

2. Un análisis se solicita mediante un comando en el editor de sintaxis.


Análisis y Modificaciones a Través de los Menús
La barra de menús de SPSS Statistics para Windows se divide en los
elementos de menú ARCHIVO, EDITAR DIEZ (EDIT TEN), VER,
DATOS, TRANSFORMAR, ANALIZAR, GRÁFICOS, EXTRAS,
AVANZADO, EXPANDIDO y CALCULADO.

GEN, VENTANAS y AYUDA. El menú ANÁLISIS contiene los


procedimientos estadísticos que pueden realizarse con SPSS Statistics.
Contiene una lista de encabezados que luego conducen a los menús reales
para las estadísticas solicitadas. Por lo tanto, cada entrada de término
genérico va seguida de una flecha que apunta a otro nivel de menú. Los
términos genéricos se utilizaron en un intento de darle estructura al
contenido de los procedimientos estadísticos en SPSS Statistics para que no
ofrecieran una lista simple de los procedimientos a los usuarios. No
obstante, es necesario un cierto grado de experiencia para encontrar un
procedimiento específico.

SPSS puede ser licenciado con varios módulos. Ciertos módulos pueden
crear otros puntos de entrada bajo ANALIZAR o en la barra de menú
(como en la figura el punto MERCADO DIRECTO).
Como ejemplo del procedimiento con el control del menú, este sirve para la
producción de una distribución de frecuencia absoluta, relativa y
acumulada. Desde los menús se puede hacer lo siguiente

ANALIZAR ESTADÍSTICAS DESCRIPTIVAS FRECUENCIAS...

Se selecciona. Aparece el cuadro de diálogo Frecuencias.

Todos los cuadros de diálogo de los métodos estadísticos contienen los


siguientes componentes o similares:

Lista de Variables: La lista de variables se encuentra en el lado


izquierdo del cuadro de diálogo y contiene una lista de todas las
variables del archivo de datos.

Variable(s): El campo Variable(s) contiene la(s) variable(s)


utilizada(s) para el análisis estadístico seleccionado. Para transferir
la variable correspondiente de la lista de variables allí, primero
debes seleccionar la variable seleccionada (la selección es más
rápida escribiendo las primeras letras) y hacer clic en el botón de la
flecha (). Age native, la variable se puede transferir al campo
haciendo doble clic.

Botones: Al hacer clic en estos botones de la derecha y de la parte


inferior de la ventana se ejecutan ciertos comandos o acciones. El
cuadro de diálogo Frecuencias contiene los botones Aceptar,
Insertar, Reiniciar, Cancelar, Ayuda y Estadísticas... Slidegramas... y
formato... Los tres puntos (...) indican que detrás de estos botones
siguen existiendo cuadros de diálogo secundarios.

Los cinco botones de comando estándar de un cuadro de diálogo, situados


siempre a la derecha o en la parte inferior de la ventana, tienen los
siguientes significados:
1. ACEPTAR (OK): Inicia el procedimiento correspondiente y cierra
el cuadro de diálogo al mismo tiempo.

2. Insertar: Transferir un comando de SPSS Statistics correspondiente


a la configuración del menú seleccionado al editor de sintaxis (ver
sección 5.1.2, página 28). Allí se pueden almacenar y editar.

3. Deshacer: Deshace una selección de la lista de variables.

4. Abortar: Deshace todos los cambios realizados desde que se abrió


el cuadro de diálogo y vuelve a cerrarlo.

5. Ayuda: Abre una ventana de ayuda que contiene información sobre


el cuadro de diálogo.

Casi todos los procedimientos estadísticos de SPSS Statistics proporcionan


ciertos resultados preestablecidos sin requisitos adicionales especiales. La
siguiente ventana de frecuencia, vuelve después de hacer clic en Aceptar...
sin información adicional especial.
Dependiendo del método seleccionado, hay más o menos botones
disponibles que los sugeridos por SPSS Statistics por defecto. Estos botones
específicos del proceso son muy diversos y se discutirán con más detalle en
el Capítulo 5 durante la discusión de los procedimientos estadísticos
individuales.

En el menú anterior, por ejemplo, Estadísticas... diagramas... formatea


dichos botones específicos del proceso. A través de diagramas... puedes, por
ejemplo, crear un gráfico adicional.

Observación para los cuadros de diálogo secundarios en las "Ventanas de


Análisis":

SPSS puede tener licencia para varios módulos. Algunos módulos pueden
cambiar la apariencia de los cuadros de diálogo secundarios. Cuando se
licencia el módulo "SPSS Bootstrapping", por ejemplo, algunos cuadros de
diálogo para los análisis tienen el botón adicional Bootstrap...

Además de los análisis, las opciones de modificación y selección de datos


juegan un papel importante en SPSS Statistics. Las modificaciones pueden
encontrarse en el elemento de menú TRANSFORMACIÓN. Las opciones
de selección pueden seleccionarse en el elemento de menú DATOS.
Análisis y Modificaciones Mediante Comandos
Las solicitudes de análisis y modificación también pueden especificarse
directamente mediante comandos a SPSS Statistics. Los comandos son
instrucciones que indican al programa, a través de una interfaz de
comandos, qué debe hacerse exactamente con qué. En última instancia, los
menús de comandos comentados anteriormente simplemente crean un
comando y lo envían a SPSS Statistics sin que sea visible inmediatamente.
Una prueba de ello es la posibilidad de generar comandos directamente
desde los elementos del menú de ANALIZAR mediante el botón Insertar.

Los comandos para SPSS Statistics se formulan en el editor de sintaxis. En


SPSS Statistics, el editor de sintaxis debe solicitarse en primer lugar a
través del menú ARCHIVO NUEVO SINTAX.

A continuación, los comandos se introducen en el editor de sintaxis que


aparece entonces.

El editor de sintaxis permite crear comandos. En cuanto se escribe una letra


en el editor, SPSS Statistics sugiere todos los comandos con la letra inicial
correspondiente. Si se selecciona un comando, se pueden llamar las
especificaciones utilizando Ctrl+Espacio. Mientras un comando detectado
esté incompleto, se muestra en rojo. Cuando se reconoce un comando
sintácticamente correcto, el color cambia a azul. Los comandos
desconocidos aparecen en negro. Las abreviaturas de comandos
sintácticamente correctos también se muestran en negro.
Un comando puede continuar en cualquier número de líneas y siempre
termina con un punto. Si un comando debe ser ejecutado, el cursor se
posiciona dentro del comando o se selecciona el comando. Un clic o la
opción de menú EJECUTAR SELECCIÓN (combinación de teclas Ctrl +
R) ejecuta el comando. Varios comandos consecutivos se ejecutan uno tras
otro seleccionando todos los comandos y luego haciendo clic en el elemento
de menú EJECUTAR SELECCIÓN.

SPSS Statistics distingue entre mayúsculas y minúsculas, pero es


irrelevante para la interpretación de los comandos el hecho de que éstos
distingan entre mayúsculas y minúsculas en el editor de sintaxis.

Hay que respetar una estructura específica (sintaxis) para los comandos
para que SPSS Statistics pueda interpretarlos. Esto se describe en detalle en
la unidad que sigue a la siguiente ("Estructura y sintaxis de los comandos"
de este capítulo).

Comandos o Menús – una Cuestión de Gustos


Una cuestión muy discutida es si los deseos de análisis deben transmitirse
con menús o comandos. Los menús ofrecen la ventaja de solicitar análisis
rápidamente y sin necesidad de tener grandes conocimientos básicos. Esto
permitirá a los inexpertos iniciarse en SPSS Statistics. Incluso a los usuarios
experimentados les gusta utilizar los menús para realizar consultas ad hoc.
Sin embargo, los estudios más complejos suelen requerir que SPSS
Statistics procese sucesivamente una serie de procesos para producir el
resultado deseado. Aunque esto se suele hacer con los menús, se
recomienda tener cuidado en este caso: Si se trabaja en muchos menús uno
tras otro, la visión general se pierde fácilmente. Resulta casi imposible
entender el trabajo realizado o hacerlo transparente a terceros (colegas o
correctores).

Por ejemplo, los flujos de trabajo similares al trabajar con menús suelen
recrearse cada vez con gran esfuerzo. Desde nuestro punto de vista, esta es
la ventaja de las órdenes. Pueden almacenarse y, por lo tanto, son
reproducibles en cualquier momento. Cuando se trabaja con órdenes,
terceras personas pueden ver lo que se ha hecho, por lo que también se
pueden descubrir los errores más rápidamente.

Además, los requisitos de análisis "avanzados" a veces también requieren el


uso de comandos porque no son factibles en absoluto a través de los menús.
En nuestra opinión, un trabajo de análisis más extenso sólo puede realizarse
con el conocimiento de los comandos de SPSS Statistics. Por lo tanto, los
comandos se describen en detalle en este script. Sin embargo, en la medida
de lo posible, también se describen los menús correspondientes.
En relación con procesos de análisis más complejos, el menú puede
utilizarse como una ayuda adecuada, especialmente si no se conoce el
comando completo. Para ello, activa todos los campos del menú y, a
continuación, haz clic en el botón Insertar (en lugar de OK). El comando se
inserta en una ventana de sintaxis y puede guardarse, editarse y ejecutarse
desde allí.

Estructura y Sintaxis de los Comandos


Debido a la gran importancia de los comandos que se transmiten a través de
la ventana de sintaxis, en este punto discutiremos en detalle cómo formular
los comandos.

Un comando de SPSS Statistics puede escribirse tanto en mayúsculas como


en minúsculas (este script utiliza letras mayúsculas para los comandos). Un
comando siempre comienza con una palabra clave de comando, que
también puede consistir en varias palabras individuales. La palabra clave
indica al programa qué acción debe realizar, por lo que es el nombre real del
comando.

Por ejemplo, el comando SHOW o MOSTRAR, muestra la configuración


del sistema de SPSS Statistics.
Para casi todos los comandos, existen las llamadas especificaciones, que
definen exactamente qué, cómo y con qué hacer un comando. Las
especificaciones siempre están separadas de la palabra clave del comando
por al menos un carácter en blanco. Muchas especificaciones contienen uno
o más subcomandos, que a su vez requieren especificaciones.

El comando SHOW contiene las especificaciones TODO, CAJA DE


ERRORES:MOSTRAR TODO o en inglés (ALL, BOX, ERRORS: SHOW
ALL).

MOSTRAR CAJA (SHOW BOX).

MOSTRAR ERRORES (SHOW ERRORS).

Estos pueden ser listados individualmente o en combinación. Las


especificaciones suelen constar de los siguientes elementos:

Nombres,

Palabras clave (keywords),

Números,

Cadenas,

Operadores aritméticos (operaciones aritméticas),


Delimitadores y espacios específicos, si los hay es necesario
diferenciar los elementos de especificación individuales entre sí.

A continuación, estos elementos se tratarán individualmente:

Nombres
Los nombres son necesarios para nombrar las variables para SPSS
Statistics. Esto se hace al principio de la evaluación para redefinir las
variables una vez o durante la evaluación para crear variables adicionales.
Desde la versión del programa SPSS 16.0, los nombres pueden tener una
longitud máxima de 64 caracteres (antes eran sólo de 8 líneas) y comenzar
con uno de los caracteres A-Z, @, # o $. Cualquier letra, número puede
seguir al primer carácter de un nombre, los caracteres @, #, $, . y _. Los
nombres no deben terminar con . o _.

Las variables cuyos nombres comienzan con # son variables auxiliares o de


trabajo ("variables scratch"). Sólo existen temporalmente, es decir, durante
un cierto período de tiempo y no pueden ser evaluadas ni guardadas. Un
signo $ al principio de un nombre de variable indica las llamadas variables
de sistema. Son variables creadas automáticamente por SPSS Statistics y no
pueden ser modificadas por el usuario. Proporcionan una serie de
información:

Variable Información
$CASENUM Número de reclamo
$SYSMIS Valor faltante por el
sistema
$DATE Fecha
$TIME Hora y Fecha

Las variables de usuario no pueden empezar con el signo $.

Los nombres en los macros de SPSS Statistics ocupan una posición


excepcional en la formación de nombres y no se tratan más aquí.

Palabras Clave
Las palabras clave son de especial importancia para SPSS Statistics.
Además de las "palabras clave de comando" (como SHOW) que identifican
un comando, hay otras palabras clave que son elementos de especificación
(como LOCAL u ALL para SHOW). Estas palabras clave hacen que SPSS
Statistics realice acciones específicas.

El lenguaje de SPSS Statistics está estructurado de tal manera que no puede


haber confusión entre los nombres de las variables y las palabras clave,
incluso si los nombres son idénticos. Sin embargo, también se permiten
algunas palabras clave en los lugares donde pueden aparecer los nombres de
las variables. Por lo tanto, estas palabras clave ("palabras clave reservadas")
están reservadas y no deben utilizarse como nombres de variables. Estas
"palabras clave reservadas" son:

ALL AND BY EQ GT LE LT NE NOT OR TO WITH.

Números y Cadenas
● Los números y las cadenas están permitidos en muchos lugares de
los programas de SPSS Statistics:
● Cuando se refieren a valores de variables (como nme = 2000),

● como constantes para transformaciones numéricas (como x = 1)

● o como cadenas para funciones de "cadena", es decir, funciones con


cadenas como argumentos (como abt = 'rolag')

Los números están formados por los dígitos del 0 al 9. Son importantes por
su valor numérico. Si se trata de números decimales, un punto (decimal)
sustituye a la coma habitual en Estados Unidos (ejemplo: 0.5 significa 0.5
en lugar de 0.5). Como primer carácter de un número, también se admiten
"+" y "-". Los números pueden contener cualquier número de cifras. Sin
embargo, hay que tener en cuenta que la precisión de cálculo de una PC es
limitada. En consecuencia, los números permitidos son, por ejemplo

1, 12345, -0.07, 78.54, -457.80, +70, 0.000024

Las cadenas de caracteres están formadas por cualquier carácter: las letras
A-Z, los números 0-9, el espacio y los caracteres especiales, como !
§@$%&/()=? ^. También se permiten las diéresis. Las cadenas de
caracteres deben ir entre comillas si se utilizan como especificación:
"HANS", "12-35-89", "§ XXX".

Si las cadenas de caracteres deben continuar a lo largo de varias líneas


debido a su longitud, se encerrarán entre comillas línea por línea. Al final
de cada línea que debe continuar, hay una línea más:
TÍTULO Esta es una evaluación de SPSS Statistics ' + ' para el registro
de datos por ejemplo'.

En lugar de las comillas (') [no confundir con los acentos ('`)], se pueden
escribir comillas (") siempre que no se empiece con una comilla y se
termine con una comilla o viceversa. Si incluyes cadenas de caracteres con
comillas, la comilla es un carácter permitido dentro de la cadena de
caracteres.

Asimismo, para las cadenas de caracteres entrecomilladas, el apóstrofe es


un carácter permitido. Una comilla doble dentro de una cadena delimitada
por comillas se interpreta como una comilla (permitida) (lo contrario se
aplica a las comillas).

Operadores Aritméticos y Delimitadores


Los operadores aritméticos se utilizan en las expresiones aritméticas. Los
operadores aritméticos son los siguientes caracteres:

Operador Significancia
+ suma
- resta
* multiplicación
/ división
** potenciación
El signo de igualdad (=) se relaciona con las expresiones aritméticas para la
asignación de valores como A = A+B+C. Esto significa: Primero se
determina el valor del lado derecho (A+B+C) y luego se asigna a la variable
del lado izquierdo del signo igual (A) (es decir, A se deriva de A+B+C). Por
tanto, ¡no es una ecuación en el sentido matemático!

El signo igual (=), como delimitador especial, se sitúa entre un subcomando


y las especificaciones correspondientes (FILE='FILE') y para expresar la
equivalencia de dos listas (V1, V2 = V3, V4).

Los operadores aritméticos son "autolimitados" y no requieren ninguna


diferenciación especial de sus elementos de especificación. Sin embargo,
puede haber cualquier número de líneas en blanco antes y después de ellos.

Sin embargo, algunos elementos de las especificaciones deben distinguirse


de su "entorno". Para ello existen delimitadores especiales. Los
delimitadores especiales:

()'"/=

Los delimitadores especiales se explican brevemente a continuación.

Paréntesis ( ) suelen incluir argumentos de funciones, pero también


palabras clave que podrían confundirse con variables y ciertas listas de
valores.

Comilla (') y comillas (") encierran cadenas y las delimitan.

La barra o slash ( / ) separa los subcomandos o las sentencias repetibles


entre sí.

Para evitar problemas, se recomienda utilizar siempre el signo igual (=) y la


barra o slash (/) exactamente donde aparecen en los diagramas de sintaxis
SPSS Statistics.
Ejemplo de uso de delimitadores especiales:
RECODEvar1 (1,2 = 1)

/ var2 ('X' = 'Y').

El comando RECODE ejecuta la instrucción var1 (1,2 = 1) una vez. La


barra o slash significa que la instrucción var2 ('X' = 'Y') también debe ser
ejecutada. (El significado exacto del error RECODE se explica
detalladamente más adelante en este libro.

Si no se prescribe un operador aritmético ni una línea delimitadora entre los


elementos de la especificación, se separan ambos espacios, una coma o una
combinación.

Presentación de los Comandos en esta Publicación Introductoria


Con los comandos de SPSS Statistics, normalmente solo requieren unos
pocos elementos de especificación para lograr las acciones del programa.
Los valores predeterminados cubren las demás especificaciones de un
comando.

Esta publicación introductoria presenta una serie de comandos que son


importantes para trabajar con SPSS Statistics. Se permite a los lectores
crear programas de análisis basados en la información disponible de forma
independiente. No es necesario explicar todos los comandos con todas sus
especificaciones. Esto afectaría a la claridad de la fuente. Por lo tanto,
normalmente no se especifica el alcance completo del comando, sino sólo
los elementos de especificación que son indispensables para los análisis
sencillos.

En algunos puntos de los comandos, hay referencias a opciones de


especificación adicionales, normalmente complementadas con una
referencia al manual de SPSS Statistics.

Aquí los comandos se muestran de la siguiente manera:


Las letras mayúsculas se refieren a las palabras clave que deben adoptarse
exactamente de la misma manera que se enumeran. La información en
letras minúsculas es específica del usuario. Aquí deben utilizarse los valores
aplicables al problema respectivo. Si se puede seleccionar una de varias
especificaciones posibles, los elementos de especificación individuales
(alternativos) van entre llaves ({...}). Información entre corchetes ([...]) es
opcional, es decir, no es absolutamente necesaria.

A continuación se muestra un ejemplo de representación de comandos. En


este caso, así como en las presentaciones de los comandos individuales de
SPSS Statistics en el script en general, se enumera primero un diagrama de
sintaxis general del comando. Estos diagramas de sintaxis están siempre
enmarcados y en gris. A continuación, se discuten en detalle los elementos
individuales de la especificación.
Para ilustrar cómo se puede utilizar un comando, se dan ejemplos utilizando
el conjunto de datos ANALYSIS descrito en la página 14 ss. En los
ejemplos, las palabras clave se escriben siempre en mayúsculas y los
nombres de variables y archivos en minúsculas.

SORT CASES BYvarlist [{(A)}{(D)}] [varlist ...].


Hay que adoptar las palabras SORT CASES BY. En lugar de "varlist", el
usuario especifica las variables a las que se dirige el comando. Toda otra
información es superflua. Una posible especificación adicional es (A) o (D).
Se definen mediante el último elemento de especificación de la lista.
"[varlist ...]", la secuencia "varlist [{(A)}{(D)}]" puede aparecer cualquier
número de veces.

En consecuencia, se permiten los siguientes comandos SORT CASES


comandos (entre otros):

SORT CASES BYsex old.

SORT CASES BYsex old (A).


SORT CASES BYsex old (D) educación entrante.

SORT CASES BYsex old (A) formación entrante (D).


SORT CASES BYsex old (A) formación entrante (D) TV.

Una explicación más detallada de este comando se encuentra en el siguiente


contenido de este libro.
Procedimientos de un Vistazo
Los comandos SPSS Statistics para realizar análisis estadísticos se
denominan "procedimientos". Los procedimientos determinan las
evaluaciones que se van a realizar. Antes de realizar los análisis, puede ser
necesario modificar las variables y/o seleccionar los casos.

Los procedimientos se encuentran en los menús bajo la opción


ANALIZAR:

En las primeras unidades de este capítulo ya se ha discutido en detalle cómo


se pueden realizar los análisis con la ayuda de los menús. Como se ha
descrito en unidades anteriores de este capítulo, los análisis también pueden
solicitarse a través de los comandos de SPSS Statistics.

Un procedimiento es un comando que lee datos. Los procedimientos


siempre acceden a los datos y realizan los cálculos estadísticos solicitados,
cuyos resultados aparecen en el visualizador. En cambio, casi todos los
demás comandos (como las modificaciones) sólo se perciben inicialmente y
sólo se ejecutan como el primer procedimiento que les sigue.

Los comandos de procedimiento tienen siempre la siguiente estructura:

Especificaciones del NOMBRE DEL PROCEDIMIENTO


“PROCEDURNAME”

El nombre del procedimiento especifica qué procedimiento se va a


ejecutar.
Las especificaciones son las que se van a ejecutar. Con los procedimientos
en SPSS Statistics, normalmente sólo se requieren unos pocos elementos de
especificación para lograr las acciones del programa. Las demás
especificaciones de un comando se refieren a requisitos especiales y están
cubiertas por los valores predeterminados.

Ejemplo: DESCRIPTIVESv707. El procedimiento DESCRIPTIVES calcula


las estadísticas descriptivas de las variables (métricas). Por defecto, el valor
promedio, la desviación estándar, el mínimo y el máximo. Los valores
faltantes se excluyen de los cálculos.

Estos valores por defecto pueden ser cambiados por los subcomandos
apropiados:

DESCRIPTIVESv707

/MISSING=INCLUDE

/STATISTICS=MEAN, VARIANCE
MISSING=INCLUDE hace que los valores faltantes se incluyan en el
cálculo. STATIS- TICS=MEAN, VARIANCE significa que sólo se debe
emitir el valor medio y la varianza.

Procedimientos Importantes
Nota para los lectores que utilizan el script de autoaprendizajes de SPSS
Statistics:
Todos los ejemplos se calcularon con datos de análisis ponderados para
contrarrestar las distorsiones sistemáticas. La ponderación se basó en la
"Ponderación Personal Este-Oeste" de la v1564. Para obtener detalles sobre
la ponderación, consulta las secciones intermedias de este capítulo.
LISTAR o LIST
El procedimiento LIST enumera los valores de las variables enumeradas en
la "varlist" en un formato estándar para cada caso.
LIST [[VARIABLES=] {varlist} {ALL}]

Significado de los elementos de especificación:

Si se utiliza la palabra clave ALL en el lugar de "varlist", se listan todas las


variables. Un LIST sin especificaciones hace lo mismo.

Enumeramos las variables v3 a v9 para los datos del ejemplo. Restringimos


el listado a los 10 primeros casos del conjunto de datos utilizando el
subcomando CASES. El orden es:

LIST VARIABLES = v3 to v9

/CASES = 10.
El siguiente resultado aparece entonces en el visualizador:

v3
v4
v5
v6
v7
v8
v9
1
1
2
2
2
2
4
2
2
1
1
2
2
4
1
3
2
1
2
2
3







2
10
1
1
2
2
3
Número de casos leídos: 10 Números de casos enumerados: 10

Vemos que las variables y sus valores se enumeran columna por columna.
Cada fila, por tanto, contiene un caso con sus valores característicos.
Frecuencias (FRECUENCIAS)
FRECUENCIAS calcula las frecuencias absolutas, relativas y acumuladas
de las expresiones de las listadas.
FREQUENCIES varlist

[/STATISTICS=[MEAN][STDDEV][VARIANCE][MODE]
[MEDIAN]...[ALL]].
STATISTICS indica qué medidas estadísticas se calculan para caracterizar
las distribuciones de frecuencias. Algunas medidas importantes:

MEAN media
STDDEV desviación estándar
VARIANCE varianza
FASHION moda
MEDIAN mediana
ALL los 15 estadísticos disponibles
Ejemplo: Para la variable "Frecuencia de la iglesia", se calculan las
frecuencias absolutas, relativas y relativas acumuladas a partir de los datos
del ejemplo. Además, se solicita la moda (valor modal), es decir, el valor
más frecuente. El comando para ello es el siguiente:

FREQUENCIES v559/STATISTICS = MODE.

Correspondencia del menú:

ANALIZAR ESTADÍSTICAS DESCRIPTIVAS FRECUENCIAS...

Todas las variables numéricas y de cadena se muestran en la lista de


variables. La variable para la que se van a calcular las medidas estadísticas
se selecciona de la lista de variables y se desplaza a la lista Variable(s): con
el botón de la flecha ().

Para calcular las medidas estadísticas de las variables numéricas, activa el


botón Estadísticas... para abrir el cuadro de diálogo Frecuencias..:
Estadísticas abiertas.
La selección de la casilla determina las medidas correspondientes a la
variable especificada. Por defecto, no se calcula ninguna cifra dimensional.

Ventana de diálogo del botón: Estadísticas...


Independientemente del procedimiento que se haya elegido, es decir, ya sea
a través del comando de sintaxis o del control del menú.

La primera tabla (Estadísticas) contiene información sobre los casos


incluidos (Válido, Faltante) y el modo (5 = SELTENER). En la lista de
resultados, vemos las frecuencias absolutas (frecuencia), las frecuencias
relativas con consideración de posibles valores faltantes (porcentaje), las
frecuencias relativas sin valores faltantes (porcentajes válidos) y las
frecuencias relativas acumuladas (porcentajes acumulados) para la variable
"v559" (frecuencia de asistencia a la iglesia).

Por claridad, en el futuro se omitirá en gran medida la presentación de la


tabla con las estadísticas sobre los valores válidos y los que faltan.

Además de las tablas generadas por FRECUENCIAS, SPSS Statistics


ofrece una variedad de otras formas de crear tablas para frecuencias y
estadísticas derivadas de ellas. Éstas se pueden encontrar en TABLAS
DEFINIDAS Y ANALIZADAS POR EL USUARIO. Las TABLAS
DEFINIDAS POR EL USUARIO ofrecen una variedad de opciones de
diseño para las tablas que van mucho más allá de las posibilidades de
FRECUENCIAS.
Tablas Cruzadas (CROSSTABS)
CROSSTABS crea tablas cruzadas bidimensionales o multidimensionales
entre variables. Suelen llamarse simplemente tablas cruzadas. Las variables
dependientes suelen estar en las filas y las independientes en las columnas.
16 En la sintaxis de SPSS Statistics, la variable que define la línea debe
escribirse antes y la variable que define la columna después de la palabra
clave BY obligatoria en CROSSTABS.
CROSSTABS varlist1 BY varlist2 [BY ...]

[/STATISTICS=[PHI]]

[/CELLS=[COUNT] [ROW] [COLUMN] [TOTAL]].

varlist1 Variable(s) en las filas de la tabla cruzada

varlist2 Variable(s) en las columnas de la tabla cruzada

STATISTICS proporciona medidas de influencia adicionales; PHI


significa, por ejemplo, que se calcula un coeficiente de asociación (medida
Cramers "V") para las características clasificatorias.
CELLS especifica qué debe haber en los campos de la tabla cruzada.
Algunas posibilidades son:

COUNT Frecuencias absolutas,

ROW (FILA) frecuencias relativas condicionales relacionadas con la fila,


COLUMNA COLUMN (COLUMNA) Frecuencias relativas condicionales
relacionadas con la columna,

TOTAL frecuencias relativas comunes relacionadas con todos los casos.


CROSSTABS cruza cada variable antes del BY con cada variable después
del BY. El número de tablas cruzadas generadas es igual al producto del
número de variables antes del BY y el número de variables después del BY.
Se pueden solicitar tablas cruzadas con más de dos dimensiones en
CROSSTABS mediante otras palabras clave BY (máximo 9 en total). Por
ejemplo, el área de elevación (v5) se cruza con el género (v556) y la
nacionalidad (v6):

CROSSTABS v556 BY v6 BY v5.

Ejemplo: Para los datos de nuestro ejemplo, se solicita una tabla cruzada
que representa las distribuciones de frecuencia bidimensionales entre la
variable de clasificación género de los encuestados ("v556") y la variable
comparativa certificado de estudios de los encuestados ("v563").

El orden es:
CROSSTABS v556 BY v563

/CELLS=COUNT ROW COLUMN TOTAL

/STATISTICS=PHI.

Correspondencia del menú:

ANALYZE �� DESCRIPTIVE STATISTICS �� CROSS


TABLES...

Muchos autores de ciencias sociales recomiendan colocar la variable


dependiente en las filas y la independiente en las columnas. Sin duda, es
ventajoso que los estudiantes se orienten al procedimiento habitual en su
campo de estudio.

A partir de la lista de variables de la tabla de clasificación cruzada, la


variable cuyos valores están en las filas de la tabla de clasificación cruzada
se inserta ahora en la lista de filas. A su vez, la variable cuyos valores están
en las columnas de la tabla cruzada se inserta en la lista Columnas.

Por defecto, las frecuencias absolutas se especifican en los campos de una


tabla cruzada. La activación del botón Celdas... abre el cuadro de diálogo
Tablas cruzadas: Mostrar celdas en las que se puede solicitar más
información. En nuestro ejemplo, también se requieren los porcentajes de
un relativo común, las frecuencias relativas condicionales y las
distribuciones de límites de las variables. Hay que activar las opciones Fila
por fila, Columna por columna y Total en el área de porcentajes.

En el cuadro de diálogo Tablas cruzadas: Estadísticas del botón


Estadísticas... se pueden calcular dimensiones de influencia adicionales. Las
medidas adecuadas para los datos clasificatorios son la medida de Cramer
("V") y la contingencia media cuadrática ("phi").

Una tabla cruzada suele dar la primera impresión de si existe una relación
entre dos variables.
La tabla cruzada contiene las frecuencias absolutas (número) solicitadas con
COUNT. Por ejemplo, 483 encuestados son hombres y tienen un certificado
de estudios secundarios o elementales. La tabla cruzada también contiene
los porcentajes de columna solicitados con COLUMN (frecuencias relativas
condicionales) (% dentro del certificado general de estudios secundarios):
por ejemplo, el 47,9% de los encuestados con certificado de estudios
secundarios son hombres.

Por ejemplo, los porcentajes de columna generados por ROW (% dentro de


los encuestados de género<r>) significan que el 35,5% de los hombres
tienen un certificado de finalización de estudios secundarios o elementales.
Por último, se indican las frecuencias relativas comunes (porcentaje del
número total), que se obtienen por TOTAL. Así, el 17,1% de los
encuestados son a la vez hombres y tienen un certificado de estudios
secundarios o elementales. La medida de Cramer de 0,087 se acerca a 0, lo
que sugiere que existe una correlación "muy débil" entre las dos variables.
Estadísticas Descriptivas (DESCRIPTIVES)
DESCRIPTIVES calcula medidas estadísticas para las variables métricas.
Por defecto, son el valor medio, la desviación estándar, el mínimo y el
máximo.

DESCRIPTIVES varlist

[/STATISTICS= [MEAN] [STDDEV] [VARIANCE]

[MIN] [MAX] [ALL]].


STATISTICS solicita medidas específicas. Algunas medidas
importantes:

MEAN media
STDDEV desviación estándar

VARIANCE varianza

MIN mínimo

MAX máximo
ALL TODO los 11 estadísticos disponibles

A partir de los datos del ejemplo para las variables "edad encuestado<r>"
"v554" e "ingresos netos preguntados<r>" "v707" se calcula el valor medio,
la desviación estándar, la varianza, el mínimo y el máximo.

El orden es:

DESCRIPTIVE v554 v707


/STATISTICS=MEAN STDDEV VARIANCE MIN MAX.

Correspondencia del menú:

ANALYZE �� DESCRIPTIVE STATISTICS ��


DESCRIPTIVE STATISTICS...

Para calcular los valores clave para la descripción de la posición, la


dispersión y la distribución de los valores de una variable, utiliza el botón
de la flecha () para mover la variable para la que se van a calcular los
valores clave a la lista Variable(s).

Con la ayuda del botón Opciones... se accede al cuadro de diálogo


Estadísticas Descriptivas: Opciones, donde podrás seleccionar los datos
estadísticos que deseas calcular.
Ejemplo: La lista de resultados muestra el número de casos válidos
subyacentes (N), el valor más pequeño (mínimo), el valor más grande
(máximo), el valor medio aritmético, la desviación estándar y la varianza en
columnas para las variables individuales. Si se solicitan muchos
estadísticos, su salida ya no es columna por columna, sino al lado y debajo
de cada uno.
Correlaciones (CORRELATIONS)
CORRELATIONS calcula para las variables de la "varlist" una matriz de
correlación (coeficientes de correlación de Bravais/Pearson) y valores de
significación para las pruebas bilaterales de los coeficientes de correlación
(H0: r=0 o H1: r≠0). La prueba sólo se permite bajo una serie de supuestos
(se debe disponer de una muestra aleatoria simple de una distribución
normal bidimensional).

Estos requisitos previos tendrían que examinarse primero para nuestros


datos de ejemplo. Pero no es eso lo que vamos a tratar aquí. En nuestro
marco sólo se van a mantener los requisitos a nivel de escala: Así, el
coeficiente de correlación sólo puede aplicarse a variables dicotómicas y de
escala métrica. Los valores de significación no se interpretan aquí.
CORRELATIONS varlist.
En nuestro ejemplo, se supone que existe una relación lineal positiva entre
la edad y el nivel de ingresos de un encuestado. Por lo tanto, el coeficiente
de correlación, según Bravais/Pearson, se calcula como una medida de
correlación para las características métricas. El procedimiento
CORRELATIONS se introduce en la puerta de sintaxis. Sólo se deben
indicar las variables entre las que se va a calcular el coeficiente.

El orden es:

CORRELATIONSv707 v554.

Correspondencia del Menú:


ANALYZE �� CORRELATION �� BIVARIAT...

Para calcular los coeficientes de correlación es necesario seleccionar al


menos dos variables. Por defecto, se calcula el coeficiente de correlación de
Pearson.
El resultado es el siguiente:

La matriz de correlación muestra los respectivos coeficientes de


correlación, según Bravais/Pearson. Miden la fuerza y la dirección de la
relación lineal entre los ingresos netos mensuales y la edad de los
encuestados. El valor del coeficiente de correlación (a menudo llamado r)
está siempre entre -1 y +1 (-1 ≤ r ≤ +1). En nuestro caso, es de 0,061, lo que
significa que la relación lineal entre los ingresos netos de las dos variables y
la edad sólo es positiva "muy débil". También se indica el número de casos
(N) utilizados para calcular el coeficiente de correlación.
Comparación de Valores Medios (MEANS)
Por defecto, MEANS calcula los valores medios, las desviaciones estándar
y el número de casos válidos de las variables métricas por subgrupo.

Las variables métricas deben aparecer a la izquierda de la palabra clave BY.


Los valores característicos de las variables a la derecha de la palabra clave
BY definen los subgrupos.

CELLS MEAN media

STDDEV desviación estándar


VARIANCE varianza

SUM suma

COUNT número
Ejemplo: Para los datos del ejemplo, se calculan algunas medidas
disponibles a través de MEANS para las variables "edad encuestada<r>"
("v554") y "ingresos netos encuestados<r>" ("v707"), separadas por sexo
("v556").

El orden es:

MEANS v707 v554 BY v556

/CELLS = mean count stddev sum variance.

Correspondencia del menú:

ANALYSE �� MEAN VALUES COMPARE �� MEAN


VALUES...
Todas las variables numéricas y de cadena del conjunto de datos aparecen
en la lista de variables. Las variables cuyos valores medios se van a calcular
para los grupos se trasladan ahora a la lista Variables dependientes. En este
ejemplo, se trata de la edad y los ingresos netos de los encuestados.

El botón de la flecha () inserta la variable por cuyos valores característicos


se van a formar los grupos en el campo Variables independientes. En este
caso, la variable "sexo" comparte con los subgrupos "mujer" y "hombre".
Además de los valores medios de los grupos, se pueden calcular otras
medidas estadísticas con el botón Opti- nen.... Esto nos lleva al cuadro de
diálogo Opciones de media.

Después de haber puesto la suma y la varianza como estadísticas deseadas


en el lado derecho, obtenemos nuestro resultado.

Primero se determinaron las medidas estadísticas para los entrevistados


"masculinos", luego para los casos "femeninos" y finalmente para todos los
casos (total): media aritmética, N y desviación estándar, suma y varianza.
"N" indica cuántos casos se utilizaron para el cálculo. En la columna de la
izquierda, los cálculos se refieren a la edad, en la de la derecha a los
ingresos netos.
Capítulo Seis
Modificación de los Datos

El requisito previo al análisis de los datos suele ser una modificación


adecuada de los mismos. En este contexto, modificación de datos significa
que los datos se cambian mediante determinadas operaciones antes del
análisis. Estas son algunas de las situaciones en las que se requieren
modificaciones de los datos:

Se eliminan los errores de la codificación.


Se calcula un índice a partir de varias variables.
Se modifica la escala de las variables.
Se realizan cálculos de control para verificar la corrección de los
datos.
En nuestro contexto de aplicación, sólo es importante la modificación de las
variables numéricas. Por esta razón, no se muestran las opciones de
modificación de las variables de cadena de caracteres.

Durante la modificación de los datos, la introducción de comandos


mediante el menú no puede mostrarse en detalle, ya que a menudo hay que
recorrer toda una serie de cuadros de diálogo para obtener el mismo
resultado. En general, se recomienda utilizar aquí los comandos, ya que son
más fáciles de manejar. Al final de cada sección se hace una breve
referencia a los cuadros de diálogo.
Modificación de Variables Numéricas
Los comandos RECODE y COMPUTE son los elementos más importantes
del lenguaje para modificar variables numéricas.

Al utilizar ambos comandos de modificación, es importante saber que los


resultados de los errores sólo son visibles en la vista de datos del editor de
datos cuando se solicita el primer análisis. Esto puede hacerse, por ejemplo,
utilizando un procedimiento como FRECUENCIAS o DESCRIPTIVAS, o
utilizando el comando EJECUTAR, que sólo ejecuta las modificaciones
anteriores que aún no han sido procesadas, pero no genera ninguna salida.

Mientras no se llame a ningún análisis, en la esquina inferior derecha de la


ventana de datos aparece una referencia a "Transformaciones abiertas", que
recuerda que las variables se modificaron en un momento anterior. Las
modificaciones mediante menús, en cambio, se ejecutan inmediatamente.
Recodificación (RECODE)
El comando RECODE cambia la escala de las variables. Los valores de una
"lista de valores" son recodificados a un nuevo "valor" por RECODE.
Últimamente se utiliza el término "recodificación" en lugar de
"recodificación".

El comando RECODE tiene la siguiente estructura

RECODEvarlist1 (value list = value) ... (value list = value)

... [({werteliste}{MISSING}{SYSMIS}{ELSE}} = {value}


{SYSMIS}{COPY}]
[INTO varlist2] [/varlist ...].
varlist1 es el nombre de una o muchas variables ya definidas.

La lista de valores es un conjunto de valores de variables separados por


comas o espacios (al menos un valor). Al igual que con el comando
VALORES FALTANTES (MISSING VALUES), las palabras clave LO
(LOWEST), HI (HIGHEST) y THRU se utilizan para formar rangos de
valores. Los rangos de valores y los valores individuales pueden
combinarse como se desee. Su depósito no está limitado. LO y HI incluyen
"valores faltantes por el usuario", pero no "valores faltantes por el sistema".
Los rangos de valores contienen el punto inicial y el final. Es admisible que
el punto final de una lista de valores y el punto inicial de la siguiente lista
de valores sean idénticos ((LO THRU 4000=...) (4000 THRU HI=...)). En
los siguientes ejemplos queda claro que hay que prestar atención a qué
valor se menciona primero.

Ejemplo 1:
RECODE v707 (LO THRU 4000=1) (4000 THRU HI=2).
En este caso, el ingreso neto se recodifica de 4000 a 1.
Ejemplo 2:
RECODE v707 (4000 THRU HI=2) (LO THRU 4000=1).
En este caso, los ingresos netos se recodifican de 4000 a 2.

Cuando se utiliza THRU, el valor más bajo del rango de valores debe estar
a la izquierda, por ejemplo (4 THRU 9). (9 THRU 4) es incorrecto. En lugar
de la "lista de valores", se permiten las palabras clave ELSE, MISSING y
SYSMIS.

ELSE= se refiere a todos los valores que no figuran en ninguna lista de


valores anterior (categoría de colección). Por lo tanto, ELSE sólo puede
colocarse antes de la última lista de valores perteneciente a una "lista de
valores". Todas las listas de valores siguientes se ignoran. ELSE contiene el
"valor que falta en el sistema" y el "valor que falta en el usuario".

MISSING= sirve para recodificar los "valores que faltan del usuario" y los
"valores que faltan del sistema". Si se utiliza MISSING para la
recodificación, los nuevos valores no son automáticamente valores
faltantes.

SYSMIS= sólo se utiliza para la recodificación de los "valores faltantes por


el sistema".

Worth es el nuevo valor de la variable en el que se recodifican todos los


valores de la "lista de valores". Sólo se permite un valor numérico. La
palabra clave SYSMIS as value convierte los valores de la "lista de valores"
en el "valor que falta en el sistema". La palabra clave COPY as values
simplemente copia los valores de la "lista de valores".

INTO como especificación nos permite recodificar los valores de las


variables de la "lista de valores1" y almacenar el resultado en las variables
de la "lista de valores2". Sin INTO, las variables de la "varlist1" se
modifican directamente. La "varlist2" debe tener tantos elementos como la
"varlist1". Las variables se asignan a la secuencia una tras otra. La
"varlist2" (de destino) puede consistir en o- ya definidas de la nueva
variable. Las variables nuevas en este sentido son aquellas que no estaban
definidas antes de que se produjera el comando RECODE. Por lo tanto, se
enumeran por primera vez en la "varlist2".

Los casos con valores que no figuran en una "lista de valores" no se


modifican para las variables ya definidas de la "varlist2". Con las nuevas
variables de la "varlist2", estos casos obtienen el "valor que falta en el
sistema".

Sin embargo, COPY como "valor" y ELSE como "lista de valores" ofrecen
la posibilidad de transmitir simplemente todos los valores que no se pueden
recodificar sin cambiarlos. (ELSE=COPY) es entonces la última regla de
recodificación. COPY también transfiere los "valores faltantes por el
usuario" y los "valores faltantes por el sistema". El estado de faltante de los
"valores faltantes por el usuario" se pierde.

Dado que la recodificación de las variables existentes a menudo no puede


deshacerse (por ejemplo, si se combinan varios valores a una categoría), se
recomienda guardar siempre la recodificación de las variables originales
con INTO en forma de variables recién creadas.

Primero, algunos ejemplos ficticios para demostrar las posibilidades del


comando RECODE.
RECODE x1 TO x5 (2=3) (4=5) /x7 (LO THRU 10=1).
RECODE x8 (0=1) (1=0) (ELSE=SYSMIS).

RECODE x10 (0=1) (2=0) (MISSING=99).

RECODE y1 TO y3 (2 THRU 7, 8, 10 THRU HI=5) (ELSE=COPY)


INTO y4 TO y6.

Ahora un ejemplo con nuestro registro. Se clasifica la variable "v707"


(encuestados de ingresos netos <r>). Hay que formar cinco clases de
ingresos. Los valores recodificados se almacenan en la nueva variable
"nmekl". Esta variable recibe entonces una ETIQUETA VARIABLE y sus
valores ETIQUETAS DE VALOR. Por último, se calcula la distribución de
frecuencias de los valores de la variable para la nueva variable "nmekl".

Nota: Las palabras clave LOW y HI utilizadas por el siguiente ejemplo


incluyen "valores faltantes por el usuario" al recodificar. Por esta razón,
primero se recodifica en 9 utilizando la palabra clave MISSING en la
primera lista de valores. Para que el 9 de nmekl, debe haber un comando de
MISSING VALUES.

RECODE
v707
(MISSING=9)
(LOW THRU 2000 = 1)
(2001 THRU 3000 = 2)
(3001 THRU 4000 = 3)
(4001 THRU 5000 = 4)
(5001 THRU HI = 5)
INTO nmekl.
VARIABLE LABEL
nmekl
'klassiertes Einkommen'.
VALUE LABELS
nmekl
1 'bis 2000'
2 '2001 bis 3000'
3 '3001 bis 4000'
4 '4001 bis 5000'
5 'über 5000'.
MISSING VALUES
nmekl (9).
FREQUENCIES
nmekl.
El resultado de la recodificación sólo puede representarse mediante un
análisis (como FRECUENCIAS):

Porcentajes Porcentaje
Válidos Acumulado
Frecuencia Porcentaje
a
1835 64,9 80,9 80,9
2000
2001
a 279 9,9 12,3 93,2
3000
3001
a 86 3,0 3,8 97,0
Válido
4000
4001
a 42 1,5 1,8 98,8
5000
sobre
27 ,9 1,2 100,0
5000
Total 2269 80,2 100,0
Faltantes 9,00 558 19,8
Total 2827 100,0

Las recodificaciones sólo se hacen visibles cuando se ejecuta un análisis o


EJECUTAR, o se guardan los datos antes, los datos recodificados no son
visibles en el editor de datos.

La recodificación se realiza caso por caso. En cada caso, se comprueba si el


valor actual de la variable aparece en una "lista de valores". Si es así, el
valor se recodifica; si no, se mantiene.

Las especificaciones "(lista de valores=valor)" se evalúan de izquierda a


derecha. Un valor sólo se recodifica una vez por comando RECODE. La
instrucción:
RECODE x1 (0 = 1) (1 = 0).

Para cada caso, se intercambian los códigos 0 y 1. Para las variables


continuas, se ejecuta el comando

RECODE length (17 THRU HI = 2) (LO THRU 17 = 1).

Un caso con un valor de 17 entra en la categoría 2. Equivalente en el menú:

Si los valores de una variable deben ser recodificados y además


conservados en su forma original, entonces aquí está la opción de menú:

TRANSFORM �� ENCODE IN OTHER VARIABLES...

Con el comando

TRANSFORM �� RECODE IN THE SAME VARIABLES...

Se abre el cuadro de diálogo para recodificar valores dentro de una variable.

El botón valores antiguos y nuevos… te lleva al cuadro de diálogo


Recodificar en... Variables: valores antiguos y nuevos. En la parte izquierda,
tiene que introducir los valores iniciales (como valores individuales o rango
de valores) y en la derecha los valores de destino. El botón Añadir
transfiere los valores a la lista de valores a modificar. El botón Siguiente
completa la entrada.

En contraste con la variante de sintaxis, los cambios realizados son visibles


inmediatamente después de pulsar el botón OK en el cuadro de diálogo Re-
dialog en... Variables.

El comando COMPUTE

La Estructura del Comando

En el transcurso del análisis de datos, con frecuencia hay que formar


variables existentes. Al calcular índices de suma, por ejemplo, se debe
determinar la suma de varias variables. Aquí es útil el comando
COMPUTE.

COMPUTE variable = Expresión Aritmética

Variable (variable de destino) es el nombre de una variable ya definida o de


una nueva. En cada caso, se asigna a la variable de destino el valor que
resulta del cálculo de la expresión aritmética. Si la variable de destino ya
existe, se sustituirán los valores de la variable anterior. Si es una variable
nueva, se genera y se añade a la lista de variables en la "Vista de Variable"
del editor de datos. En todos los casos, las nuevas variables se pre-asignan
(inicializan) con el "valor faltante por el sistema" antes del primer cálculo y
luego se modifican según los cálculos.

La expresión aritmética consta de los siguientes componentes:

- nombres de variables y constantes,


- operadores aritméticos (+, -, *, /, **),
- funciones aritméticas,
- funciones estadísticas,
- funciones de fecha y hora,
- funciones lógicas,
- funciones para valores faltantes,
- funciones
- paréntesis.
En aras de la claridad, los componentes individuales de una expresión
aritmética pueden estar separados por espacios.

Los componentes (posibles) de una expresión aritmética se discutirán


individualmente más adelante.

En este punto hay que destacar que el comando COMPUTE funciona caso
por caso: los cálculos de la expresión aritmética se realizan uno por uno
para cada caso. Aunque el comando consta de una sola línea, los cálculos se
realizan para todos los casos.

Nombres de Variables y Constantes


Los nombres de las variables son nombres de variables ya definidas. Las
constantes (numéricas) son números ("cifras"). Están compuestas por los
números del 0 al 9 y si es necesario, el punto decimal. Algunos ejemplos de
constantes son 1 7 8.9 1234.567.

En el caso más sencillo, una expresión aritmética se compone únicamente


de un nombre de variable o de una constante.

Operadores Aritméticos
Los operadores aritméticos combinan los componentes de una expresión
aritmética. Por lo tanto, están "entre" los nombres de las variables y las
constantes. Los operadores aritméticos y su significado son:

Operador significado
+ Suma
- Resta
* Multiplicación
/ división
** potenciación

El cálculo de una expresión aritmética sigue la habitual "regla de


precedencia" "alto antes de señalar antes de la línea". Las operaciones de un
nivel (como la suma y la resta se realizan de izquierda a derecha. Las
expresiones entre paréntesis tienen prioridad. Por lo tanto, poner paréntesis
puede forzar un orden de procesamiento diferente.

Primero, un ejemplo ficticio para mostrar una expresión aritmética "más


larga":

COMPUTE new = (a + b - c) * d + e / f ** 5 - (4.4567 + x ** c).

Para nuestros datos de la muestra, queremos determinar en qué medida los


ingresos del hogar son superiores a los ingresos netos del encuestado o
encuestados. En cada caso, restamos los ingresos netos del encuestado
("v707") de los ingresos del hogar ("v712"). El resultado se asigna a la
nueva variable "Adink". Ésta recibe entonces la etiqueta "ingresos
adicionales". Las correlaciones entre las variables "v707" (ingresos netos
encuestados <r>)

"Adink" (ingresos adicionales) y "v554" (edad del encuestado <r>)


calculados. Aquí, STATISTICS = DESCRIPTIVES Solicita además la
media (MEAN) y la desviación estándar (STD DEV) de las variables.
Como "v707" y "v712" tienen valores faltantes, "Adink" no puede
calcularse para algunos casos. Por lo tanto, a "Adink" se le asigna el "valor
faltante por el sistema" para estos casos (ver también la página 55). Por lo
tanto, las correlaciones se basan en diferentes números de cosas.

El orden es:

COMPUTE Adink = v712 - v707.


VARIABLE LABELS extra income.

CORRELATIONS v707 v554 Adink / STATISTICS =


DESCRIPTIVES.
Funciones
Todas las funciones tienen la estructura:

function name (argument) o nombre de la función (argumento)

Argument es la expresión que la función "functionname" transforma.


Como resultado de esta transformación, la función siempre devuelve un
número ("number") o el "valor faltante por el sistema". Los argumentos
pueden ser expresiones aritméticas, nombres variables, constantes o
funciones.

Una función tiene un número fijo o variable de argumentos. Para evitar


malentendidos, si sólo se trata de un argumento, esté se simboliza con "arg".
En cambio, la "lista de fraude" indica un número variable de argumentos.
Los argumentos de una "lista de fraude" están separados por comas.

SPSS Statistics distingue entre los siguientes tipos de funciones:

⇨ Las funciones aritméticas realizan cálculos "ready-made". Un


ejemplo sería la función "SQRT (arg)" para arrastrar la raíz de arg.

Ejemplo ficticio para demostrar un COMPUTE con funciones aritméticas:


COMPUTE x = SQRT (x7).

⇨ Las funciones estadísticas calculan medidas estadísticas a partir de


los argumentos. Por ejemplo, la función "VARIANCE (fraud list)"
calcula la varianza de los argumentos de la lista de fraude.

Ejemplo ficticio: COMPUTE xx = VARIANCE (x1, x2, x7, x9).

⇨ Las funciones lógicas devuelven el valor 1 (verdadero), 0 (falso) o


el "valor faltante por el sistema" .18
Ejemplo ficticio: COMPUTE xx = ANY (x1,1,2,3,4).

⇨ Las funciones de fecha y hora permiten trabajar con una fecha o un


intervalo de tiempo. Por ejemplo, YRMODA (year, month, day)
(años, mes, día) calcula el número de días entre el 15 de octubre de
1582, el primer día del calendario Gregoriano y el día definido por
los argumentos "(year, month, day).(año, mes, día)". Esta función
puede utilizarse para calcular la diferencia (en días) entre dos
momentos.
Una fecha es (en SPSS Statistics) el número de segundos que hay entre el
14 de octubre de 1582, a (medianoche) y una hora posterior. Debido al
cambio del calendario Juliano al Gregoriano, el día anterior al 15 de octubre
de 1582, era el 4 de octubre de 1582. Sin embargo, el cambio de calendario
no se hizo de manera uniforme. Puesto que fue iniciado por la iglesia
católica, las regiones protestantes se sumaron más tarde.

Valores faltantes en Expresiones Aritméticas


Al final del comando COMPUTE, hay que discutir el tratamiento de los
valores faltantes en la "expresión aritmética":

Si una de las variables enumeradas en la expresión aritmética contiene un


valor faltante, el resultado de esta expresión aritmética es casi siempre el
"valor faltante por el sistema", porque entonces la expresión es indefinida
(excepción ver tabla abajo). De igual forma, las operaciones aritméticas no
autorizadas (división por 0) dan lugar a "valores faltantes por el sistema" en
el resultado. Algunas operaciones en relación con la constante 0 conducen
siempre a los mismos valores (válidos) incluso con valores faltantes:

0*missing =0
0/missing =0
missing**0 =1
0**missing =0
MOD(0,missing) = 0

Valores Faltantes en las Funciones


Las funciones aritméticas devuelven "valores faltantes por el sistema" por
argumentos que están fuera del dominio de la función, como SQRT (-1).

Las funciones con múltiples argumentos se evalúan siempre que sea posible
con información proporcionada por los argumentos. Por lo tanto, una
función puede generar resultados numéricos aunque algunos de los
argumentos tengan un valor faltante. Por ejemplo, una variable con
información válida es suficiente para calcular la función estadística SUM
(x1, x2, x3). Sin embargo, las funciones estadísticas controlan cuántos
argumentos válidos deben estar presentes para que la función sea evaluada,
SUM.n (fraud list) significa que al menos n argumentos deben proporcionar
información válida para que la suma sea calculada. SUM.2 (x1, x2, x3)
significa: Al menos dos variables no deben tener valores de "usuario" o
"valores faltantes por el sistema" para que la función sea evaluada.
Calcular a través de un Menú
Para realizar cálculos a través de un menú, se debe seleccionar,
TRANSFORM �� VARIABLE CALCULATE… y aparecerá la ventana
Calcular variable. Los campos variables de destino, expresión numérica y
funciones ya han sido tratados en detalle en los primeros apartados de este
capítulo.
El comando COUNT
Otro comando para modificar variables numéricas es el comando COUNT.
COUNT cuenta cuántas veces, en un caso, un valor de la "lista de valores"
ocurre en las variables de la "varlist" y si es necesario, asignar el resultado a
un variable objetivo. Así, se cuenta en cada caso sobre las variables de la
"var list."

COUNT variable = varlist (list of values) ...


[/ variable = ...].

Variable es el nombre de una variable existente o nueva.


varlist es una lista de variables ya definidas (al menos una variable).
En la lista de variables, una variable puede aparecer más de una vez. Por lo
tanto, se pondera varias veces. Por ejemplo, si una variable aparece dos
veces en la "varlist", entonces tiene doble peso.

List of values o lista de valores es una serie de valores o rangos de valores


separados por comas o espacios. Los rangos de valores se definen usando la
palabra clave THRU (a menudo en conjunto con LO o HI). Los rangos de
valores y los valores pueden aparecer en cualquier número y combinarse
como se desee:

COUNT x = vx TO vz (1, 7 THRU 17, 20, 47, 70 THRU HI).,

Ejemplo:
COUNT new = a b c d (1).

Resultado de este comando COUNT para los siguientes valores:

A B C D → New
=
0 0 0 0 0
0 1 0 0 1
1 0 0 1 2
1 1 0 1 3
1 1 1 1 4

COUNT ignora los "valores faltantes por el usuario" y los trata como
valores normales. COUNT nunca devuelve un valor faltante como
resultado, porque si ningún valor de la "value list" aparece en las variables
de la "varlist", el resultado del recuento es 0. En la lista de valores, las
palabras clave MISSING o SYSMIS pueden utilizarse para contar todos los
valores faltantes con MISSING ("usuario" y "valores faltantes por el
sistema") o solo los "valores faltantes por el sistema" con SYSMIS.

A partir de los datos del ejercicio, se aclara una vez más el efecto de
COUNT: La nueva variable "improved" o "mejora" recibe en un caso un 2,
si en opinión del encuestado o de su propia situación económica ("v14") o
de su situación económica en Estados Unidos. ("v12 "Vcount" se asigna un
1 si considera que su situación personal o económica está mejorando y
aquellos encuestados que no vean ninguna mejora en ambas preguntas
recibirán un 0, las variables se casan por casos, pero CASES = 10 restringe
este listado a los diez primeros casos.

COUNT improves = v14 v12 (1,2).

VARIABLE LABEL improved

"¿Situación económica propia o situación económica en Estados Unidos en


1 año algo o mucho mejor?".

VALUE LABEL improves 0 "neither" 1 "either" 2


"both".
FREQUENCIES improved.

Correspondencia del Menú:

TRANSFORM �� COUNT VALUES IN CASES...

Para especificar los valores a contar, hay que activar el botón Define
valores… este botón está activo si se especifica al menos una variable de la
lista en el campo Variables.
TEMPORAL o en inglés TEMPORARY
En relación con las modificaciones de datos, el comando TEMPORARY es
de gran importancia. Este comando sólo está disponible a través de la
sintaxis y no a través del control de menú.

TEMPORARY
TEMPORARY señala el inicio de una secuencia de las llamadas
"modificaciones temporales" .20 se trata de órdenes de modificación (como
COMPUTE, RECODE) cuyo efecto es detenerse sólo hasta la siguiente
orden de procedimiento. Por lo tanto, las variables que se forman de nuevo
después de un comando TEMPORARY también existen sólo hasta el
siguiente procedimiento. Sin embargo, están disponibles para estos. Del
mismo modo, las modificaciones de las variables "antiguas" "old" tras una
orden TEMPORARY solo están disponibles hasta el siguiente
procedimiento. Todas las transformaciones que no están entre una orden
TEMPORARY y el siguiente procedimiento son transformaciones
"permanentes" y se aplican a toda la siguiente ejecución de evaluación.

En el siguiente ejemplo, la variable "v563" (Graduación General) se


recodifica temporalmente en tres categorías. Por lo tanto, la variable tiene
tres características en el primer comando FREQUENCIES. En el segundo
comando FREQUENCIES, en cambio, la variable vuelve a tener siete
apariciones, ya que el comando RECODE, con el precedente
TEMPORARY, queda sin efecto después del primer procedimiento. En este
caso se trata de FREQUENCIES. ¡El comando VALUE LABELS sólo es
efectivo temporalmente en este caso!

TEMPORARY.
(2 THRU 3=1) (4
RECODE v563
THRU 5=2) (1,6,7=3).
VALUE
v563 1 low degree
LABELS
2 higher degree
3 other.
FREQUENCIES VARIABLES = v563. FREQUENCIES VARIABLES =
v563.
Modificaciones Dependiendo de las Condiciones
En el curso del análisis de datos, con frecuencia es necesario realizar
modificaciones en las variables sólo si existen determinadas constelaciones
en los valores de las variables. Para este tipo de modificaciones
dependiendo de las condiciones se utilizan los siguientes comandos:

IF Simple y Expresiones Lógicas


El comando IF sólo se discute para las variables numéricas de destino y las
variables numéricas en la expresión lógica. Las variables de cadena y las
cadenas de caracteres en el comando IF no se tratan por separado. La
sentencia IF corresponde a una sentencia COMPUTE que se ejecuta sólo
bajo condiciones muy específicas, es decir, siempre que una "expresión
lógica" sea "verdadera".

IF (logical expression) variable = arithmetic expression

El área de especificación "variable = expresión aritmética" es idéntica a la


parte correspondiente del comando COMPUTE para las variables
numéricas y, por tanto, ya no es necesario mostrarla (para más detalles
sobre el comando COMPUTE, ver la página 52 y siguiente).

Una "expresión lógica" se compone de una o varias relaciones ("relations").


Las relaciones se vinculan mediante un operador lógico

logical expression: relation [logical operator relation ...]

Una relación está formada por dos expresiones aritméticas, entre las que se
sitúa un operador relacional:

Relation: arithmetic expression comparison operator arithmetic


expression

En primer lugar, hay que aclarar cómo se forman las relaciones:


Al componente "expresión lógica" se le aplican las mismas reglas que a la
"expresión lógica" del comando COMPUTE. Es nuevo, por tanto, el
"operador de comparación". Los operadores y los caracteres de
sustitución pueden utilizarse como sinónimos. Por claridad, utilizamos los
caracteres de sustitución de los operadores de comparación y su significado
son:

Operador Sustitutos Significado


EQ = Igual
NE <> Desigual
LT < Menor que
LE <= Menor o igual
que
GT > Mayor que
GE >= Mayor o igual
que

En cada caso, las expresiones aritméticas de una relación se comparan entre


sí mediante el operador de comparación. Después de calcular las
expresiones aritméticas, esto corresponde a una comparación de dos valores
individuales. Cada relación puede ser "verdadera", "falsa" o "faltante". Una
relación es "verdadera" si la comparación es verdadera para el caso
considerado; es "equivocada" si no es verdadera, y es "faltante" si no es
posible tomar ninguna decisión debido a que faltan valores en las variables.

Varias relaciones están interconectadas por operadores lógicos:

Relation Logical Operator Relation


Los operadores lógicos y su significado son:

Operador Sustituto Significado


AND & Operación AND
OR | Operación O
NOT ˜ Inversión del valor
verdadero de lo siguiente

El hecho de que el resultado de dicha combinación de relaciones sea


"verdadera" "falso" o "faltante" depende de los "valores verdaderos" de las
relaciones asociadas y del enlace seleccionado. Aquí se aplica:

Relación Operador Relación Resultado


Verdadero Y Verdadero Verdadero
Verdadero Y Incorrecto Incorrecto
Incorrecto Y Incorrecto Incorrecto
Verdadero Y Faltante Faltante
Incorrecto Y Faltante Incorrecto
Faltante Y Faltante Faltante
Verdadero O Verdadero Verdadero
Verdadero O Incorrecto Verdadero
Incorrecto O Incorrecto Incorrecto
Verdadero O Faltante Verdadero
Incorrecto O Faltante Faltante
Faltante O Faltante Faltante

La primera línea de esta tabla debe interpretarse como sigue: Si, para una
combinación de dos relaciones, la primera relación es "verdadera" y al
mismo tiempo (Y) la segunda relación es "verdadera", entonces el resultado
de la combinación también es "verdadera". La interpretación de las líneas
restantes debe realizarse de forma análoga.
Si SPSS Statistics encuentra una sentencia IF, comprueba en cada caso si la
expresión lógica completa es verdadera, falsa o faltante. Si la expresión
lógica es "verdadera", se ejecuta la "instrucción de cálculo" (variable =
expresión aritmética). Por el contrario, si la expresión lógica es "falsa" o
"faltante", no se realiza ningún cálculo para el caso en cuestión y la variable
de destino situada a la izquierda del signo igual permanece sin cambios. Si
un caso se evalúa de este modo SPSS Statistics continua comprobando la
expresión lógica para el siguiente caso.

A continuación, se discutirá el modo de funcionamiento del comando IF


con algunos ejemplos.
En el caso más simple, una expresión lógica consiste en una sola relación,
en la que las dos expresiones aritméticas son constantes únicas o variables
individuales.

Ejemplos:

IF (v554> = 70) class = 1.

La expresión aritmética "v554" (variable que responde a la edad <r>) y la


expresión aritmética "70" (constante) están conectadas por el operador de
comparación "> =". Si es así, a la variable "class" se le asigna el valor 1 en
este caso. Si no es así, "class", si es una variable "old", permanece
inalterada, o asume el "valor faltante de sistema", si es una variable "new".

IF (v554> = 70 AND v556 = 1) class = 1.

En este caso, en un caso, tanto el valor de la variable "v554" mayor que 70


como el valor de la variable "v556" (género) deben ser iguales a 1 (hombre)
para que "class" se le asigne el valor 1.

IF (v556 = 2 OR v737 <> 1) vnew = 2.

"vneu" se asigna el valor 2 si y sólo si la variable "v556" (género) es 2


(mujer) o "v737" (estado civil) no es 1 (soltero) o si ambos son verdaderos.
Orden de Ejecución de los Comandos
Si una expresión lógica se compone de varias relaciones, se evalúan
primero las expresiones aritméticas de las relaciones particulares. Esta
evaluación corresponde a la del comando COMPUTE. A continuación, se
determina el valor de verdad de cada una de las relaciones en función de los
operadores de comparación. Para determinar el valor de verdad de la
expresión lógica completa, SPSS Statistics evalúa "NOT", luego las
asociaciones "AND" de las relaciones y, por último, las asociaciones "OR".
Si se colocan paréntesis adecuadamente, se puede forzar una orden de
evaluación diferente, ya que se da prioridad a las expresiones entre
paréntesis.

Es muy importante saber siempre exactamente bajo qué condiciones una


expresión lógica es "verdadera". Las asignaciones de valores que dependen
de la evaluación de expresiones lógicas complejas, suelen dar lugar a
sorpresas desagradables en los siguientes análisis. Los resultados
incorrectos como consecuencia de condiciones lógicas "incontroladas"
pueden descubrirse sólo por ser inverosímiles en el contexto. A menudo,
esto sólo ocurre después de muchos pasos de evaluación, que se repiten con
el gasto correspondiente. Por lo tanto, las expresiones lógicas deben
estructurarse poniendo paréntesis para que el orden de edición sea claro. El
número de paréntesis no está limitado.

En el caso de evaluaciones de gran número de casos, los efectos de las


condiciones lógicas “unmanageable” o “inmanejables” deben “tested” o
“probarse” mediante pequeños ejemplos. Si es necesario, los valores de las
variables deben expresarse mediante un comando LIST para comprobar la
corrección de la condición formulada.

Ejemplo con Variables Ficticias


IF (a = 1 AND b = 1 OR c = 1) z = 1.
Toda la expresión lógica es verdadera si "a" y "b" son iguales a 1 o si "c" es
igual a 1 o ambos. Basta, por tanto, que "c" es igual a 1 para que "z" sea 1.

IF (a = 1 AND (b = 1 OR c = 1)) z = 1.
En este caso, se examina primero la expresión lógica del nivel de corchetes
interior. Esta puede ser verdadera o falsa. Sin embargo, debido a la relación
"AND" de la primera relación (a = 1) con la expresión parentética, la
expresión lógica completa sólo puede ser verdadera si "a" es igual a 1 y, al
mismo tiempo, la relación en el paréntesis interior es "verdadera".

A partir de los datos de nuestra muestra, queremos dividir a los encuestados


en mujeres mayores/menores de 40 años y hombres mayores/menores de 40
años. A continuación, queremos utilizar un comando FREQUENCIES para
ver la frecuencia con la que se producen las combinaciones (nuevo tipo de
variable).

Los comandos para esto son:

IF (v556 = 1 AND v554> = 40) Type = 1.


IF (v556 = 1 AND v554 <40) Type = 2.

IF (v556 = 2 AND v554> = 40) Type = 3.

IF (v556 = 2 AND v554 <40) Type = 4.

VALUE LABELS Type 1 'male from 40'

2 'male under 40'

3 'female from 40'

4 'female under 40'.

FREQUENCIES type o FRECUENCIAS Tipo.


El cálculo del menú se realiza de la misma manera que con el comando
COMPUTE a través de la ruta TRANSFORM �� VARIABLE
CALCULATION; aquí también aparece primero la ventana Cálculo de
Variables.

Con ayuda del botón If… se llega a la ventana calcular variable: si se


cumple la condición y puede formular aquí la condición lógica. Es
importante seleccionar la opción Incluir caso si se cumple la condición.
Extensión del comando IF - DO IF / END IF
El comando IF está limitado en el número de modificaciones posibles a las
modificaciones que se permiten en un comando COMPUTE. Las
estructuras de los comandos RECODE y COUNT no están disponibles.
Varios comandos IF con condiciones lógicas mutuamente excluyentes
requieren una comprobación de la condición lógica para cada IF en cada
caso, aunque en un caso, se puede saber después del primer IF que no
cumple las otras condiciones lógicas. Este procedimiento requiere mucho
tiempo. Una extensión del comando IF, el comando DO IF, no tiene las
propiedades desfavorables descritas y esto también permite estructuras de
condiciones complejas:

DO IF (logical condition).

Modificación de Datos.

[ELSE IF (logical condition).]

Modificación de Datos.

[ELSE IF (logical condition).]


...

[ELSE.]

Data modification.
END IF.

Esta secuencia de condiciones lógicas y modificaciones de datos siempre


comienzan con un DO IF y siempre termina con un END IF. Los comandos
ELSE IF pueden aparecer tantas veces como sea necesario. El comando
ELSE, sin embargo, sólo se permite una vez y está detrás de todos los
comandos ELSE IF. ¿Cómo se procesan estos comandos?
Si la expresión lógica del comando DO IF es verdadera, las modificaciones
que siguen inmediatamente al DO IF se procesan hasta el siguiente ELSE
IF o ELSE. Si no hay comandos ELSE IF ni ELSE, se ejecutan todas las
modificaciones entre DO IF y END IF. Después, el primer comando
procede al END IF.

Si la expresión lógica en DO IF es incorrecta, el programa salta al primer


ELSE IF y evalúa allí la expresión lógica. Si es verdadera, las
modificaciones que siguen a este ELSE IF se ejecutan hasta el siguiente
comando ELSE IF o ELSE. Después, el primer comando procede al END
IF.

Si las condiciones del DO IF y del primer ELSE IF son incorrectas, se


evaluará el siguiente ELSE IF. Si ninguna de las condiciones de un
comando ELSE IF es verdadera, se ejecutan las modificaciones entre ELSE
y END IF. Entonces se deja la estructura.

Si no hay ELSE y el DO IF y todas las condiciones del ELSE IF son falsas,


no se realiza ninguna acción.
Si alguna expresión lógica proporciona un valor faltante en la evaluación, la
estructura para el caso en cuestión se abandona inmediatamente y ya no se
comprueba.

En el caso más sencillo, la estructura DO IF / END IF consta de comandos


de modificación únicamente, que están encerrados por DO IF y END IF.
Un ejemplo de registro de ejercicio podría ser el siguiente:

DO IF (v556 = 1).
RECODE v563 (1,2 = 0) (3,4 = 1) (ELSE = 9).

COMPUTE v707 = v707 + v707 * 0.05.

COUNT on = v9 v11 (1,2).

END IF.

Las modificaciones entre DO IF y END IF sólo se ejecutan si la variable


"v556" (género) tiene el valor 1. Si el valor de la variable "v556" no es
igual a 1 para un caso o asume un valor faltante, no se realiza ninguna
acción. "v563", "v707" y "uno" no se modifican.

DO IF (v556 = 1).

COMPUTE y = 1.

ELSE.
COMPUTE y = 2

END IF.

Siempre y cuando la variable "v556" tenga el valor 1, "y" también se pone a


1. Para todos los demás casos, "y" recibe el valor 2. Sin embargo, si "v556"
asume un valor faltante no se realizará ninguna acción y no se modificará
"y".

DO IF (v556 = 1).

COMPUTE y = 1.

ELSE IF (v556 = 2).

COMPUTE y = 2.
ELSE.

COMPUTE y = 9.
END IF

Para los casos en los que "v556" es 1, a "y" se le asigna un 1. Para los casos
en los que la variable "v556" toma el valor de 2, a "y" se le asigna un 2. En
todos los demás casos, a "y" se le asigna un 9 como expresión. Si "v556"
toma un valor faltante, "y" no cambia.

Observaciones: Las estructuras DO IF - END IF pueden anidarse


arbitrariamente, Un límite más teórico es el espacio de memoria principal
disponible de la computadora que lo ejecuta.

DO IF (x = 1).
DO IF (v556 = 1).

COMPUTE y = 1.

ELSE IF(v556 = 2).

COMPUTE y = 2.
END IF.

ELSE IF (x <> 1).

COMPUTE y = 3.

END IF.
Si una expresión lógica es verdadera para un caso, la estructura DO IF-END
IF se abandona siempre en cuanto se realizan las modificaciones
correspondientes, incluso si una expresión lógica siguiente es también
verdadera para el caso en cuestión

DO IF (x = 1).
COMPUTE y = 1.

ELSE IF (x <= 10).


COMPUTE y = 2.

END IF.

Si el valor de "x" es igual a 1 en un caso, "y" se pone a 1 y entonces


continúa el primer comando después del comando END. El caso ya no se
comprueba respecto a "y", aunque también cumple la condición de ELSE
IF.

Además de los comandos de modificación "puros" (RECODE, COMPUTE,


COUNT), se permiten otros comandos (comandos de transformación) en
una estructura DO IF - END IF. Los detalles y las particularidades de la
utilización de estos comandos se encuentran en el manual.
Al final del comando DO IF, sigue un ejemplo completo con nuestros datos.
En el caso de los empleados con ingresos netos mensuales ("v707")
inferiores a 2.500, que estén casados y vivan con su pareja, los ingresos
deben incrementarse en un 5%. Para ello, se calcula primero el importe del
aumento ("amninc") y luego se añade este aumento a los ingresos netos
mensuales originales.

Así se obtiene el nuevo ingreso "incnew". Los resultados de un comando


DESCRIPTIVES muestra posteriormente que sólo 1002 personas se ven
afectadas por el aumento de los ingresos. Para el resto de casos, al no
cumplir la condición lógica ("v707 <2500 AND v737 = 1"), no se
ejecutaron los comandos COMPUTE.

DO IF (v707 < 2500 AND v737 = 1).

COMPUTE amninc = v707*5/100.


COMPUTE incnew = v707 + amninc.
END IF.

VARIABLE LABELS newinc 'new income' / amninc 'income increase'.


DESCRIPTIVES newinc amninc / STATISTICS = MEAN.
Hay que señalar en este punto que es extremadamente engorroso generar las
secuencias de condiciones lógicas representadas mediante menús que
utilizan DO IF, ELSE IF y END IF. Por esta razón, no se discutirá más aquí.
Guardar los resultados de las modificaciones (SAVE)
Como se ha dicho anteriormente, las modificaciones sólo afectan a los datos
del editor de datos. En cuanto SPSS Statistics encuentra un comando de
procedimiento, se ejecutan todos los comandos de modificación anteriores a
este procedimiento (y posteriores al procedimiento anterior), modificando
así el editor de datos en consecuencia.
Todos los resultados de la modificación pueden guardarse en un archivo del
sistema de SPSS Statistics (sufijo ".sav"). Hay dos formas de hacerlo:

Para eso, se selecciona a través del control de menú FILE �� SAVE or


FILE �� SAVE AS... cuando el editor de datos está activo.

El comando SAVE o GUARDAR cumple el mismo propósito:

SAVE OUTFILE='datei'
[/KEEP=varlist] [/DROP=varlist]

[/RENAME=(old varlist=new varlist)...].

OUTFILE = 'file' o 'archivo' especifica el nombre del archivo que debe


contener el archivo del sistema (para información sobre cómo especificar el
nombre del archivo, ver la página 31). Este subcomando debe estar
presente.
KEEP = varlist es una lista de nombres de variables y especifica qué
variables deben ser adoptadas (específicamente) en el archivo del sistema.
Todas las demás variables no se guardan. Las variables heredadas tienen el
orden en que se enumeran a KEEP en el archivo del sistema. El valor por
defecto para KEEP es ALL, lo que significa que todas las variables deben
ser guardadas.

DROP = varlist especifica qué variables no deben ser transferidas al


archivo del sistema. Con DROP, las variables restantes en el archivo del
sistema reciben el orden que tienen en el "archivo del sistema activo".

Con KEEP y DROP, también se pueden utilizar listas de variables con la


ayuda de la especificación TO se forman, como vara TO varz.

RENAME = (altvarlist = neuvarlist) se utiliza para renombrar las


variables al guárdalas en el archivo del sistema. "altvarlist" y "newvarlist"
son listas de variables. "altvarlist" contiene sólo nombres de variables del
"active system file" o "archivo del sistema activo". Los nombres de las
variables en "altvarlist" son renombrados (sucesivamente) a los nombres de
las variables en "newvarlist". La primera variable del lado izquierdo del
signo de igualdad recibe el primer nombre de variable de la derecha. La
segunda variable del lado izquierdo recibe el segundo nombre del lado
derecho y, así sucesivamente. En el archivo del sistema, las variables se
almacenan entonces con los nombres de "newvarlist". El número de
variables debe ser idéntico en ambas listas de variables. Para construir listas
de variables, se permite la palabra clave TO tanto en "altvarlist" como en
"newvarlist".

Dado que el comando SAVE guarda el "contents" o "contenido" del editor


de datos como un archivo del sistema después de que se hayan resuelto
todas las modificaciones abiertas, el archivo del sistema así creado contiene
todas las modificaciones realizadas en el SAVE y, por tanto, también todas
las variables generadas por los comandos de modificación y sus
ETIQUETAS DE VARIABLES y VALORES. Para evitar pérdidas de datos
no deseadas, el nombre del nuevo archivo del sistema no debe ser el mismo
que el de un archivo del sistema ya leído en lo mismo que el de un archivo
de evaluación.

Queremos guardar toda una serie de variables, que se formaron en nuestros


ejemplos de práctica, junto con todas las demás variables (de forma
permanente) en un nuevo archivo del sistema. Para eso, se enumeran todos
los comandos de modificación necesarios para la formación de las variables
y, tras ellos, se especifica un comando SAVE OUTFILE. Un ejemplo con
variables ficticias:
COMPUTE year of birth = 2010 - v554.

SAVE OUTFILE = 'analysismod.sav'.

Para guardar los datos con ayuda del menú se realiza a través de la ruta
FILE �� SAVE, que guarda el registro de datos activos directamente o a
través de SAVE FILE �� SAVE AS... La ventana Guardar datos aparece
como con la posibilidad de introducir un (nuevo) nombre de archivo - ben.

Con la ayuda del botón Variables... se llega a la ventana Guardar datos


como variables y aquí se tiene la posibilidad de seleccionar las variables
que deben ser transferidas al archivo del sistema a guardar. Las variables
correspondientes se marcan con una marca de verificación, por lo que, por
defecto, se seleccionan todas las variables. Las variables heredadas tienen el
orden en que aparecen en la lista de selección en el archivo del sistema.
Capítulo Siete
Selección de Datos

Ahora que las variables han sido el centro de atención, pasemos a los casos.
En el curso de un proyecto de investigación experimental, a menudo es
necesario analizar sólo cantidades parciales de los objetos de examen
(casos). Los comandos de selección de datos FILTER y SELECT IF son
útiles para eso. Permiten seleccionar los casos según determinados criterios.

La selección (selection) de casos se basa en una condición lógica. Una


selección aleatoria de casos no será considerada aquí. Además, a menudo se
requiere ordenar los casos (SORT CASES), dividir los archivos (SPLIT
FILE) y ponderar los casos de manera diferente (WEIGHT BY).

Filtro
FILTER ordena los casos usando una variable lógica (variable de filtro).
Una variable lógica sólo tiene los valores 0, 1, o "sistema-faltante".

FILTER [BY variable] [OFF].

Variable/variable lógica (con los valores 1, 0 valor faltante por el sistema) =


variable de filtro.

Si la variable de filtro toma el valor 1 en un caso, éste se incluirá en los


siguientes análisis. En caso contrario, no se incluirá en el análisis (si el
valor es 0 o valor faltante por el sistema). FILTER sólo afecta a los
procedimientos. Las modificaciones también se realizan con un filtro para
el conjunto de datos. FILTER no cambia el número de casos en el conjunto
de datos. El filtro sólo identifica los casos que están disponibles para
análisis. Si no se desea esto, un comando SELECT IF sería apropiado en su
lugar (ver página 69 y siguientes).
FILTER actúa hasta que el comando FILTER OFF borra el filtro. Entonces
todos los casos están disponibles de nuevo.

Correspondencia del menú:

DATA �� CHOOSE CASES ...

En el cuadro de diálogo Seleccionar casos, la configuración por defecto ◉


Todos los casos deben ser desactivados. Para eso, haz clic en el botón ◉ Si
la condición es verdadera. En la Salida, se activa el botón ◉ Filtrar los
casos no marcados. A continuación, se hace clic en el botón If…

Las variables se seleccionan de la lista de variables y se transfieren al


campo del editor con el botón () Haciendo clic en los dígitos de la
calculadora se transfieren al campo del editor. Haciendo doble clic, se
puede copiar cualquier función de la lista de funciones al campo del editor.

Un ejemplo, con un filtro para las mujeres del registro del ejercicio, podría
ser el siguiente:
RECODE v556 (2=1) (1=0) INTO v556filter.

FILTER BY v556filter.

DESCRIPTIVES v707

/ STATISTICS = MIN MAX MEAN.

COMPUTE nme1 = v707 + v707*0.1 .

FILTER OFF.

MEANS v707 nme1 BY v556.

Resultados DESCRIPTIVES:

El género se recodifica primero como una variable lógica del filtro


"v556filter" de tal manera que los encuestados que son relevantes para los
análisis posteriores reciben el valor 1 para las variables de filtro (en el
ejemplo las mujeres). Entonces, con el comando FILTER, los casos para los
que "v556filter" es 1 (encuestados femeninos) se utilizan para el análisis
posterior a partir del registro total. Para estos casos, el comando
DESCRIPTIVES requiere estadísticas sobre los ingresos netos mensuales
("v707"). Se puede ver que las mujeres encuestadas ganan una media de
1101,78. Un comando COMPUTE aumenta los ingresos mensuales en un
10%. Una comparación de medias (MEANS) de las variables "name" y
"nme1" revela que el aumento de los ingresos para todos los casos,
incluidos los hombres, se llevó a cabo.

Select If o Seleccionar If
El siguiente comando selecciona partes del registro. Las partes no
seleccionadas pueden perderse permanentemente al ser almacenadas.

El comando SELECT IF selecciona los casos según un criterio lógico:

SELECT IF (logical expression).


Expresión Lógica corresponde a las convenciones para una "expresión
lógica"

Ya utilizadas en el comando IF.

Para cada caso, se comprueba si la expresión lógica es "verdadera". Si es


así, el caso sigue estando disponible para el análisis. Por otro lado, los casos
en los que la expresión lógica es "falsa" o "faltante" se "clasifican" y ya no
se incluyen en los cálculos siguientes.

De nuestros datos de muestra, queremos seleccionar los casos femeninos y,


a continuación, sólo para estos casos, realizar un recuento de frecuencia de
la variable finalización de estudios ("v563"):

SELECT IF (v556 = 2).

VARIABLE LABEL v563 'Graduation of female respondents'.


FREQUENCIES VARIABLES = v563.

Correspondencia de Menú:
DATA �� CHOOSE CASES...

En el cuadro de diálogo Seleccionar casos, se debe desactivar la opción por


defecto ◉ Todos los casos. En la sección Salida, se activa el botón ◉
Eliminar los casos no seleccionados. Para continuar, haz clic en el botón
If..., éste se activa sólo después de haber hecho clic en el botón ◉ Si la
condición es verdadera. Se abre el siguiente cuadro de diálogo:

El cuadro de diálogo del botón: If...

El procedimiento es similar a la manipulación anterior. Las variables se


seleccionan de la lista de variables y se transfieren al campo del editor con
el botón (). Haciendo clic en los números o símbolos de la calculadora
también se transfieren al campo del editor.
Si varios comandos SELECT IF son consecutivos, tienen el mismo efecto
que si los enlaces AND enlazaran sus condiciones lógicas. Esto significa
que para que un caso "get through", tiene que pasar todos los comandos
SELECT IF consecutivos, cumpliendo así todas las condiciones lógicas.

Ejemplo:

SELECT IF (v556 = 2).

SELECT IF (v707 > 1000).


FREQUENCIES VARI,ABLES = v737

Si varios comandos SELECT IF son consecutivos, tiene el mismo efecto


que si sus condiciones lógicas estuvieran unidas por enlaces AND. Esto
significa que para un caso "get through", tiene que pasar todos los
comandos SELECT IF consecutivos, cumpliendo así todas las condiciones
lógicas.
Ejemplo:...

SELECT IF (v556 = 1).

FREQUENCIES VARIABLES = v737.

SELECT IF (v556 = 2).

FREQUENCIES VARIABLES = v737.

Sólo se seleccionan los casos que tienen el valor 2 (mujer) para la variable
"v556" (género) y un valor superior a 1000 para la variable "v707"
(ingresos netos mensuales).
Si hay comandos de procedimientos entre los comandos de selección, la
vinculación AND implícita de los comandos de selección sucesivos no
suele tenerse en cuenta.

Ejemplo:

TEMPORARY.

SELECT IF (v556 = 1).


FREQUENCIES VARIABLES = v737. TEMPORARY.

SELECT IF (v556 = 2).

FREQUENCIES VARIABLES = v737.

En este ejemplo, los comandos SELECT IF son temporales. Después del


primer comando FREQUENCIES, el primer comando SELECT IF se vuelve
ineficaz. El segundo comando SELECT IF, por lo tanto, logra el efecto
deseado. Después del segundo comando FREQUENCIES, todos los casos
están disponibles de nuevo.

Todas las selecciones que no están entre un procedimiento TEMPORARY y


otro siguiente son permanentes y se aplican a todo el resto de la ejecución
de la evaluación.

El ejemplo anterior con TEMPORARY y SELECT IF también podría


reproducirse con el comando FILTER.
La Clasificación de los Casos con SORT CASES
Para la presentación de los datos del análisis, a menudo es favorable
ordenar los objetos de examen de forma adecuada, es decir, ordenarlo según
criterios específicos. El siguiente comando es útil:

SORT CASES BY varlist [{(A)} {(D)}] [varlist ...]


El comando SORT CASES ordena los casos según los valores de las
variables de la "varlist" en orden ascendente

(A) o decreciente (D). Si no se especifica, el orden es ascendente.

La "varlist" puede contener variables numéricas y alfanuméricas


permanentes. En el caso de las variables alfanuméricas permanentes. En el
caso de las variables alfanuméricas, el orden depende del conjunto de
caracteres que utilice la calculadora.

Con el siguiente comando, ordenamos nuestros datos por ingresos netos


mensuales (v707):

SORT CASES BY v707.

Correspondencia de Menú:

DATA �� CASES SORT...


El Comando SPLIT FILE
El comando SPLIT FILE divide el registro en subgrupos, cada uno de los
cuales se analiza por separado.

SPLIT FILE {LAYERED} [BY variable] [OFF].


LAYERED indica que los grupos no deben compararse dentro de una tabla,
sino en tablas separadas. Por defecto (sin LAYERED) se comparan los
grupos en una tabla.

Variable es una variable cuyos valores se subdividen en subgrupos. Hay


que tener cuidado de que sean variables discretas y no continuas; de lo
contrario, podrían surgir subgrupos con un sólo caso.

OFF desactiva la opción SPLIT-FILE de nuevo. OFF es entonces la única


palabra clave.

SPSS Statistics comprueba si es un caso de la variable SPLIT tiene un valor


diferente al del caso anterior. Si es así, se forma un nuevo subgrupo. Por lo
tanto, el registro debe ordenarse por los valores de las variables. SPLIT
FILE para garantizar que se formen los subgrupos correctos. Los casos se
colocan en el orden correcto con el comando SORT CASES. El menú puede
generar automáticamente el orden.

SPLIT-FILE tiene efecto tan pronto como el comando ha sido ejecutado y


no como es habitual en el caso de modificaciones en el primer
procedimiento siguiente.

Cada comando que sigue al SPLIT-FILE se ejecuta por separado para los
diferentes subgrupos. Sin embargo, siempre afecta a todos los subgrupos.
Por lo tanto, las modificaciones de un comando SPLIT FILE siempre
funcionan en todos los casos.

Correspondencia al Menú:

DATA �� SPLIT FILE

El comando es:

SORT CASES BY v556. SPLIT FILE BY v556. DESCRIPTIVES


v707
/STATISTICS=MIN MAX MEAN. SPLIT FILE OFF.

DESCRIPTIVES v707

/STATISTICS=MIN MAX MEAN.

En primer lugar, los casos se clasifican por género. Luego, SPLIT FILE
divide el registro en los subgrupos "masculino" y "femenino". A
continuación, se ejecutan las estadísticas descriptivas, que se ejecutan por
separado por los subgrupos. Al convertirse en SPLIT FILE OFF se vuelven
a solicitar las mismas estadísticas, que ahora se entregan para el registro en
su totalidad.

El Comando WEIGHT: Ponderar los Casos


Cada caso se pondera con el valor 1 para las evaluaciones. Esto hace que un
caso se incluya en el análisis una vez con sus valores variables. Sin
embargo, en algunos casos se considera necesario incluir los portadores de
características con diferentes pesos en los cálculos. Esto se observa con
frecuencia cuando se supone que los objetos de una muestra no son
representativos de las expresiones de ciertos rasgos; es decir, que ciertos
valores de rasgos están infra-muestreados y otros sobre-representados.

Un ejemplo de eso es que, a partir del muestreo, se duplique el número de


hombres respecto al de mujeres, aunque ambos sexos estén igualmente
representados en la población. Aquí se podría considerar ponderar los casos
con las respuestas de los hombres con 0.75 y las de las mujeres con 1.50.
De este modo se mantiene el número de objetos igual al tamaño de la
muestra. Según esta ponderación, la distribución de frecuencias del sexo
muestra un 50% de mujeres y un 50% de hombres, igual que en la
población.

Sin embargo, la llamada representativa se produce siempre sólo para


determinadas distribuciones de características (comunes). Esto no garantiza
que el muestreo común de todas las características sea idéntico a su
distribución común en la población.22 para eso, deben conocerse todas las
características relevantes y sus combinaciones en la población. Los déficits
debidos a los valores faltantes tampoco pueden eliminarse con este método.
Muchos de los valores faltantes representan inevitablemente ciertas
características de forma excesiva o insuficiente.

WEIGHT {BY varname} {OFF}.

varname es una variable numérica existente para ser ponderada por. La


ponderación de un caso tiene lugar en función de su valor en la variable de
ponderación.

El comando WEIGHT no utiliza el comando TEMPORARY. Para


desactivar la ponderación, el comando "WEIGHT OFF". El comando debe
ser ejecutado.

En el Análisis 2010, se entrevistó a más personas de los nuevos estados


federales que su porcentaje de la población total. Esto debería permitir una
subdivisión significativa de la muestra del sub muestreo. Sin embargo en la
muestra global, los encuestados de los "nuevos" estados federales están
"sobre representados".

En la medida en que al menos una de las variables a analizar esté


relacionada con la afiliación Este-Oeste, los resultados de la estimación
calculados para todos los casos se verán afectados. Por lo tanto, el conjunto
de datos se pondera según un "Peso Personal Este-Oeste" o "East-West
Personal Weight" (v1564). La variable v1564 se codifica de forma que los
casos de los "antiguos" estados federales tengan el valor 1.1791 y los casos
de los "nuevos" estados federales el valor 0.5649.

Esto garantiza que diez encuestados de los antiguos estados federales se


contabilicen como doce respuestas (10 * 1.1791 = 11,791≈12). Como
resultado, la distribución de las variables del área de la encuesta (v5)
corresponde a la distribución real de la población entre los "antiguos" y
"nuevos" estados federales en el momento de la encuesta. Para comparar los
resultados ponderados y no ponderados, se crea una tabla cruzada con y sin
ponderación. La suma no ponderada de las ponderaciones es igual al
número de encuestados originales.

WEIGHT OFF. CROSSTABS v557 BY v5.

Crosstable Confession / Gender without weighting.

WEIGHT BY v1564. CROSSTABS v557 BY v5.

Crosstable denomination/gender weighted with v1564.

La ponderación restablece la proporción real de la población en los antiguos


y nuevos estados federales.

Correspondencia del Menú:

DATA �� CASES WEIGHED.


Capítulo Ocho
Gráficos en SPSS Statistics para Windows

Trabajar con Gráficos


Los procedimientos del menú gráfico en SPSS Statistics pueden utilizarse
para visualizar los datos de visualización en diferentes tipos de diagramas.
En el siguiente capítulo se describe el procedimiento para algunos tipos de
diagramas y se describe cómo se puede cambiar posteriormente su
apariencia.

Aquí se explica el comando de menú DIAGRAMS �� DIAGRAM


ADJUSTMENT... Sin embargo, los diagramas también pueden crearse
utilizando la secuencia DIAGRAMS �� OBSOLETE DIALOG FIELDS.
Esta ruta de creación de diagramas procede de versiones anteriores de SPSS
Statistics (SPSS) y se describe en los guiones correspondientes a eventos
anteriores.

En aras de la claridad, a continuación sólo se presenta el procedimiento a


través del menú, ya que los comandos de los gráficos son relativamente
"largos". Para cada uno de los gráficos disponibles en SPSS Statistics,
también es posible, por supuesto, ejecutarlos mediante la sintaxis
correspondiente.
Como ya se mencionó en el capítulo 5, en relación con la decisión de
trabajar con comandos o menús, también se puede mostrar el comando
correspondiente en una ventana de sintaxis, llenando o activando primero
todos los campos necesarios en el menú. En cuarto lugar, y luego haciendo
clic en "Pegar" en lugar de "Aceptar".

A continuación, el diagrama generado mediante el menú o el comando se


pone primero a disposición del visualizador. Tras hacer doble clic en el
diagrama, se abre el editor de diagramas con iconos y menús adicionales
para editar el gráfico. Un gráfico consta de varios objetos (ejes, barras,
texto, patrones de relleno, entre otros) que pueden editarse y modificarse.

Gráfico de Barras Simple


Para crear un gráfico de barras simple, el comando de menú DIAGRAMS
�� DIAGRAMMING… abre el cuadro de diálogo Constructor de
gráficos.

En esta ventana, primero puedes seleccionar el tipo de diagrama así como


las variables a utilizar. Para eso, haz clic con el ratón en el diagrama
deseado y arrástralo a la ventana de la vista previa del diagrama. Del mismo
modo, en la ventana con las variables, se hace clic sobre las deseadas y se
arrastran a los ejes en los que se van a graficar.

En nuestro ejemplo, el primer paso es crear un gráfico de barras para la


variable "estado civil".

Para eso, primero se dibuja el gráfico de barras simple desde la galería a la


vista previa del gráfico. A continuación, se selecciona la variable "NIVEL
FAMILIAR, PREGUNTADO <R>" de la lista de variables y se arrastra al
campo "¿Eje X?". De esta manera se pueden identificar las categorías de las
variables en el lado izquierdo.

Ahora que se ha definido el tipo de diagrama y las variables, se hace clic en


el botón "Aceptar". Aparece el siguiente resultado: Ahora, después de hacer
doble clic en el diagrama recién creado, SPSS Statistics ofrece varias
opciones en el editor de diagramas para modificar individualmente el
gráfico.

Los distintos objetos del gráfico, como los ejes, las barras y las superficies,
pueden editarse ahora. Por ejemplo, al hacer doble clic en el eje de escala
(eje Y) se abre la ventana Propiedades, que contiene varias pestañas en las
que es posible realizar los siguientes cambios en el diagrama.
Por ejemplo, la pestaña Tamaño del diagrama permite determinar el tamaño
del gráfico. Para cambiar los títulos de los ejes, se puede hacer
manualmente en el editor del diagrama, simplemente sobrescribiendo el
nombre anterior.

Histograma con la Curva de Distribución Normal


El histograma es adecuado para la representación gráfica de la distribución
de frecuencias de las variables métricas. En SPSS Statistics, se puede
insertar una curva de distribución normal en un histograma. También se
crea un histograma con el comando de menú DIAGRAMS �� DIA
GRAMMER SETTING... Sin embargo, en lugar de un gráfico de barras, se
selecciona un histograma de la galería y se arrastra a la vista previa del
gráfico.

En nuestro ejemplo, vemos la distribución de los ingresos netos mensuales.


En la ventana "Propiedades del elemento", que se abre al arrastrar el
diagrama a la vista previa del diagrama, puedes seleccionar "Mostrar curva
de distribución normal".

La curva de distribución normal muestra la densidad de la distribución


normal con la media y la varianza de la variable "ingreso mensual neto".
Después de seleccionar las variables, el tipo de diagrama y la distribución
normal, se abre la ventana de salida.
Al hacer doble clic en el diagrama en el visualizador, se abre el editor de
diagramas, en el que se puede dar la forma deseada a los ejes, las escalas,
las curvas, entre otras opciones.

Gráfico de Dispersión con Línea de Regresión


Los gráficos de dispersión simples representan puntos que representan los
objetos. A cada objeto se le asigna un par de valores. Un punto en el
diagrama representa cada par de valores. En nuestro registro de datos de
ejemplo, se registra información sobre los ingresos mensuales netos y sobre
la edad para cada objeto. Si existe una correlación entre la edad y los
ingresos netos mensuales, es de esperar que la nube de puntos adopte una
forma determinada.

El comando de menú DIAGRAMS �� DIAGRAM SETTING... abre la


ventana explicada anteriormente, desde la que se selecciona un diagrama de
dispersión / de puntos. Dado que en este caso hay que examinar un vínculo,
hay que seleccionar dos variables. En nuestro ejemplo, son la edad y los
ingresos netos de los encuestados.
El eje de abscisas está determinado por la variable "Encuestado de edad
<r>" ("v554") y el eje de ordenadas por la variable "Ingresos netos
mensuales" ("v707"). Para insertar una línea de regresión, el editor de
diagramas ofrece la opción de menú "Elementos", en la que se puede
seleccionar "Línea de ajuste para el valor total". A su vez, ésta puede
ajustarse en el editor de diagramas según los deseos personales.
Transferencia de Gráficos y Resultados de Análisis
A menudo, después de analizar los datos en SPSS Statistics, el problema es
trasladar los resultados generados del visualizador a otros programas. Para
editar los resultados de SPSS Statistics en otros programas, suele bastar con
un simple "copiar" y "pegar". Sin embargo, a menudo también puede ser
ventajoso guardar los resultados obtenidos como archivos independientes
con un formato de archivo particular.
Copiar del Visualizador a un Procesador de Textos
Si los resultados de los análisis (tablas) o los comandos del visualizador
deben transportarse a Microsoft® Word o a otro programa de
procesamiento de textos, pueden seleccionarse individualmente en la mitad
izquierda del visualizador. Para seleccionar varios, se puede pulsar la tecla
Shift para los objetos contiguos o la tecla Control para los objetos no
contiguos durante la selección. A continuación, se hace clic en el objeto
deseado con el ratón.
1. EDIT �� Selecciona COPY si desea transportar las tablas como
hojas de cálculo de Microsoft® Word.

2. Para Microsoft® Word, seleccione la función INSERT, según la


versión. La tabla está ahora como "Tabla de Microsoft® Word"
insertada.
Mediante EDIT �� COPY CONTENTS... se puede influir el formato del
objeto copiado.

Los gráficos se pueden copiar desde el editor de diagramas a través de


EDIT �� COPY DIAGRAM. Pero sólo se transportan como imagen en
Word. Como alternativa, se puede utilizar el mismo procedimiento que para
las tablas: Hacer clic en el gráfico en el visualizador, luego en EDIT ��
copiar, y luego pegarlo en un procesador de textos.

También es posible exportar los resultados directamente a otros formatos


(Microsoft® Word, PowerPoint®, Excel®, PDF, HTML, entre otros) (ver la
sección siguiente).

Conversión de Resultados en Archivos .htm / .jpg / .txt


Además, SPSS Statistics ofrece la posibilidad de exportar elementos del
visualizador de SPSS Statistics como archivos. En primer lugar, se marca el
objeto deseado con un clic del ratón. El botón derecho del ratón abre una
lista de selección desde la que se puede ir a la ventana de exportación
mediante el paso del menú EXPORT.

En esta ventana, en "Tipo:" se selecciona un determinado tipo de salida


(Excel, HTML, PowerPoint, Word,...).

El archivo generado puede ahora editarse como se desee.


Capítulo Nueve
Elaboración de la Matriz de Datos

Edición de las Propiedades de las Variables: Visualización de Variables

Nombre
En esta primera columna de la vista de variables se debe introducir el
nombre por el que se conocerá cada variable de la matriz de datos. En
general, se utilizan nombres cortos para identificar las variables o
elementos. Al nombrarlas, se debe tener cuidado de no comenzar con
números, ya que el programa no lo permite y emite un cuadro de diálogo en
el que menciona que "el primer carácter del nombre de la variable no es
válido".

Por otro lado, hay que tener en cuenta que no se deben dejar espacios entre
los caracteres, y si estos son necesarios, se recomienda utilizar guiones. En
versiones anteriores del programa, había un número límite de caracteres
para esta primera columna que iba de 8 a 11, pero esto ya no es un
problema.
Para nombrar la variable, basta con situarse en la celda correspondiente de
la primera columna y escribir el nombre con el que se identificará la
variable. Hay que tener en cuenta que es precisamente esto lo que se verá en
la parte superior de la columna en la vista o matriz de datos.

Si no se introduce el nombre de la variable, se crea automáticamente como


"var" y el número de la variable. Sin embargo, estos nombres no son
descriptivos y son mucho menos recomendables para archivos de datos
grandes.

Escribir
En la segunda columna de la misma pantalla de la variable, se debe definir
el tipo de elemento o variable al que corresponde. Por defecto, aparecerá
"Numérico". Sin embargo, se puede modificar pulsando el cuadro gris con
tres puntos suspensivos que aparece a la derecha de la celda al cambiar. Al
pulsar los puntos suspensivos aparecerá un cuadro de diálogo que permite
definir el tipo de información que se va a capturar y utilizar.

Los tipos de variables más utilizados son el numérico y el de cadena. La


primera se utiliza generalmente cuando las opciones de respuesta son
números, por ejemplo, la edad en años, pero también se utiliza cuando se
necesitan códigos numéricos que representen algo más, este sería el caso si
elegimos arbitrariamente el número "1" para identificar a las mujeres y "2"
para los hombres.

La cadena de tipo variable se utiliza cuando la respuesta será capturada


directamente en el texto y no por códigos, por ejemplo, la colonia donde
vive el encuestado, siempre y cuando no haya sido pre - codificada.

Además, el cuadro de diálogo permite modificar el ancho dado a la variable


o ítem en un número de caracteres. Hay que tener en cuenta que si se trata
de una variable encadenada, se sugiere ampliar esta opción para tener la
posibilidad de incluir la respuesta recogida a través del instrumento de
medida de forma completa.

Otro aspecto que se puede modificar en el mismo cuadro de diálogo es el de


los decimales que el programa debe considerar en las respuestas que serán
capturadas posteriormente. Sin embargo, los decimales sólo se consideran si
se aplican a la variable (por ejemplo, altura -en metros y centímetros, 1,70,
1,78, 1,85, etc.-, ingresos -en pesos y centavos-). En caso contrario (si no se
requieren decimales), se recomienda dejarlo en cero, es decir, si la respuesta
será un código ("1", "2", "3", etc.).

Ancho
Esta columna tiene la misma función que la opción de ancho en el cuadro
de diálogo donde se selecciona el tipo de variable. Como ya se ha
comentado, por defecto el programa establece el tipo de información como
numérica y, en muchas ocasiones, no es necesario cambiarlo por lo que en
el ancho de columna de la vista de datos también se puede indicar el
número máximo de caracteres que permitirá el programa, que está
predefinido en 8. En este caso, el SPSS aceptaría números como 000000el
01 (8 caracteres) o el nombre de una colonia como "La Cruz" (7 caracteres
contando el espacio).

Si se requiere un ancho diferente, se puede modificar posicionándose a la


derecha en la celda correspondiente, donde aparecerán un par de flechas
(una hacia arriba y otra hacia abajo), que permiten aumentar o disminuir el
número de caracteres. También se puede escribir directamente sobre la
celda y definir esta información.

Decimales
Al igual que en la columna anterior, tiene la misma función que la opción
de decimales en el cuadro de diálogo en el que se selecciona el tipo de
variable, pero por la misma razón explicada en el atributo anterior (ancho),
se ofrece la opción de modificar esta información directamente en la vista
de las variables. Por defecto, el programa considera dos decimales. Sin
embargo, esto se puede modificar de la misma manera que la opción de
ancho.

Etiqueta
Como se menciona en el tutorial de SPSS, además de especificar los tipos
de datos, el programa ofrece la posibilidad de definir etiquetas para las
variables, que se utilizan y muestran en los gráficos e informes estadísticos.
La etiqueta podría ser la misma pregunta o ítem si el instrumento de
recolección fuera un cuestionario, aunque también se puede utilizar una
definición de lo que representa la variable.
Para escribir o nombrar la etiqueta de la variable, basta con posicionarse en
la celda correspondiente y escribir el título o la etiqueta requerida para esa
variable, por ejemplo "Edad" o "Por favor, ¿podrías indicar tu edad?"

Es muy importante cuidar que al escribir la etiqueta no se cometan errores


ortográficos porque aunque, como veremos más adelante, se pueden hacer
ediciones de las etiquetas, esto llevaría algún tiempo, incluso eso se podría
evitar.
El SPSS siempre se ha caracterizado por estar en constante evolución y para
evitar estos errores ortográficos ha incluido un corrector ortográfico similar
al de cualquier programa de tratamiento de textos, que es bastante útil.

Valores
La siguiente columna de la vista de variables corresponde al atributo de la
variable conocido como valores o también como etiquetas de valor. Este
espacio proporciona el método que permite relacionar ciertos valores
definidos por la persona que realiza el análisis con una etiqueta de texto. En
otras palabras, aquí se introducen los valores que se asignarán a las
categorías del elemento o variable considerada (codificación).
Para realizar esta acción, haz clic en los tres puntos suspensivos que
aparecen a la derecha de la celda correspondiente y donde se editarán los
values1. Al hacerlo, se abrirá automáticamente un cuadro de diálogo en el
que se definirán los valores que corresponden a cada categoría.

Para eso, se debe establecer un número en la casilla correspondiente a


Value2, que tendrá el significado definido por el investigador y que debe
establecerse en el espacio correspondiente a Label3. A continuación, haz
clic en el botón Add4. Con esta acción, el valor y su significado se
trasladarán a una nueva casilla, que agrupará cada valor establecido y su
correspondiente meaning5.
Estos pasos deben repetirse tantas veces como categorías u opciones de
valor y significado tenga la pregunta, ítem o variable. Finalmente, tras
haber definido todos los valores de las categorías, se debe pulsar el OK
button6 para que el programa guarde la información vertida. Si no se realiza
este paso, el SPSS no respetará los cambios realizados en el cuadro de
etiquetas de valores.

Los valores significan un rango de edad preestablecido, que comúnmente se


define antes de aplicar el instrumento de recolección utilizado. Al igual que
con las etiquetas que llevarán las variables, es muy importante tener
cuidado de no cometer errores ortográficos o "spellingerror" en las etiquetas
de valores porque si esto sucede, las tablas y gráficos de resultados tendrán
los mismos errores. Para tratar de evitar esto al máximo, desde la versión 17
del SPSS se incluyó en el cuadro de diálogo de etiquetas de valores, una
opción que permite revisar los nombres que damos a cada opción de
respuesta de forma ortográfica.

Faltantes (valores)
Al aplicar un instrumento de medición (por ejemplo, un cuestionario en una
encuesta), con frecuencia se presentan valores faltantes o no válidos, lo que
puede deberse a que los participantes no respondan a determinadas
preguntas por desconocimiento o las respondan de forma errónea. En estos
casos, si no se filtra la información obtenida, el análisis de los datos podría
conducir a resultados inexactos o confusos.

Los datos numéricos erróneos, los campos de datos vacíos o los campos con
entradas no válidas son convertidos por el programa en lo que el sistema
denomina valores faltantes y se identifican en las celdas de la vista de datos
como puntos. Para identificar la razón por la que se perdieron esos datos, el
programa incluye la opción "faltante", que ayuda a diferenciar la razón
específica en el análisis de los datos (por ejemplo, separa los datos faltantes
porque los encuestados se negaron a responder a la pregunta de los que no
lo hicieron porque no les correspondía).
Para definir los datos que el sistema no debe considerar para el análisis, haz
clic en la celda correspondiente a la columna "Lost"1 , donde aparecerá de
nuevo un cuadro gris con puntos suspensivos a la rigth2 , en el que deberás
hacer clic para abrir el cuadro de diálogo missing values o valores faltantes.
En él se definen aquellos valores que el programa debe identificar como no
válidos y excluirlos de los análisis.

Hay dos opciones: la primera es seleccionar valores faltantes discretos, para


lo cual el cuadro ofrece hasta tres posibilidades (muestra tres espacios),* y
la segunda es estipular un rango de valores faltantes (de menor a mayor)
más un valor faltante discreto adicional. Para guardar los cambios
realizados en el cuadro de diálogo, no olvides pulsar "OK" antes de
cerrarlo.

Supongamos que queremos identificar cuando en el P_1 (Edad) las


personas encuestadas no contestaron, para eso seguiríamos los pasos
descritos anteriormente y seleccionaríamos la opción Discrete Lost Values o
Valores Faltantes Discretos, luego en una de las casillas debajo de esta
opción* pondríamos el código numérico que tendría este significado para
nosotros, por ejemplo, 99. Posteriormente pulsamos el botón Aceptar.

Después de añadir este valor de datos faltantes, podríamos aplicar una


etiqueta a este valor. Seleccionamos la casilla Values1 de la fila
correspondiente a P_1, y a continuación pulsamos sobre el cuadro gris con
puntos suspensivos que aparece a la derecha de la casilla para abrir el
cuadro de diálogo Value Labels o Etiquetas de valores. Ya en el cuadro,
escribiremos 99 en el campo de Valor y no responderemos en el espacio de
Label. No olvides pulsar Añadir para agregar esta etiqueta a la base de
datos y finalmente pulsa Aceptar para guardar los cambios.

Columnas
El atributo que sigue es el que se refiere a las Columnas, en esta opción se
define el ancho que tendrá la columna correspondiente a esa pregunta o
ítem en la matriz o vista de los datos. El valor por defecto de este atributo es
ocho. Sin embargo, puede ser modificado de la misma manera que los
atributos Ancho o Decimal.

Alineación
Esta propiedad se refiere a la alineación que mantendrá el contenido o los
valores en las celdas de la matriz o vista de datos. Por defecto, los números
se alinean a la derecha y el texto a la izquierda, lo que puede modificarse
haciendo clic en la casilla Alineación y seleccionando entre la opción
izquierda, derecha o centro.

Medida
Este atributo se edita introduciendo las variables o elementos que serán
analizados con la ayuda del programa. La medida depende del nivel de
medición de la variable. El programa sólo considera tres tipos:

Nominal. Como su nombre indica, es apropiado para las variables


nominales (que representan un concepto y que sólo indican una
diferencia entre categorías, por ejemplo, la carrera, la colonia donde
vive, la nacionalidad, la religión, etc.).

Ordinal. También, como es obvio, para variables ordinales


(conceptos que además de indicar la diferencia, revelan un orden o
jerarquía, por ejemplo, la jerarquía en la organización).
Escala. Se utiliza para variables de intervalos o de razón (cuyas
categorías se codifican con un número de valor aritmético, por
ejemplo: la edad en años, los minutos de traslado de un lugar a otro,
los ingresos mensuales, las veces que se va al cine al mes, las
escalas para calificar un objeto de actitud -1 a 10 o Likert asumidas
por intervalos).

Para modificar el tipo de medida, basta con pulsar la casilla correspondiente


a la Medida y seleccionar el tipo más adecuado para la variable.
Role o Función
Esta opción es relativamente nueva, ya que SPSS la incorporó tras su
adquisición por parte de IBM. El tutorial (IBM SPSS Statistics, 2014) la
define como "la pestaña Campos" y explica que en ella se especifican los
campos a comprobar y el campo que se utilizará para definir los grupos. Sus
opciones o roles según el mismo tutorial, son:

Entrada: es la variable que se utilizará como entrada, por ejemplo,


predictor o variable independiente.

Destino: Es la variable que servirá de salida o destino, por ejemplo,


la variable dependiente.

Ambos: Tendrá las dos funciones explicadas anteriormente.

Ninguna: No tienen asignada ninguna función.

Partición: " La variable se utilizará para dividir los datos en


diferentes muestras para la formación, la prueba y la validación".

Segmentar o dividir: Esta opción busca ser un elemento de


compatibilidad con IBM SPSS Modeler y no sirve como la variable
de segmentación anterior.

Llenar los Datos en la Matriz: Vista de los Datos


El SPSS ofrece la posibilidad de vaciar los datos obtenidos en la etapa de
recolección de tres maneras: directamente en el SPSS, copiando la(s)
base(s) de datos de Excel, o importando las hojas completas del mismo
programa de Microsoft.

Capturas de Datos Directamente desde el SPSS


Para capturar directamente los datos obtenidos durante la fase de
recolección, basta con llenar las casillas con los códigos asignados a las
opciones de respuesta, para cada variable o ítem y para cada caso.
Aunque el SPSS permite el uso de texto, es mejor utilizar códigos
numéricos para aprovechar al máximo el programa, incluso en las preguntas
con un nivel de medición nominal. La vista de los datos del PASW (después
de haber capturado las respuestas aportadas por los encuestados).

Copiar desde una Hoja de Datos de Excel


Una opción bastante útil, especialmente cuando varias personas participan
en la investigación como entrevistadores - codificadores y sólo hay una
licencia de SPSS. Cada uno de ellos vacía los datos codificados en una
matriz elaborada en el programa Excel. Esta matriz debe ser idéntica a la
generada en el SPSS y seguir la misma lógica de la vista de datos de este
programa (las columnas son las variables o ítems del instrumento de
recolección y las filas son los casos u observaciones obtenidas).

Para llevar los datos vaciados en la matriz de Excel al SPSS, seleccionamos


las celdas que nos interesan de la matriz de Excel1 ordenando al programa
que las copie.

Una vez copiadas las celdas de Excel, será necesario pegarlas en la vista de
datos del SPSS cuidando que al hacerlo, las celdas copiadas correspondan
con las celdas donde se están pegando (recuerda que la matriz de Excel
debe ser idéntica a la matriz del SPSS). Para eso, se sugiere posicionarse en
la primera celda del primer case1 y allí instruir para pegar.

Importar Datos desde Excel


Aunque con la opción anterior era posible copiar los datos numéricos de
una matriz de Excel y luego pegarlos en el equivalente de SPSS, también
existe la posibilidad de importar los registros con todo y los nombres de las
variables. Para eso, abre el SPSS en la Vista de Datos, haz clic en la opción
Archivo situada en la barra superior de la pantalla, a la izquierda, donde se
abrirá un menú, selecciona Abrir y haz clic en Datos.
Al hacer esto se abrirá un cuadro de diálogo con el título Abrir datos, luego
debemos seleccionar la carpeta donde se encuentra la matriz, no sin antes
cambiar la opción Tipo de archivo a Excel (*.xls, *.xlsx, *.xlsm)1,
seleccionar la database2 y pulsar Open3.

Tras esto se abrirá un nuevo cuadro de diálogo con el título Abrir fuente de
datos de Excel, debemos asegurarnos de que la opción Leer nombre de
variable de la primera fila de data y pulsar OK2, esto abrirá la matriz de
datos en el SPSS incluyendo los títulos de las variables. No olvides que
después de esto, deberás editar las propiedades de las variables en la Vista
de variables.
Capítulo Diez
Análisis Estadístico

Todo lo explicado anteriormente sobre el SPSS no sería relevante si no


fuera porque proporciona la base para realizar análisis estadísticos con uno
de los programas más desarrollados para el estudio de las ciencias sociales,
administrativas, económicas, de la salud y de la mayoría de las disciplinas.
Estadística Descriptiva
Como ya se ha mencionado en el libro, la primera tarea después de tener los
datos recopilados para la investigación es describirlos en cada una de las
variables del estudio, y hacerlo a través del SPSS es bastante sencillo.

Para comenzar, debemos abrir la matriz o vista de los datos que serán
analizados con la ayuda del programa, sin olvidar que debe tener los valores
recopilados y que previamente, las variables1 tuvieron que ser editadas en
la vista de variables. En la parte superior de cualquiera de las dos vistas del
SPSS, se puede ver la barra de herramientas en la que se incluye el botón
Analizar,2 al pulsar sobre él se despliegan una serie de opciones entre las
que se encuentra la denominada estadística descriptiva3, al seleccionarla se
abrirán más opciones y se pulsará sobre Frecuencias4.

Al pulsar el botón Frecuencias se abrirá un cuadro de diálogo con el mismo


nombre, donde encontraremos dos casillas, la primera contiene las variables
de estudio1, mientras que la segunda está en blanco2.

Para indicar al programa las variables a analizar, debemos seleccionarlas de


entre las que se encuentran en el cuadro de la izquierda,1 y a continuación
pulsar la flecha azul situada en el centro de los cuadros,2 lo que provocará
el cambio de lugar de las variables de un cajón a otro3.

Tras esto, pulsamos el botón de estadística descriptiva para abrir un nuevo


cuadro de diálogo llamado Frecuencias, desde el que seleccionaremos las
medidas de tendencia central o de dispersión, los valores de distribución y/o
percentiles según nos interese, y finalmente, pulsamos en Continuar.

Después de indicar al programa los estadísticos que requerimos (media,


mediana, moda y desviación estándar elegidas), debemos pulsar el botón
Gráficos del cuadro de diálogo Frecuencias, lo que hará que aparezca otro
cuadro llamado Frecuencias: Gráficos, en el que debemos elegir el tipo de
gráfico que requerimos para presentar las distribuciones de las variables,1
así como la clase de valores a los que se referirán los gráficos (frecuencias o
porcentajes),2 sin olvidar pulsar el botón Continuar3.

A continuación, pulsa el botón Formato del cuadro de diálogo Frecuencias


para abrir un nuevo cuadro denominado Frecuencias: Formato, que nos
permitirá seleccionar los criterios para ordenar los valores de las categorías
de las múltiples variables de la investigación (tanto ítems o variables de la
matriz como variables compuestas por varios ítems), no debemos olvidar
como siempre pulsar Continuar.

Para finalizar, debemos pulsar Aceptar en el cuadro de diálogo Frecuencias,


no sin antes verificar que la opción Mostrar tablas de frecuencias. Al
finalizar esta serie de pasos, se abrirá la Vista de Resultados, que mostrará
primero los estadísticos solicitados, luego las tablas de frecuencias de cada
variable analizada y, por último, los gráficos de barras de cada variable del
estudio.

Estadísticas
El SPSS presenta la información estadística en forma de tabla. En la
primera columna de ésta (de izquierda a derecha) se incluyen las etiquetas
de los datos válidos, los faltantes y, posteriormente, los nombres de los
estadísticos solicitados (por ejemplo, media, mediana y moda). Los
encabezados del resto de las columnas serán las etiquetas de las variables
analizadas, mientras que los valores obtenidos mediante el análisis se
encontrarán en el cruce de las etiquetas de la primera columna con la
variable correspondiente.

Tabla de Frecuencias
Las tablas de frecuencias que se muestran en la Vista de Resultados tienen
siempre la siguiente información (ver figura 34)9:

● Válidos (datos)1. Indica las opciones o categorías de respuesta que se


consideraron y para las que se encontraron registros para el análisis de esa
variable (en el ejemplo, es el género).

Frecuencia2. Es el número de veces que apareció una determinada


categoría o respuesta (en el ejemplo las categorías femenina y
masculina).

Porcentaje3. Es el porcentaje que representa del total de la muestra


sobre la que se recopilaron los datos, cada una de las posibles
respuestas o categorías.

Porcentaje4 válido. Representa el porcentaje de registros que


realmente fueron considerados en cada categoría o respuesta para
realizar los análisis, eliminando los valores faltantes.

Porcentaje5 Acumulado. Su nombre describe la función que


realiza, que es acumular los porcentajes de las posibles respuestas al
cien por ciento.

El SPSS mostrará una tabla para cada variable de investigación


seleccionada para el análisis, recordando que a veces son ítems que
corresponden a una sola columna y, otras veces, son variables compuestas
por varios ítems o columnas.
Gráfico de Barras
Siguiendo con el ejemplo, para cada tabla aparecerá su correspondiente
gráfico (en este caso, con respecto al género) y como se puede ver en la
figura 35, muestra las características que indicamos al programa en el
momento de dar las instrucciones para el análisis: el título del gráfico, 1 el
porcentaje en el eje de la "y",2 la variable analizada en el de la "x"3, y los
valores obtenidos representados por las barras.

Estilo y Bootstrap
SPSS versión 22 y posteriores incluyen dos nuevas opciones en el análisis
descriptivo. El botón de estilo se utiliza para especificar las condiciones
para cambiar automáticamente las propiedades de la tabla dinámica en
función de condiciones específicas. Por ejemplo, puede convertir en negrita
todos los valores de significación inferiores a .05.

Por otro lado, el comando Bootstrap se utiliza para hacer uso del
Bootstrapping, que es un método excelente para derivar estimaciones
sólidas de intervalos de confianza y errores estándar en estimaciones como
la media, la mediana, la moda, las proporciones, la correlación, las
relaciones de probabilidad o los coeficientes de regresión, e incluso para
construir las pruebas de hipótesis.
Cálculo de la Confiabilidad
Otro ejemplo de las muchas ventajas que ofrece SPSS es la posibilidad de
calcular la fiabilidad de un instrumento, que, como se comenta en el libro,
se determina mediante diversas técnicas o métodos. El programa ofrece
diferentes coeficientes para realizar el cálculo. Sin embargo, la elección de
los mismos dependerá de nuevo del nivel de mediación utilizado en el
instrumento de recolección de datos.

En la barra de herramientas ubicada en la parte superior de la pantalla, se


puede ubicar el botón Analizar1 y dentro de las opciones que se despliegan
se incluye la Escala,2 ésta, a su vez, ofrece dos alternativas de las cuales
elegiremos Análisis de Confiabilidad3
Al presionar Análisis de Confiabilidad, aparecerá un nuevo cuadro de
diálogo con el mismo nombre. Dentro de este cuadro, a la izquierda, se
encuentra un recuadro que contiene las variables del instrumento 1 de las
cuales deberás seleccionar las que deseas analizar (que conforman la escala)
y trasladarlas al recuadro de la derecha 2 mediante la flecha azul, 3 que nos
debe resultar familiar. A continuación, habrá que seleccionar el Modelo,
que se utilizará para el cálculo4 y, por último escribir la Etiqueta de escala5,
sin olvidar pulsar el botón OK6. Dentro de la tabla, existe también la opción
Estadística, 7 que permite solicitarlas sobre la escala analizada.

Correlación
Como se explica en el capítulo 10 del texto impreso "Análisis de datos
cuantitativos", la correlación se utiliza para analizar la relación entre las
variables. Esta prueba también se puede realizar con el SPSS siguiendo los
pasos que se describen a continuación.

Para empezar, debemos pulsar el botón Analizar, que ya hemos utilizado en


ocasiones anteriores; al hacerlo, se volverán a desplegar varias opciones,
entre las que haremos clic en Correlaciones, seleccionando la necesaria para
el estudio.

Como ejemplo de este libro, elegiremos Bivariante, por lo que, como es


habitual, se abrirá un cuadro con el título Correlaciones Bivariantes. En él,
vuelven a aparecer dos cuadros, uno a la derecha 1 y otro a la izquierda 2.
Desde la primera, seleccionaremos las variables sobre las que queremos
probar la correlación; con la flecha azul 3, pasaremos a la otra casilla éstas,
lo que nos indica que sobre ellas se hará el análisis.

Luego, debemos elegir el Coeficiente de Correlación 4 adecuado al nivel de


medida de las variables y la Prueba de Significación o de Relevancia 5.
Otras ventajas que podemos aprovechar son las que se obtienen al pulsar
sobre Marcar correlaciones significativas 6, para que al ver los resultados
de la prueba, el programa nos señale los coeficientes significativos; otras se
obtienen al pulsar sobre Opciones 7, que nos dará la posibilidad de solicitar
Estadísticas 8 y el tratamiento de Valores Faltantes 9, no olvidemos pulsar
Continuar 10 y Aceptar 11.

Las funciones Estilo y Bootstrap también se ofrecen para las correlaciones


y, tienen la misma finalidad y uso que se ha explicado anteriormente aquí.
Otros Análisis (paramétricos y no paramétricos)
A continuación se describen brevemente las secuencias para realizar
algunos otros análisis (paramétricos y no paramétricos) con la ayuda de este
programa.

Prueba-t para muestras independientes


Analizar → Comparar medias → Prueba t para muestras independientes →
Seleccionar las variables a contrastar → Elegir la variable de agrupación →
Definir grupos → en el botón Opciones determinar el intervalo de confianza
y el tratamiento a los valores Faltantes → Continuar → Aceptar.

Análisis de la Varianza Unidireccional


Analizar → Comparar medias → Anova de un factor → Generar la lista de
dependientes (variables) → Determinar el Factor (variable independiente de
comparación) → Ajustar opcionalmente Contrastes, Post hoc y Opciones →
Aceptar.

Análisis de Factores
Analizar → Reducción de tamaño → Factor → Seleccionar las variables a
incluir en el análisis.→ Ajustar opcionalmente Descriptiva, Extracción,
Rotación, Puntuaciones, Opciones → Aceptar.

Chi Cuadrado
Analizar → Pruebas no paramétricas → Cuadros de diálogo antiguos →
Chi cuadrado → Generar lista de variables de prueba → Especificar rango
esperado → Seleccionar valores esperados → Ajustar opcionalmente
Opciones → Aceptar.

Regresión lineal
Analizar → Regresión → Lineal → Asignación de variables Dependientes
→ Determinar variables independientes → Seleccionar Método → Elegir
Variable de selección → Escribir Etiquetas de caso → Determinar
Ponderación MCP → Ajustar opcionalmente Estadísticas, Gráficos,
Guardar, Opciones → Aceptar.

Diagramas de Dispersión
Gráficos → Generador de Gráficos → Dispersión / Puntos → El programa
ofrece seis opciones gráficas a la derecha de donde se eligió el tipo de
gráfico, arrastra el icono de Dispersión simple al lienzo en la parte superior
del cuadro de diálogo (vista previa del gráfico) → Arrastra una variable de
escala a la zona de colocación del eje x → Arrastra otra variable de escala a
la zona de colocación del eje y → Modifica opcionalmente las demás
opciones que ofrece el cuadro de diálogo → Aceptar.
Conclusión

El análisis de datos se vuelve más estratégico que nunca gracias al software


de IBM que, además de las ventajas que lo diferencian de otras alternativas,
incluye novedades que deberás conocer para aprovecharlas en tu negocio.
Ventajas de IBM SPSS y Recursos para Explotar Todo su Potencial
La búsqueda de una herramienta de análisis de datos que reúna todas las
características necesarias para poner a la empresa en la ruta de su ventaja
competitiva lleva invariablemente a elegir IBM SPSS, que se distingue de
otras opciones por:

Incorporar opciones avanzadas de gestión de datos. IBM SPSS


tiene un formato tipo hoja de cálculo para la introducción de datos
que se puede utilizar con facilidad, incluyendo aspectos que mejoran
su capacidad de uso, como los menús desplegables. A esto hay que
añadir sus funcionalidades de documentación de datos que ayudan a
asegurar la consistencia en la entrada de datos. Una de las
principales diferencias de esta herramienta es que no es necesario
dominar ningún lenguaje de programación para interactuar con ella
ya que todas las opciones se pueden controlar a través de una
interfaz controlada por un menú.

Presenta opciones de visualización gráfica muy completas. Antes


de meterse de lleno con el análisis de los datos, es necesario
entender cómo se comportan y nada que facilite más el proceso que
la visualización. En segundos es posible asimilar toda la
información que proporciona un gráfico, mientras que te tardarías
varios minutos en leer un informe donde se recopilaría la misma
información.
Incluye una amplia gama de modelos estadísticos. La flexibilidad
es un atributo a tener en cuenta en cualquier herramienta destinada
al análisis de datos y, una de las razones es que suele ser difícil
definir el tipo de modelo estadístico que será más adecuado para
cada proyecto. Además, la investigación de los datos nos permitirá
ganar en perspectiva y añadir nuevos requisitos que invariablemente
transformarán las necesidades de modelización. IBM SPSS nos
permite satisfacer todas las necesidades de análisis en un único
programa y para aquellos que deban recurrir a opciones más
avanzadas, este software facilita la incorporación de complementos
como R o Phyton.

Pero estas no son las únicas ventajas de IBM SPSS, sino que hay que
destacar el apoyo del proveedor en cuanto a documentación y material de
soporte que pone a disposición de los usuarios en su página web, de forma
gratuita. Desde un centro de aprendizaje dedicado a SPSS, hasta una
completa colección de videos sobre aspectos prácticos a los que aplicar el
uso de IBM SPSS, incluyendo:
Cómo mejorar los índices de fidelización y retención de clientes.

Formas de optimizar el proceso de contratación.

Formas de minimizar y mitigar el fraude.

Medios para aumentar la rentabilidad y el Retorno de Inversión


(ROI) del negocio.

Las ventajas de utilizar IBM SPSS son muchas y, cada vez más, según
anuncian sus novedades.

Lo más nuevo de IBM SPSS


IBM SPSS te permite analizar conjuntos de datos complejos y de gran
volumen mediante procedimientos estadísticos avanzados que garantizan
resultados de gran precisión para una toma de decisiones de calidad. Esta
herramienta está diseñada para ser utilizada por usuarios empresariales y
avanzados, que pueden procesar y realizar procesos analíticos de forma
mucho más rápida y con flexibilidad.

Pero, para este proveedor de servicios, es importante seguir mejorando y, en


su avance hacia una entrega aún más completa, IBM ha conseguido que su
producto SPSS se supere a sí mismo incorporando tres cambios que
impulsarán la adquisición de conocimiento en las organizaciones. Estos son
los siguientes:

1. Empoderamiento del Usuario: gracias a las extensiones estadísticas de


SPSS que integran el código de R, Phyton o SPSS en IBM SPSS
Statistics, permitiendo a cada usuario crear las suyas propias o descargar
las generadas por la comunidad. De esta forma, se puede ampliar la
funcionalidad gracias al Open Source (Código Abierto) y, al mismo
tiempo, se consigue:

Personalizar la herramienta SPSS Statistics.

Automatizar las tareas sintácticas de SPSS.

Tener la oportunidad de consumir R, Phyton y SPSS sin necesidad


de programar.

Una de las ventajas mejor valoradas por los usuarios del SPSS
Extension Hub es la experiencia del catálogo de aplicaciones que
simplifica acciones tan necesarias como la descarga gratuita de
productos, la búsqueda de nuevas extensiones o la actualización de
extensiones, entre otras.

2. Gestión inteligente de datos: facilita la importación y exportación de


los tipos de archivos más populares. Así, por ejemplo, se consigue:

Ignorar las columnas y filas ocultas de Excel.

Especificar el nombre de la hoja al escribir archivos de Excel.


Eliminar los espacios iniciales y finales de los valores de cadenas.

Determinar el formato de datos de una columna en función del


porcentaje de valores con el mismo formato.

Exportar las etiquetas de valores a una base de datos.

3. Aumento de la productividad: algo que se consigue a introducir


mejoras en algunas de sus principales características, como:

La base efectiva de los resultados de las muestras ponderadas.

Una nueva capacidad, como incluir los resultados de las pruebas


significativas en la tabla principal.
La presentación de los valores de significación para las pruebas de
significación de proporción y de columna.

Un método adicional de corrección de falsos descubrimientos para


comparaciones múltiples.

Aquellos que entren en contacto con IBM SPSS por primera vez
descubrirán que ofrece soporte para Phyton 3, les permite ponerse en
contacto con la comunidad para las extensiones y los foros y, pone a su
disposición la funcionalidad "revertir lo guardado". Los usuarios con
experiencia en la herramienta también pueden beneficiarse de los cambios a
mejor, como los relacionados con la nueva imagen de las tablas, la nueva
pantalla de bienvenida con acceso directo a la comunidad o al gestor de
licencias y los nuevos formatos de fecha y hora.
IBM SPSS

Estrategias Sencillas y Eficaces para


Dominar la Estadística con IBM SPSS
desde la A hasta la Z

WALKER SCHMIDT
Introducción

Este libro está dividido en dos partes principales. La primera parte del libro
se centra en el trabajo con el SPSS Client con el lenguaje de programación
Python y los capítulos que siguen a este tema cubren más de la mitad de
todo el libro. Esto se debe a que no sólo Python es un lenguaje de
programación muy popular, sino que las correspondientes técnicas y formas
de implementar las funciones, clases, métodos y otros recursos de este
lenguaje son demasiado grandes como para ignorarlas. En la actualidad,
donde las computadoras son normales en prácticamente todos los hogares y
empresas, aprender a programar se ha convertido más en un pasatiempo que
en una profesión. Como tal, es seguro decir que la mayoría de la gente que
no tiene una capacitación en ciencias de la computación se inclinaría por el
autoaprendizaje de Python como su primer lenguaje de programación. Esto
es porque Python es relativamente fácil de codificar en comparación con
otros lenguajes y la sintaxis junto con las funciones generales simplemente
tiene más sentido. Por eso, los capítulos en los que vemos la
implementación de los bloques de programa de Python (sintaxis de los
comandos del bloque de programa del SPSS Client que implementan el
código de Python) tienen explicaciones detalladas y extensas. La razón es
que es la oportunidad perfecta para que el lector se familiarice con el
lenguaje de programación lo mejor posible. Además, tener una explicación
paso a paso de lo que ocurre en cada línea del bloque de programa aumenta
las posibilidades de que el lector comprenda y aprenda algo nuevo.

Sin embargo, Python no es el santo grial de este libro, aunque se hace


mucho énfasis en él. En el resto del libro, nuestro enfoque se desplaza del
lenguaje de programación Python al lenguaje de programación R. Al igual
que Python, R es un lenguaje de programación muy ingenioso y
funcionalmente impresionante. R es también uno de los pocos lenguajes de
programación competitivos en la actualidad debido a sus recursos y paquete
especializados. Sin embargo, el uso de R no está tan extendido como el de
Python. Mientras Python puede ser usado para, en general, cualquier tarea
de programación, R suele preferirse para tareas tipo de análisis de datos o el
aprendizaje automático. Sin embargo, dar la espalda a R sólo porque no
muchos lo prefieren sobre Python es simplemente injusto y no es correcto.
Por lo tanto, en el poco tiempo que nos queda para hablar de las
posibilidades de incorporar el lenguaje de programación R y ampliar las
capacidades de Sintaxis de Comandos del SPSS Client, esperamos que sea
suficiente. Si al lector le apasiona el análisis de datos, la exposición al
aprendizaje de programación R te incitará a aprender más.
Capítulo 1
Los Fundamentos de Python con SPSS

En este capítulo, hablaremos de las técnicas de programación junto con los


fundamentos de la programación usando el ‘Complemento de Integración
de IBM SPSS Statistics’ que está desarrollado específicamente para Python.
La estadística es una forma de análisis matemático muy importante y llena
de recursos cuando se trata de dar sentido a grandes cantidades de datos
procedentes de estudios, encuestas y experimentos, entre otras. Dado que
vivimos en la era de las computadoras, podemos usar las herramientas que
tenemos para hacer el trabajo estadístico más eficiente, sin errores y obtener
más significado de los datos.

Por lo tanto, primero exploraremos los fundamentos de las herramientas que


necesitaremos para configurar nuestra estación de trabajo de programación
exclusivamente para el SPSS y luego procederemos a explorar las técnicas
y enfoques populares para la programación estadística. Sin embargo, es
importante aclarar que no exploraremos los conceptos de programación
básica en Python, ya que estaría fuera del alcance de este libro. En vez de
eso, se pretende que el lector se acerque a los proyectos con claridad
conceptual de, al menos, cómo funciona realmente Python. Pero habrá
algunos lugares en los que entraremos en una discusión para explicar cómo
se usan algunos aspectos del lenguaje para realizar una tarea en particular.

Reunir lo Esencial
Antes de que podamos aprender a programar y sumergirnos en proyectos
detallados, debemos asegurarnos de que tenemos todo, el software y los
complementos necesarios instalados en el sistema que vamos a usar. Antes
de poder instalar el complemento de integración de Python, debemos
instalar el propio software de IBM SPSS Statistics. El paquete de software
puede ser descargado fácilmente desde el enlace:
https://software.usc.edu/spss/

Hay dos versiones diferentes disponibles para los sistemas operativos


Windows y Mac y para los usuarios previstos. A partir de la última, se
puede usar las versiones 27 y 26 de SPSS. Sin embargo, el software no es
gratis y requiere una suscripción para su uso.

Una vez adquirido el software SPSS, es necesario instalar el complemento


de integración de SPSS. Sin embargo, para que el complemento funcione
realmente, debemos asegurarnos primero de que tenemos Python instalado
en el sistema. Cuando se descarga e instala SPSS 27, también se instala
Python junto con el paquete de software original. Sin embargo, si se da el
caso de que Python no está instalado en tu sistema a pesar de haber
instalado la versión 27 de SPSS, entonces Python puede ser descargado
desde el siguiente enlace:
https://www.python.org/downloads/

Para la versión 27 de SPSS, se recomienda Python 3.8.2 para cumplir con


las actualizaciones de seguridad adecuadas y, por defecto, la versión 27
instala Python 3.8.2 durante la configuración inicial.

Así como el paquete de la versión 27 de SPSS incluye Python, también


incluye lo esencial (el complemento de integración y otros módulos). Por lo
tanto, sólo necesitas el paquete de la versión 27 de SPSS, pero si estás
usando una versión anterior (a la versión 21), tendrás que seguir una ruta de
instalación diferente.

Cómo Empezar con el Módulo de SPSS


Cuando los elementos esenciales de SPSS Python son instalados con el
software SPSS, el complemento de integración presenta un módulo que es
la esencia de la programación con SPSS. Este módulo de Python es ‘spss’ y
es capaz de:

Crear y ejecutar la sintaxis de los comandos.


Obtener información de los datos que están siendo alojados en la
sesión de SPSS activa.

Obtener datos, introducir y declarar variables.

Permitir al usuario construir un conjunto de datos.

Apoyar el acceso simultáneo a varios conjuntos de datos abiertos.

Obtener resultados (outputs o salidas).

Apoyar la personalización de las tablas dinámicas y los bloques de


texto.
Crear variables macro.

Obtener los volcados de error.

Para acceder a estas funcionalidades al programar en Python, primero


tendremos que importar la biblioteca spss. Hacer esto es algo muy sencillo.
Se puede importar cualquier biblioteca usando la instrucción ‘import’ en el
bloque de código inicial. La siguiente sintaxis demuestra el uso de la
instrucción ‘import’:
BEGIN PROGRAM PYTHON.
import spss
spss.Submit("SHOW ALL.")
END PROGRAM.

En este bloque de código, hay dos instrucciones notables aparte de ‘import


spss’ y son ‘BEGIN PROGRAM PYTHON’ y ‘END PROGRAM’.
Tradicionalmente, en un IDE (Entorno de Desarrollo Integrado) de
programación, no usamos instrucciones como éstas. Sin embargo, la
diferencia que debemos entender aquí es que estamos usando la aplicación
IBM SPSS para ejecutar estos comandos y no un IDE tradicional
(hablaremos del uso del IDE de Python en el siguiente tema).
Dado que la aplicación IBM SPSS no es un IDE de programación
dedicado, no podemos empezar a escribir códigos en Python
directamente; tenemos que emitir algunos comandos para decirle a
la aplicación que las próximas instrucciones serán código Python.
Así, usamos el comando "BEGIN PROGRAM" para decirle a la
aplicación que el código correspondiente a nuestro programa
comenzará a partir de aquí y el comando "PYTHON" desbloquea
todas las características de programación del lenguaje para el
usuario. Dado que la aplicación utiliza el lenguaje de programación
Python por defecto, no es necesario especificarlo siempre con el
comando ‘BEGIN PROGRAM’. Así que si quieres, puedes usar la
sintaxis mencionada anteriormente de esta manera también:
BEGIN PROGRAM.
import spss
spss.Submit("SHOW ALL.")
END PROGRAM.

Otra cosa importante que hay que aclarar dentro de esta sintaxis es
cuándo y dónde usar el comando ‘import spss’. Tradicionalmente,
necesitamos importar todas las bibliotecas que vamos a usar dentro
del programa al principio. Además, la instrucción importar sólo
tiene que usarse una vez por sesión de programación. Por ejemplo, si
has terminado de codificar un programa y quieres trabajar en otro, lo
harás abriendo otra sesión y en ella deberás importar de nuevo las
bibliotecas que quieras usar. Recuerda que mientras la instrucción
importar haya sido definida explícitamente al principio del
comando, hacerlo de nuevo no cambiará nada.

En la sintaxis de arriba, notarás el uso de una función específica


‘Submit()’ de la biblioteca spss (módulo). El propósito de esta
función es simplemente reenviar cualquier comando adjunto a la
aplicación para que pueda procesarlo. Dado que estamos usando una
función de la biblioteca spss, es importante especificar el módulo
también cuando se usa la función.

Aunque es importante especificar el módulo en el que se define la función,


también podemos omitir la adición de una etiqueta cuando se usa la
función. Por ejemplo, cada vez que usamos la función Submit(), tenemos
que acompañarla de la etiqueta ‘spss’. Pero hacer esto se vuelve repetitivo.
Por suerte, hay una solución para esto. Cuando usamos esas funciones que
están definidas y declaradas dentro de las bibliotecas que estamos
importando, podemos simplemente declarar la función a la que vamos a
llamar de antemano. Por ejemplo, al igual que importamos la biblioteca
spss, usamos una instrucción similar para importar la función también. La
sintaxis de esta instrucción es:
from <library name> import <function name>

Para la función spss.Submit(), la instrucción sería:


from spss import Submit

Una vez hecho esto, no necesitamos especificar la biblioteca o el módulo


desde el que se llama a la función. Esto se ha demostrado en el siguiente
bloque de código:
BEGIN PROGRAM.
import spss
from spss import Submit
Submit("SHOW ALL.")
END PROGRAM.

Cuando se usan las instrucciones que dan una salida externa (el resultado se
muestra en una consola o en cualquier otra ventana), como el comando
print() en Python, la salida es manejada por el visor de la aplicación SPSS
que muestra este resultado como un 'log item' (elemento de registro). Por
ejemplo, a continuación se ha mostrado el uso del comando print():
BEGIN PROGRAM.
print "Hello, world!"
END PROGRAM.

Cuando estas líneas de código son ejecutadas, la salida se muestra en un


visor como se muestra a continuación:

Ejecutar el Código en el IDE de Python


Un IDE (también conocido como Entorno de Desarrollo Integrado) es un
espacio virtual donde podemos interactuar directamente con el código de un
programa. En otras palabras, tenemos herramientas para crear un programa,
editar los elementos de código de los programas al igual que las
características de programación estándar como:

Completar la sintaxis

Depuración de programas

Un IDE es una herramienta destinada específicamente a la programación y


la mayor parte de la codificación se realiza dentro de un IDE debido a la
mayor comodidad y facilitación de funciones que ofrece al programador.
Teniendo esto en cuenta, la aplicación SPSS permite a los usuarios
implementar el código que han creado usando un IDE en la consola nativa
de SPSS para hacer las cosas más convenientes.
Al igual que importamos el módulo spss en la aplicación SPSS para llamar
a las funciones específicas como la de Submit(), también podemos importar
el módulo spss en el IDE de Python. El proceso de hacerlo es muy sencillo.
Al principio del código, sólo hay que añadir la línea ‘import spss’ y ya se
tiene acceso a las funciones, objetos, clases, métodos y otros elementos del
módulo spss. Hay muchos Entornos de Desarrollo Integrados disponibles
para usar en Python, sólo tienes que elegir el que prefieras. Vamos a
demostrar el uso del módulo spss en el IDE ‘PythonWin’ (para Windows).
Ejecutaremos las siguientes líneas de código:
import spss
spss.Submit(“get file=‘/examples/data/demo.sav’.”)
nvars = spss.GetVariableCount()
print (“This dataset has ”+str(nvars)+“ variables”)

La salida de este bloque de código también es demostrada por el IDE como


se muestra a continuación:

En esta demostración, la salida se muestra en la misma consola donde se


ejecutó el código. Sin embargo, si se ejecuta un bloque de código que
genera explícitamente una salida separada para el usuario, entonces se abre
en una ventana separada específicamente para este propósito. Por ejemplo,
si escribimos un código que usa el módulo spss y lo ejecutas, como hay una
salida que necesita ser generada en un visor, el resultado del código
ejecutado se muestra en una ventana separada que está ejecutando el
backend de SPSS. Todo esto es posible gracias al complemento de
integración de IBM SPSS Python.
Sin embargo, hay una forma de cambiar la configuración en la que se
genera la salida del código que usa el módulo spss en un visor de SPSS.
Para esto, usamos una función que se conoce como ‘SetOutput()’ que
también pertenece al módulo spss (por lo tanto, tendrás que añadir el Prefijo
‘spss’ a la función también). Así que al usar la función como:
spss.SetOutput(“OFF")

La salida del código ya no será re-direccionada al visor de SPSS. Del


mismo modo, podemos revertir este cambio al intercambiar el valor OFF
por el valor ON como se muestra a continuación:
spss.SetOutput("ON")

Usar el Módulo SPSS Client


En esta sección, discutiremos detalladamente otro módulo que viene en el
paquete con el complemento de integración de SPSS. Se trata del módulo
‘SpssClient’ y al igual que el módulo spss, puede usarse tanto en el IBM
SPSS Client como en un IDE de Python. Aquí hay un breve resumen de
algunas de las características que proporciona este módulo:

Capacidad de personalización para las tablas dinámicas y las salidas


de texto.

Una función de exportación que admite varios formatos de salida


para objetos como tablas y gráficos.
Capacidad de iniciar el cuadro de diálogo de SPSS Client.

Funciones de gestión para controlar las conexiones que van al


servidor de SPSS.

Este módulo tiene ciertas ventajas dependiendo de si se usa con el SPSS


Client o en un IDE de Python. Por ejemplo, si estás usando el módulo
‘SpssClient’ en el SPSS Client, entonces tendrás más control y eficiencia
para integrar la personalización de la salida y los códigos de generación de
la misma. Por otro lado, cuando el módulo se usa en un IDE de Python, el
usuario puede crear scripts con un alcance de aplicación a una gran
variedad de situaciones y este script puede ser usado fácilmente por el SPSS
Client también.

Independientemente de si el módulo se usa en el SPSS Client o en el IDE de


Python, la sintaxis de implementación fundamental sigue siendo la misma:
import SpssClient
SpssClient.StartClient()
<Python language statements>
SpssClient.StopClient()

Por lo tanto, si lo usas con el SPSS Client, añadirás las instrucciones


‘BEGIN PROGRAM.’ y ‘END PROGRAM.’ al principio y al final del
bloque de código respectivamente. En un IDE de Python, no necesitarás
usar las instrucciones mencionadas anteriormente.

Discutiremos detalladamente la implementación de este módulo en el


bloque de programa del SPSS Client y en un IDE de Python en breve, pero
antes de eso, vamos a entender lo que hace realmente cada instrucción de
las líneas de código mostradas anteriormente.
La primera línea ‘import SpssClient’ hace lo que la instrucción
sugiere, es decir, importar el módulo o la biblioteca mencionada
para que el programador pueda usar aquellas funciones, clases y
métodos que han sido declarados dentro de este módulo o biblioteca.
La segunda línea es relativamente más interesante. En esta línea
estamos usando una función del módulo SpssClient (esto es
fácilmente perceptible por el prefijo ‘SpssClient’ Prefijo de la
función). El trabajo de la función StartClient() es establecer una
conexión entre el programa y el SPSS Client. Cuando el programa
está conectado al Client, este puede manipular los objetos que son
exclusivos del Client, por ejemplo, las tablas dinámicas o los
gráficos. Además, el programa también puede obtener la
información que tiene el Client. Si esta función es llamada dentro
del bloque de programa del SPSS Client, entonces la sesión del
SPSS Client está conectada a esta sesión de programación.
Por otro lado, si la función StartClient() es llamada por un IDE de
Python, entonces el script establecerá una conexión con la sesión
actual del SPSS Client. Sin embargo, si el usuario está ejecutando
más de una sesión de SPSS Client cuando se llama a esta función en
el IDE de Python, entonces la conexión se establecerá con la sesión
de Client. Además, si no hay una sesión de SPSS Client activa
cuando el programa llama a esta función, entonces se iniciará una
nueva sesión de SPSS Client y el script de Python se conectará a
esta sesión.
En las siguientes líneas, el usuario introducirá los comandos e
instrucciones (en lenguaje Python) pertinentes a sus necesidades.
La última consiste en una función ‘StopClient()’ que cancela la
conexión establecida entre el programa y la sesión de SPSS Client.
Esta función es generalmente usada para cerrar un programa que
está usando el SPSS Client a través de la función StartClient(). En
otras palabras, una vez que el programa ha hecho su trabajo, esta
función se usa para cerrar el Client anclado, al igual que se cierra el
navegador cuando se termina de navegar por Internet.
Ahora es el momento de discutir detalladamente cómo se usa este módulo
en el bloque de programa de SPSS Client y de un IDE de Python.
Uso del Módulo SpssClient en el Bloque de Programa de SPSS Client
A continuación se muestra una demostración de código Python utilizando el
módulo SpssClient en el bloque de programa de SPSS:
*python_SpssClient_module_in_program_block.sps.
BEGIN PROGRAM.
import spss, SpssClient

# Code utilizing the spss module to generate output


spss.StartProcedure("Demo")
textBlock = spss.TextBlock("Sample text block",
"A single line of text.")
spss.EndProcedure()

# Code utilizing the SpssClient module to modify the output


SpssClient.StartClient()
OutputDoc = SpssClient.GetDesignatedOutputDoc()
OutputItems = OutputDoc.GetOutputItems()
OutputItem = OutputItems.GetItemAt(OutputItems.Size()-1)
LogItem = OutputItem.GetSpecificType()
text = LogItem.GetTextContents()
LogItem.SetTextContents("<html><B>" + text + "</B></html>")
SpssClient.StopClient()
END PROGRAM.

El programa que acabamos de demostrar tiene dos secciones principales.


Observa que antes de que el programa pueda pasar a ejecutar el código
dentro de estas secciones, los módulos se importan en primer lugar.

En la primera sección, la principal preocupación del trozo de código


que ejecuta el programa es generar un bloque de texto que
posteriormente se muestra como salida en una ventana de
visualización discreta. El programa hace esto utilizando dos
funciones del módulo spss, estas funciones son StartProcedure() y
TextBlock().

En la siguiente sección, el enfoque del programa pasa de la creación


de un bloque de texto a la personalización de las características de
este bloque de texto. Para ser precisos, este programa específico
personaliza el tipo de letra del texto, es decir, lo cambia de
predeterminado a texto en negrita. El programa hace esto usando
una colección de funciones que están disponibles por el módulo
SpssClient.

Uso del Módulo SpssClient en un IDE de Python


El siguiente bloque de código escrito en un IDE de Python funciona para
cambiar el estilo del texto y otros caracteres dentro de un documento a
cursiva.
#DemoScript.py
import SpssClient
SpssClient.StartClient()
OutputDoc = SpssClient.GetDesignatedOutputDoc()
OutputItems = OutputDoc.GetOutputItems()
for index in range(OutputItems.Size()):
OutputItem = OutputItems.GetItemAt(index)
if OutputItem.GetType() == SpssClient.OutputItemType.TITLE:
TitleItem = OutputItem.GetSpecificType()
text = TitleItem.GetTextContents()
TitleItem.SetTextContents("<html><I>" + text + "</I></html>")
SpssClient.StopClient()

Un programa corto que realiza una serie limitada de tareas cuando se


ejecuta se conoce como un script. El programa demostrado arriba es un
script de Python que utiliza el módulo SpssClient para cambiar el estilo del
texto de un documento especificado a cursiva. Una vez completada la
personalización del texto, el programa termina automáticamente, de ahí que
lo llamemos un script de Python. La primera declaración en este bloque de
código ‘#DemoScript.py’ representa el nombre del programa y todos los
archivos de script de Python tienen la extensión ‘.py’.

Puedes crear fácilmente un script en blanco y empezar a codificar en él de


la misma manera que puedes crear un archivo de texto vacío y empezar a
escribir en él. El SPSS Client ofrece esta función. Para eso, todo lo que
tienes que hacer es abrir el Client, ir a la opción de archivo en el menú de
pestañas y, a continuación, ir a la pestaña ‘New’ o ‘Nuevo’, donde
encontrarás la opción ‘Script’. Al hacer clic en la opción ‘Script’, se te
pedirá que especifiques un nombre para el script recién creado y se colocará
en la ubicación de archivo por defecto especificada por el SPSS Client. Sin
embargo, hay una cosa con la que debes tener cuidado al crear un nuevo
Python directamente desde el Client y es en qué idioma creas el Client el
script. Hay dos posibles configuraciones por defecto que dependen del
sistema operativo que estés utilizando. Si el sistema operativo es Windows,
entonces el lenguaje de script por defecto será ‘Basic’ en el SPSS Client y
si es Linux o Mac OS, entonces el lenguaje de script por defecto será
‘Python’. Si estás utilizando Windows, entonces debes ir y cambiar el
lenguaje del script por defecto yendo a las Opciones en el menú de la
pestaña Script.
Ejecución de Scripts de Python
En esta sección, discutiremos brevemente las diversas formas a través de las
cuales podemos ejecutar un script de Python existente. A continuación se
muestra una lista de métodos manuales, interactivos, implícitos y
automáticos de ejecución de scripts de Python junto con las explicaciones
adecuadas:

Una forma de ejecutar scripts de Python es interactuando con las


opciones del propio SPSS Client. Para explicarlo, en el menú de la
barra del SPSS Client, busca la categoría ‘Utilities’, y bajo esta
pestaña, encontrarás la opción ‘Run Script’. Al seleccionar esta
opción, al usuario le aparecerá una ventana emergente a través de la
cual tendrás que navegar por el almacenamiento de tu sistema de
archivo y seleccionar el script de Python (un archivo que tengas la
extensión ‘.py’) que deseas ejecutar.

Los scripts de Python también pueden ejecutarse utilizando el SPSS


Client para abrir una herramienta llamada ‘Python editor’. Para
acceder a esta herramienta, basta con ir al menú de pestañas del
SPSS Client, en la categoría ‘File’, seleccionar la opción ‘Open’ y, a
partir de ahí, encontrar el botón ‘Script’. Una vez que selecciones
‘Script’, todo lo que queda por hacer es navegar por el sistema de
archivo y hacer doble clic en el archivo de script de Python. La
ventaja de ejecutar un script de Python de esta manera es que el
usuario tendrá acceso a las herramientas de depuración dentro de la
herramienta del editor de Python. Sin embargo, no se recomienda
utilizar este método para ejecutar un script de Python que utilice el
módulo spss. Para tales scripts, es mejor utilizar el primer método o
un IDE de Python.
Otra forma de ejecutar scripts de Python es a través del terminal de
comandos de SPSS Client. A través de este método, el usuario puede
programar la ejecución de un script de Python como un ‘Autoscript’.
Un script que se ejecuta automáticamente bajo condiciones
específicas se denomina ‘Autoscript’. Por ejemplo, digamos que
estamos trabajando con el SPSS Client para crear una tabla
estadística a partir de los datos que estamos utilizando. Para crear la
tabla, estamos utilizando ciertos comandos y procedimientos. Sin
embargo, para formatear y editar la tabla, queremos más
funcionalidad que la que ofrece ‘TableLook’ y para ello, queremos
utilizar un script de Python como Autoscript. En tal escenario, todo
lo que tendríamos que hacer es utilizar un comando conocido como
‘FREQUENCIES’ para definir las condiciones que ejecutarían
automáticamente el script para formatear la tabla. Un ejemplo de
estas condiciones podría ser que cuando los procedimientos que se
están utilizando para crear la tabla generen una salida específica,
entonces se ejecutará el Autoscript.

El método más común para ejecutar scripts de Python es utilizando


un IDE dedicado a Python. Si deseas ejecutar un script de Python sin
involucrar al SPSS Client, esta es la mejor manera de hacerlo.
Capítulo 2
Familiarizarse con los Comandos de SPSS

En este capítulo, descubriremos un aspecto fundamental pero importante de


trabajar con el SPSS Client, que es presentar los comandos y la sintaxis de
los mismos. Irónicamente, la función utilizada para realizar esta acción en
particular no es otra que la función Submit(). Además, dado que esta
función está hecha específicamente para facilitar la usabilidad del SPSS
Client, es un hecho que la función Submit() estaría disponible también en
el módulo spss.
Ahora pasemos a entender cómo utilizar la función en sí. En términos de
implementación estándar, la función Submit() recibe un sintaxis de
comando completo en forma de cadena. La función procede a ‘submit’ esta
entrada al SPSS Client, donde tiene lugar el resto del procedimiento. A
continuación se muestra una sencilla demostración del uso de la función
Submit() en el SPSS Client:
BEGIN PROGRAM.
import spss
spss.Submit("FREQUENCIES VARIABLES=var1, var2, var3.")
END PROGRAM.

En este bloque de programa, puedes ver los comandos de inicio (BEGIN


PROGRAM) y finalización (END PROGRAM) del programa. Sin embargo,
las líneas que nos interesan están en medio, es decir, la función Submit().
Como hemos comentado anteriormente, introducimos los datos a la función
en forma de cadena. Aquí también ocurre lo mismo. Estamos introduciendo
el comando ‘FREQUENCIES’ en la función Submit() y, a cambio, la
función envía este comando al SPSS Client, que lo procesará y ejecutará la
acción correspondiente.
Además la función Submit(), el módulo spss ofrece una buena gama de
otras funciones a través de las cuales el usuario puede incluso obtener datos
del conjunto de datos actual cargado en el SPSS Client y también ejecutar
comandos en el conjunto de datos cargado actualmente. La carga de un
conjunto de datos concreto en la sesión actual para ejecutar comandos en él
también es sencilla y directa. En la siguiente demostración, verás que
estamos cargando un conjunto de datos en el SPSS Client incluso antes de
que comience el bloque de programa:
GET FILE='/examples/data/Employee data.sav'.
BEGIN PROGRAM.
import spss
spss.Submit("FREQUENCIES VARIABLES=gender, educ, jobcat, minority.")
END PROGRAM.

Hay un método alternativo para cargar conjuntos de datos y se realiza


mediante la función Submit(). Sin embargo, cuando utilizamos la función
Submit() en vez del comando ‘GET FILE’ para cargar un conjunto de datos,
lo hacemos dentro del bloque de programa en lugar de hacerlo antes, como
se muestra a continuación:
BEGIN PROGRAM.
import spss
spss.Submit(["GET FILE='/examples/data/Employee data.sav'.",
"FREQUENCIES VARIABLES=gender, educ, jobcat, minority."])
END PROGRAM.

Una cosa que hay que recordar cuando se utiliza la función Submit() para
que el SPSS Client procese el comando correspondiente es que una sola
cadena puede ocupar sólo un comando. Especificar varios comandos dentro
de la misma lista no funciona. El Client identifica cada lista identificando el
corchete que lo encierra. Una cadena encerrada entre dos corchetes se
considera una lista individual. Del mismo modo, si otra cadena va seguida
de sus propios corchetes, se considerará como una cadena independiente de
la anterior. Por lo tanto, si quieres enviar varios comandos, puedes hacerlo
encerrando cada comando entre corchetes separados.
Sin embargo, cada sintaxis de comando que creamos dentro del bloque de
programa necesita seguir ciertas reglas. Si estamos enviando varias sintaxis
de comandos, es importante colocar un punto (.) al final. Aunque si sólo se
introduce una sintaxis de comando en la función Submit(), ya no es
necesario utilizar el punto final. Otras reglas se aplican al uso del comando
'INSERT' donde el usuario debe implementar este comando en lugar del
comando 'INCLUDE' cuando se agrega un archivo de comando completo a
la sesión en vivo actual. No es necesario discutir explícitamente toda la lista
de reglas ya que sólo son aplicables en ciertos escenarios. Sin embargo, a
medida que exploramos diferentes temas, también aprenderemos sobre las
convenciones que deben seguirse (si es necesario).

Construir una Sintaxis de Comandos


En esta sección, exploraremos una característica muy productiva y útil del
SPSS Client que es permitir al usuario la funcionalidad de crear una sintaxis
de comandos personalizada con referencia a dos componentes del conjunto
de datos que se está utilizando actualmente:

El diccionario de datos

Los valores
Por ejemplo, el siguiente bloque de programa presenta una sintaxis de
comandos personalizada que está utilizando un procedimiento conocido
como 'DESCRIPTIVES' para dirigirse a un valor de datos específico en el
conjunto de datos que se está utilizando en la sesión del SPSS Client en
vivo. Esta categoría de valor de datos es 'variables de escala' o 'scale
variables'.
*python_desc_on_scale_vars.sps.
BEGIN PROGRAM.
import spss
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
varList=[ ]
for i in range(spss.GetVariableCount()):
if spss.GetVariableMeasurementLevel(i)=='scale':
varList.append(spss.GetVariableName(i))
if len(varList):
spss.Submit("DESCRIPTIVES"+" ".join(varList) + ".")
END PROGRAM.

Ahora vamos a desglosar el código y los comandos que se están utilizando


dentro de este bloque de programa y entender lo que está pasando.
Analizando el contenido del bloque de programa, concluimos que el
módulo principal desde el que se están utilizando las funciones es el
módulo spss. Además, como hay un total de cuatro funciones del módulo
spss (las funciones tienen el prefijo 'spss.'), es mejor discutirlas sólo porque
son las principales dentro de este bloque de programa.

1. La función ‘spss.GetVariableCount()’ – el propósito de esta


función es instruir al programa para que inspeccione el recuento
total de variables del conjunto de datos que se carga en la sesión
actual de SPSS en vivo.

2. La función ‘spss.GetVariableMeasurementLevel (i)’ – el


propósito principal de esta función es evaluar una determinada
métrica de la variable conocida como ‘nivel de medición’. Para eso,
la función utiliza el valor índice correspondiente a la variable
cuando muestra su nivel de medición. De este modo, si un nivel de
medición tiene valor índice de ‘0’, entonces sabemos que pertenece
a la primera variable del conjunto de datos.

3. La función ‘spss.GetVariableName (i)’ – utilizamos esta función


para completar los datos obtenidos por la función utilizada
anteriormente (la utilizada para obtener el nivel de medición de las
variables) en el sentido de que la salida de esta función será una lista
completa de todos los nombres de las variables junto con sus
índices. De este modo, cuando se analicen los datos del nivel de
medición, se sabrá exactamente a qué variable se refiere.
4. La función ‘spss.Submit()’ – ya estamos muy familiarizados con el
propósito y la utilidad de esta función, así que nos saltaremos lo que
hace y nos centraremos en cómo se utiliza en este contexto. En este
bloque de programa, la función Submit() se utiliza simplemente para
enviar la sintaxis del comando que creamos para el procedimiento
‘DESCRIPTIVE’.

En este ejemplo, observamos que sólo se envió una única sintaxis de


comando al SPSS Client utilizando la función Submit(). Sin embargo, si
deseas enviar varios comandos, recuerda hacerlo de una sola vez enviando
diferentes comandos en cadenas separadas, tal y como hemos comentado en
la sección "Submitting Commands" "Envío de comandos".

Capturar e Interceptar la Salida


Una de las características que hacen que el SPSS Client sea tan productivo
y dinámico son las funciones proporcionadas por el módulo spss que
soporta la amplia gama de acciones que un usuario puede realizar en el
Client. En esta sección, hablaremos de una función que se obtiene al utilizar
el módulo spss y que consiste en interceptar y obtener las salidas que los
procedimientos del SPSS Client emiten.

La interceptación, el acceso, el manejo y la transferencia de este tipo de


datos no pueden hacerse de forma convencional, ya que requieren un
entorno especial que se conoce como "espacio de trabajo XML". Cuando se
utiliza el SPSS Client, el espacio de trabajo por sí sólo puede alojar las
salidas de los procedimientos que se utilizan, lo que facilita el acceso a los
datos de salida para el usuario. Con las funciones y comandos disponibles
en el módulo spss, podemos realizar fácilmente la tarea de capturar y
acceder a los datos de salida desde el espacio de trabajo XML con mayor
control.

Generalmente, la captura de datos del espacio de trabajo XML es un


proceso de dos pasos. En primer lugar, hay que redirigir la salida (los datos)
del procedimiento que nos interesa hacia el propio espacio de trabajo XML
y, sólo entonces podemos proceder a recuperar estos datos. La parte difícil
de esta tarea es la redirección de los datos al espacio de trabajo XML. Por
suerte, el SPSS Client cuenta con un módulo que puede ayudar en esta
acción. En el módulo spssaux, capturamos y enviamos los datos al espacio
de trabajo XML utilizando el comando 'OMS'. Una vez que los datos han
sido enviados al espacio de trabajo XML, simplemente tenemos que utilizar
las "expresiones XPath" adecuadas para recuperar los datos para nuestro
uso.

Para entender mejor este concepto, veamos una demostración. Antes de


entrar en los detalles técnicos, aclaremos primero las cosas que tenemos que
hacer en el ejemplo de bloque de programa que se muestra a continuación.
En primer lugar, necesitamos una fuente de "datos de salida de
procedimientos", para lo cual necesitamos tomar un grupo de variables de
un conjunto de datos y aplicarles procedimientos dentro del bloque de
programa del SPSS Client. Ahora que tenemos una fuente de datos,
podemos proceder a enviar estos datos al espacio de trabajo XML y luego
procesar matemáticamente los datos utilizando expresiones XPath y luego
extraerlos. En esta demostración, calcularemos el valor promedio de una
variable en el espacio de trabajo XML y luego extraeremos estos datos.
*python_retrieve_output_value.sps.
BEGIN PROGRAM.
import spss,spssaux
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
cmd="DESCRIPTIVES VARIABLES=salary,salbegin,jobtime,prevexp."
desc_table,errcode=spssaux.CreateXMLOutput(
cmd,
omsid="Descriptives")
meansal=spssaux.GetValuesFromXMLWorkspace(
desc_table,
tableSubtype="Descriptive Statistics",
rowCategory="Current Salary",
colCategory="Mean",
cellAttrib="text")
if meansal:
print "The mean salary is: ", meansal[0]
END PROGRAM.

Evidentemente, el párrafo que precede a este bloque de programa no aclara


lo suficiente, así que vamos a desglosar las partes importantes y a
discutirlas.
1. Al igual que todos los bloques de programa de SPSS comienzan con
un comando 'BEGIN PROGRAM', éste tampoco es una excepción.
Observarás que, además del módulo spss, se incluye otro módulo
que es el módulo spssaux, que significa literalmente un módulo
auxiliar para el módulo spss. Este módulo viene preinstalado con la
última versión del Complemento de Integración de Python para
SPSS, por lo que no tienes que preocuparte de adquirir primero este
módulo para utilizarlo. Siguiendo adelante, ya estamos
familiarizados con la función Submit() y la sintaxis del comando
'DESCRIPTIVE', así que vamos a saltarnos esto y a centrarnos en
las otras dos funciones importantes de este bloque de programa.
Estas funciones se refieren principalmente a la salida que generará
el procedimiento que estamos utilizando. Estas funciones son
'CreateXMLOutput()' y 'GetValuesFromXMLWorkspace()'
respectivamente. El propósito principal de la primera función es
manejar la generación del comando OMS, que creará una ruta para
que la salida del procedimiento sea enviada al espacio de trabajo
XML. A continuación, el comando se envía al SPSS Client para su
procesamiento, ya que es necesario enviar los comandos para que
tengan algún efecto. El trabajo de la otra función es, como su
nombre indica, capturar la salida generada dentro del espacio de
trabajo XML sin necesidad de utilizar ninguna expresión XPath
adicional.

2. Si nos fijamos en la función 'CreateXMLOutput()', vemos que


utiliza una declaración desconocida 'omsid'. Esto se conoce como el
identificador OMS y, como su nombre indica, indica al SPSS Client
que el comando que se envía con este identificador es un comando
OMS. Así, la función 'CreateXMLOutput()' utiliza el identificador
OMS 'Descriptives' para enviar el comando 'DESCRIPTIVES' al
SPSS Client. De este modo, cualquier salida que se genere a partir
del procedimiento DESCRIPTIVES se redirigirá automáticamente
al espacio de trabajo XML y el citado identificador acompañará a
esta salida. Sin embargo, el identificador OMS no está vacío. De
hecho, utiliza una variable para almacenar su valor y esta variable es
la variable desc_table que ya ha sido declarada en la misma
sentencia. También hay otra variable junto a desc_table que es
'errcode'. El valor de esta variable refleja la magnitud del error
resultante del procedimiento que se utiliza con ella. En este caso, si
el procedimiento DESCRIPTIVES no tiene ningún error, entonces
el valor de la variable errcode será nulo (es decir, 0).

3. Una vez que los datos de salida del procedimiento han sido enviados
al espacio de trabajo XML y son procesados, no podemos
simplemente sacarlos del espacio de trabajo. Siempre que los
usuarios quieran capturar los datos del espacio de trabajo XML,
tienen que proporcionar ciertos argumentos a la función
'GetValuesFromXMLWorkspace()' también porque usar esta función
sola no hará nada. Una razón válida para esto es que la función por
sí sola no sabe qué valor quiere capturar del espacio de trabajo
XML. Por eso, un requisito para recuperar la salida del espacio de
trabajo XML es proporcionar a la función
'GetValuesFromXMLWorkshop()' el valor correspondiente del
identificador OMS del asociado a la salida. En esta demostración, el
valor del identificador se almacena en la variable 'desc_table'. Así,
para recuperar la salida, la función incluye esta variable como
primer argumento.
4. Además, tenemos que especificar otros identificadores también para
recuperar la salida correcta del espacio de trabajo XML. En este
caso, especificamos los nombres de la tabla, la fila y la columna que
sirven como identificadores adicionales para la salida que deseamos
recuperar. Puedes averiguar esta información visualizando la salida
del procedimiento 'Descriptives' en la pestaña del visualizador del
SPSS Client. En esta demostración, podemos suponer que el usuario
ha analizado la salida del procedimiento y ha asignado el nombre de
la tabla (Estadísticas descriptivas o Descriptive Statistics), el
nombre de la fila (Salario Actual o Current Salary) y el nombre de
la columna (Media o Mean). De este modo, la función dará el
conjunto exacto de valores que el usuario desea. Sin embargo, si los
identificadores no coinciden con ningún valor de la salida del
procedimiento, la función dará un resultado vacío.

Personalización de la Salida de la Tabla Dinámica


La libertad de poder personalizar las tablas dinámicas es una característica
muy demandada cuando se trabaja con datos estadísticos o incluso con
análisis de datos en general. Esta es otra área en la que el de SPSS Client
sale ganando, ya que su módulo spss cuenta con un montón de métodos que
proporcionan al usuario las herramientas necesarias para personalizar las
tablas dinámicas según sus necesidades.

A diferencia de los ejemplos anteriores en los que utilizamos el bloque de


programa del SPSS Client, en esta sección utilizaremos un script de Python
para utilizar los métodos de personalización de las tablas dinámicas.

Para entender cómo utilizar los métodos del módulo spss para personalizar
una tabla dinámica, primero veremos un script de Python que lo demuestra
y luego lo desglosaremos y discutiremos las partes importantes.
#ChangePivotTableTextStyle.py
import SpssClient
SpssClient.StartClient()
OutputDoc = SpssClient.GetDesignatedOutputDoc()
OutputItems = OutputDoc.GetOutputItems()

for index in range(OutputItems.Size()):


OutputItem = OutputItems.GetItemAt(index)
if OutputItem.GetType() == SpssClient.OutputItemType.PIVOT:
PivotTable = OutputItem.GetSpecificType()
PivotTable.SelectTable()
PivotTable.SetTextStyle(SpssClient.SpssTextStyleTypes.SpssTSBold)
SpssClient.StopClient()

El efecto principal de este script de Python es evidente en un documento


que contiene una tabla dinámica. Cuando se utiliza este script de Python,
todo el contenido textual del documento mencionado tendrá el estilo
cambiado a "negrita". Ahora que sabemos lo que hace el script, vamos a
desglosar el código.

1. En este script de Python, se están utilizando un total de cinco


métodos juntos para personalizar el estilo del texto de la tabla
dinámica. Después de las declaraciones 'import' y 'StartClient()', los
siguientes dos argumentos son básicamente la declaración de las
funciones (métodos) y la asignación a sus correspondientes objetos
para que puedan ser escritos fácilmente más adelante en el script.
Así, podemos ver que dos métodos, 'GetDesignatedOutputDoc()' y
'GetOutputItems()' son declarados y asignados a 'OutputDoc' y
'OutputItems' por conveniencia. El primero de estos métodos
pertenece a la clase que importamos inicialmente que es
'SpssClient' mientras que el otro se utiliza en el objeto
'OutputDoc'. El objetivo principal del primer método es
proporcionar al programa un objeto (OutputDoc) que representa el
documento en el que el programa guardará una copia de la tabla
dinámica que queremos personalizar. Este documento se conoce
como documento de salida. Por otro lado, el segundo método se
utiliza sobre el objeto OutputDoc para proporcionar al usuario un
registro de todos los objetos que describen los distintos ítems dentro
de la tabla dinámica personalizada. Con la información de los ítems
dentro de la tabla dinámica, ahora podemos comenzar a personalizar
sus atributos.

2. Luego, vemos que se ha colocado un "for loop". La razón de esto es


para que las instrucciones de este bucle (loop) se apliquen a todos
los ítems de acuerdo al registro o lista recuperada dentro de la tabla
dinámica. En este punto, es importante señalar que cada elemento
tiene su propio tipo de elemento. Por ejemplo, el tipo de ítem de una
tabla dinámica es 'SpssClient.OutputItemType.PIVOT'. La razón
por la que esto es importante es porque necesitarás identificar los
elementos por sus tipos. El loop finaliza una vez que el 'if
condicional' deja de cumplirse.
3. Otro método que utilizamos en las siguientes líneas es
'GetSpecificType'. La finalidad de este método es generar un objeto
que se corresponda con el elemento de salida. Por ejemplo, si el
programa observa que uno de los elementos de salida es una tabla
dinámica, entonces utilizarás este método para generar un objeto
que represente esta tabla dinámica modificada.

4. Los dos últimos métodos, 'SelectTable' y 'SetTextStyle' son simples


y realizan una acción relativamente sencilla. Tal y como sugieren
sus nombres, el primer método resalta colectivamente una tabla
entera mientras que el otro método simplemente establece el estilo
del texto al que se ha especificado dentro de este script (que es la
negrita).
Capítulo 3
Fusión de la Sintaxis de Comandos
de SPSS y Bloques de Programa Junto
con el Manejo de Errores

Una característica muy interesante de los bloques de programa del SPSS


Client es la posibilidad de mezclar la sintaxis de comandos y los bloques de
programa. Para ser más precisos, dependiendo de las necesidades del
usuario, no sólo pueden dispersar el bloque BEGIN y END PROGRAM
entre otras sintaxis de comandos, sino que también pueden implementar
más de un bloque de programa sucesivamente dentro de la misma sesión de
trabajo. En consecuencia, si el usuario declara y asigna algunas variables de
Python en uno de los múltiples bloques de programa, estas variables
también pueden utilizarse en los bloques de programa siguientes. Veamos
una demostración sencilla de cómo se puede hacer esto y analicémoslo
después:
*python_multiple_program_blocks.sps.
DATA LIST FREE /var1.
BEGIN DATA
1
END DATA.
DATASET NAME File1.
BEGIN PROGRAM.
import spss
File1N=spss.GetVariableCount()
END PROGRAM.
DATA LIST FREE /var1 var2 var3.
BEGIN DATA
123
END DATA.
DATASET NAME File2.
BEGIN PROGRAM.
File2N=spss.GetVariableCount()
if File2N > File1N:
message="File2 has more variables than File1."
elif File1N > File2N:
message="File1 has more variables than File2."
else:
message="Both files have the same number of variables."
print message
END PROGRAM.

1. Puedes ver que esta sesión de trabajo utiliza dos bloques de


programa. En el primer bloque de programa, hemos utilizado la
sentencia import para incluir el módulo spss para este trabajo.
Como el módulo ya ha sido importado el siguiente bloque de
programa no necesita hacer lo mismo para utilizar también el
módulo spss.
2. Lo siguiente interesante en esta demostración es el uso de
variables. Como hemos explicado antes, cualquier variable de
Python definida en un bloque de programa puede ser utilizada
también por el siguiente bloque de programa. Lo mismo ocurre con
la variable 'File1N' declarada en el primer bloque de programa
justo después de la declaración de importación del módulo spss.
Esta variable contiene básicamente un valor que representa todas
las variables presentes en el conjunto de datos que está siendo
utilizado por la sesión actual del SPSS Client en vivo.
3. Cuando el primer bloque de programa termina de ejecutarse, los
conjuntos de datos que se están utilizando en la sesión del SPSS
Client en vivo cambian, lo que significa que un nuevo conjunto de
datos se convierte en el conjunto de datos activos. Así, cuando se
ejecuta el siguiente bloque de programa, vemos que se declara una
nueva variable 'File2N'. El contenido de esta variable es también el
número total de variables dentro del conjunto de datos actualmente
activo.
4. En el segundo bloque de programa, vemos cómo la sesión de
trabajo aprovecha el hecho de que todas las variables declaradas y
utilizadas en los bloques de programa precedentes no se descartan
y conservan sus valores cuando se utilizan también en los
siguientes bloques de programa. Este bloque de programa utiliza
operadores condicionales y de comparación para cruzar el número
total de variables que tienen 'File1N' y 'File2N' también.
Dependiendo del resultado de la comparación, uno de los dos
condicionales se convertirá en 'True' y se mostrará el mensaje
correspondiente. Observa que la variable 'File1N' no está definida
en el segundo bloque de programa y sigue siendo utilizada junto
con el valor que tenía anteriormente.
Traslado de los Valores de un Bloque de Programa a una Sintaxis de
Comando
En esta sección, hablaremos de otra característica de los bloques de
programa que es similar a la forma en que las variables se transfieren a los
bloques de programa siguientes. Esta característica implica pasar un valor
de un bloque de programa a una sintaxis de comando externa que no está
presente dentro de este bloque de programa. Para eso, se crea un tipo
especial de variable conocido como ‘macro variable’. De este modo,
podemos utilizar los valores que calcula un bloque de programa y utilizarlo
con la sintaxis de comandos.

En la siguiente demostración, queremos crear varias listas individuales que


representan las variables de la escala así como las variables categóricas de
un conjunto de datos concreto. Además, queremos utilizar diferentes
sintaxis de comandos para la lista de variables de la escala y la lista de
variables categóricas. Para ser más precisos, queremos presentar un
procedimiento ‘FREQUENCIES’ para las variables categóricas del
conjunto de datos y un procedimiento ‘DESCRIPTIVES’ para las
variables de escala del conjunto de datos.
*python_set_varlist_macros.sps.
BEGIN PROGRAM.
Import spss
spss.Submit(“GET FILE=’/examples/data/Employee data.sav’.”)
catlist=[ ]
scalist=[ ]
for i in range(spss.GetVariableCount()):
varName=spss.GetVariableName(i)
if spss.GetVariableMeasurementLevel(i) in [‘nominal’, ‘ordinal’]:
catlist.append(varName)
else:
scalist.append(varName)
if len(catlist):
categoricalVars = “ “.join(catlist)
spss.SetMacroValue(“!catvars”, categoricalVars)
if len(scalist):
scaleVars = “ “.join(scalist)
spss.SetMacroValue(“!scavars”, scaleVars)
END PROGRAM.

FREQUENCIES !catvars.
DESCRIPTIVES !scavars.

Antes de proceder a la aplicación de una sintaxis de comandos


diferente para las listas de variables, primero tenemos que crear las
listas. Para ello, implementamos un loop ‘for’ que analizará el
conjunto de datos actualmente activo y separará las variables
categóricas de las variables de la escala y las pondrá en listas
separadas.
Para crear una variable macro, utilizamos una función del módulo
spss que es ‘SetMacroValue()’. Proporcionamos a esta función un
nombre especificado con el que será referida y un valor específico
para que lo conserve. A su vez, la función generará una macro cuyo
nombre y valor son los mismos que se especificaron al llamarla
inicialmente. La característica distintiva de una variable creada a
partir de esta función del módulo spss es que esta macro puede ser
referida por cualquier sintaxis de comando. La única limitación es
que la sintaxis del comando que está utilizando la variable de macro
debe colocarse siempre después del bloque de programa en el que se
generó inicialmente la variable de macro. En esta demostración,
vemos que la función ‘SetMacroValue()’ se utiliza dos veces, la
primera para crear una macro que hará referencia a una lista de
variables categóricas (!catvars) y la otra para hacer referencia a una
lista para variables de escala (!scavars).
En el siguiente paso, comprobamos si las macros se han generado
correctamente o si hay algún problema (como que la lista que
muestran las macros está vacía) porque esto crearía una cadena de
problemas que habría que solucionar si creamos otras macros
vinculadas a éstas. Para comprobar si una lista de variables está
vacía (ya sean variables categóricas o de escala), utilizamos la
sentencia len() junto con el condicional ‘if’ que devolverá ‘False’ si
el valor devuelto es ‘0’ (lo que significa que no hay variables). En
esta demostración, utilizamos la sentencia len(catlist) para hacer
esto.
Una vez que el bloque de programa termina de ejecutarse, el
resultado final serán dos macrovariables, ‘!catvars’ que mostrará una
lista de las variables categóricas del conjunto de datos activos y
‘!scavars’ que mostrará una lista de las variables de escala del
mismo conjunto de datos también. Si no hay variables categóricas o
de escala en el conjunto de datos, el bloque de programa no generará
la macrovariable correspondiente.
Después del bloque de programa, vemos el uso de dos
procedimientos que básicamente utilizan los valores de las
macrovariables que se calcularon dentro del bloque de programa
anterior. De esta manera, podemos pasar los valores de un bloque de
programa a cualquier sintaxis de comando.

Bloques de Programas Anidados


El código anidado es común en la programación del mismo modo, podemos
anidar bloques de programa en Python también. Esto significa que podemos
usar Python para presentar una sintaxis de comandos también. Un script de
Python que incluye bloques de programa anidados se conoce como "bloque
de programa de Python". Una característica realmente útil de un bloque de
programa de Python es que también admite el anidamiento de bloques de
programa de 'R' (lenguaje de programación). Sin embargo, esto no va en
ambos sentidos, lo que significa que aunque podemos anidar bloques de
programa R en Python, no podemos anidar un bloque de programa Python
en el bloque de programa 'R'. Añadir un bloque de programa anidado dentro
de otro bloque de programa anidado se conoce como "multianidación"; sin
embargo, el límite máximo de multianidación es de hasta cinco niveles.

Un método común de anidación de bloques de programa es crear por


separado un bloque de programa y luego guardar el archivo. Luego creamos
otro bloque de programa e incluimos este archivo de sintaxis de comandos
para que sea leído y procesado mediante el comando 'INSERT'. El
siguiente ejemplo demuestra este método.
import spss
spss.Submit("INSERT FILE='/myprograms/nested_block.sps'.")
END PROGRAM.

The file we just inserted is a command syntax file that has the following
program block:
BEGIN PROGRAM PYTHON.
import spss
<Enter Python code>
END PROGRAM.

Aunque este es un método comúnmente usado para anidar bloques de


programa, hay algunas limitaciones particularmente cuando queremos
implementar una sección de código que es básicamente un módulo Python
importable que incluye un bloque de programa anidado. Esto parece un
poco complicado, así que vamos a desglosarlo un poco. Considera que
tienes un módulo de Python que quieres importar en el bloque de programa
del SPSS Client como importaría el módulo spss. Sin embargo, a diferencia
del módulo spss, este módulo Python es un bloque de código que (como el
código de ejemplo mostrado anteriormente) tiene un bloque de programa
anidado en él utilizando un comando 'INSERT'. Esto simplemente no
funcionará con este método de anidación de bloques de programa.

Sin embargo, si quieres importar un módulo de Python como medio para


anidar bloques de programa, hay otra forma de hacerlo. Para eso, tendrás
que escribir el bloque de programa anidado como una "función definida por
el usuario" y luego implementarla en el módulo de Python y después
importarla. Aquí hay un ejemplo de cómo implementar tal función que
incluye un bloque de programa anidado.
BEGIN PROGRAM.
import spss, myfuncs
myfuncs.demo()
END PROGRAM.

En este ejemplo, importamos un módulo de Python creado a medida


con el nombre de ‘myfuncs’.

El módulo ‘myfuncs’ tiene una función que usaremos para insertar


el bloque de programa que anidamos en él. Esta función es
‘demo()’.

Crear un módulo personalizado de Python es muy sencillo. Hay dos


métodos para hacerlo. Podemos crear un módulo de Python usando
el IDE de Python o usando un editor de texto. Cuando se utiliza un
editor de texto para crear un módulo de Python, todo lo que hay que
hacer es insertar las sentencias, los argumentos y las definiciones
(variables, objetos y funciones que queremos utilizar del módulo) y
luego cambiar la extensión del archivo de texto a '.py'. Cuando
hayas terminado de crear el módulo, todo lo que tienes que hacer es
referirte al nombre del archivo sin su extensión cuando uses la
sentencia import.
Aquí hay un vistazo a lo que consiste el módulo personalizado myfuncs de
Python:
import spss
def demo():
spss.Submit("""
BEGIN PROGRAM PYTHON.
<Python code>
END PROGRAM.""")

Puedes ver en el contenido del módulo que demo() es simplemente una


función que ha sido definida como la función Submit() del módulo spss.
Cómo estamos utilizando una función del módulo spss, es importante
importarla. Para especificar un bloque de programa anidado, lo hacemos
utilizando tres símbolos de comillas como los utilizados en la función
Submit().

Cualquier sintaxis de comando y código que esté dentro de estas cadenas de


comillas triples será anidada.

Como todo el bloque de programa Python está dentro de la sangría de


anidamiento, esto significa que cuando importamos este módulo y
utilizamos la función demo(), la función Submit() insertará el bloque 'Begin
Program Python' al SPSS Client para su procesamiento. De este modo,
podemos utilizar módulos para insertar bloques de programa anidados.

La localidad de las Variables


Al hablar de bloques de programa anidados, la localidad de las variables se
convierte en un factor importante. Cuando decimos "localidad de las
variables" nos referimos en realidad a la accesibilidad real de las variables,
es decir, a las variables locales (que sólo pueden utilizarse en el script o
bloque de programa donde se han definido) y a las variables globales (que
pueden ser utilizadas por cualquier script o bloque de programa externo).

Cuando creamos un bloque de programa anidado que incluye algunas


variables de Python, éstas están restringidas por defecto para ser utilizadas
sólo dentro del bloque de programa en el que fueron declaradas. En otras
palabras, son variables locales. Por lo tanto, si quieres que estas variables de
Python sean accesibles por otros bloques de programa o scripts, entonces
tendremos que cambiar su alcance de variables locales a variables globales.

Otro punto de interés cuando se usan variables Python en un bloque de


programa anidado es que cuando una variable Python se define en un
bloque de programa que se expande a un bloque anidado, este bloque
anidado tiene acceso limitado a las variables Python precedentes. Para ser
más precisos, el bloque de programa anidado, en este caso, puede leer las
variables de Python del bloque precedente, pero no tiene la libertad de
modificar las variables de ninguna manera. Demostremos esto con un
ejemplo:
BEGIN PROGRAM.
import spss
var1 = 0
spss.Submit("INSERT FILE='/myprograms/nested_block.sps'.")
print "Value of var1 from root block after calling nested block: ", var1
try:
print "Value of var2 from root block: ", var2
except:
print "Can't read var2 from root block"
END PROGRAM.

El contenido del bloque de programa anidado insertado es:


BEGIN PROGRAM.
print "Value of var1 from nested block: ", var1
var2 = 1
var1 = 1
END PROGRAM.

Cuando el primer bloque de programa termina de ejecutarse, produce el


siguiente resultado:
Value of var1 from nested block: 0
Value of var1 from root block after calling nested block: 0
Value of var2 from root block: Can't read var2 from root block
Terminemos esta sección discutiendo qué significan las tres líneas del
bloque de resultado.

1. Inicialmente, el bloque de resultado nos dice que la variable var1


puede ser accedida y leída por el bloque animado. Esto es evidente
cuando la primera línea del bloque de resultados nos dice el valor
que tiene la variable var1.
2. La siguiente línea del bloque de resultados se refiere a la localidad
de la variable var1 en el bloque anidado y en el bloque raíz. Al leer
la segunda línea, llegamos a saber que el bloque anidado no es
capaz de realizar ningún cambio en el valor de la variable var1 en el
bloque raíz. De esto podemos deducir que la variable var1 del
bloque anidado es una variable local y, por tanto, no tiene ninguna
relación con la variable var1 del bloque raíz. Para que el bloque
anidado modifique la variable var1 del bloque raíz, es necesario que
su localidad sea global.

3. En la última línea, el bloque resultante nos indica que la variable


var2 definida en el bloque anidado no es accesible para el bloque
raíz y, por tanto, no puede leer el valor que contiene.

Manejo de Errores
Encontrarse con errores es algo común en la programación y esto también
es cierto para Python. Cuando un error aparece durante la ejecución del
código en el IDE de Python, se genera una "excepción" en respuesta a este
error por el intérprete. Mientras que el intérprete de Python puede capturar
las excepciones, el módulo spss también es capaz de capturar otros tipos de
errores, tres en particular, y generar las excepciones correspondientes. Estos
tres tipos de errores son los siguientes;

Cuando el SPSS Client encuentra un error al procesar la sintaxis del


comando que se ha enviado a través de la función Submit().
Cuando se llama a una función del módulo spss con argumentos
incorrectos, por ejemplo, si la función requiere un argumento de
cadena y en lugar de una cadena, el usuario proporciona un valor int
(integer).

Cuando se encuentra un error durante la ejecución del código, en


particular para una función del módulo spss. Por ejemplo, una
función recibe un rango de índice incorrecto para un conjunto de
datos que está siendo utilizado por el SPSS Client.

Cuando se escribe el código, ya sea en el IDE de Python o en el bloque de


programa del SPSS Client, es importante tener en cuenta los posibles
errores que pueden surgir durante la ejecución del código y sabiendo esto
implementar algunas contramedidas. Generalmente, para manejar esos
errores, utilizamos una cláusula que ejecuta una acción para tratar las
excepciones generadas. Dependiendo del tipo de acción que quieras que
realice el programa en caso de que surja un error, puedes utilizar la cláusula
'try', la cláusula 'except', o incluso la cláusula 'finally'.

Para entender mejor el manejo de errores, consideremos un ejemplo.


Digamos que tenemos una colección de archivos de datos que tienen una
extensión .sav. Queremos utilizar el SPSS Client para buscar en todos estos
archivos de datos estadísticos y buscar una variable específica. Para eso,
elegimos crear un bloque de programa que primero buscará a fondo en un
directorio de archivos especificado y luego creará una lista de todas las
variables de los archivos '.sav' en ese directorio. El plan aquí es que una vez
que tengamos una lista de todas las variables presentes dentro de estos
archivos de datos, podemos filtrar la búsqueda de la que queremos. Sin
embargo, existe la posibilidad de que este proceso falle porque un archivo
'.sav' no siempre es un archivo de datos con formato IBM Statistics y si el
bloque de programa se encuentra con este escenario, entonces generará un
error. Para manejar este error, utilizaremos las siguientes líneas de código
que cuentan con las cláusulas 'try' y 'except'. Es importante aclarar que
este bloque de código espera que el usuario ya haya accedido a todos los
archivos que tienen la extensión '.sav'.
for fname in savfilelist:
try:
spss.Submit("get file='" + dirname + "/" + fname + "'.")
<test if variable is in file and print file name if it is>
except:
pass

Ahora vamos a entender cómo este bloque de código se ocupará de la


posibilidad de un error al abrir un archivo '.sav'.

El bloque de código comienza con una declaración que utiliza la


cláusula ‘try’. Esta cláusula ejecutará una serie de instrucciones. En
primer lugar, intentará leer un archivo de la lista de archivo ‘.sav’
enviado SPSS Client un comando de sintaxis ‘GET’ junto con el
directorio del archivo y el nombre del archivo que quiere abrir.

En el caso de que el intento de abrir el archivo '.sav' tenga éxito, se


ejecutarán el resto de las sentencias de esta cláusula. En este caso, el
segundo trabajo de la cláusula 'try' será comprobar si el archivo de
datos abierto tiene las variables que buscamos o no. Si tiene las
variables, entonces procederá a mostrar el nombre de este archivo.

En caso de que no se pueda acceder o leer el archivo que la cláusula


'try' está intentando abrir, se generará un error. Para manejar este
error, la cláusula 'try' cederá el control a la cláusula 'except'
(también hay que tener en cuenta que el resto de las sentencias de la
cláusula 'try' no se ejecutarán. La única acción que realiza la
cláusula 'except' es simplemente saltar e ignorar este archivo por
completo y pasar al siguiente archivo .sav de la lista. La razón de
esto es que el archivo .sav que genera el error no es un archivo de
datos de IBM SPSS y, por tanto, no hay prácticamente nada que
podamos hacer con él).
Cuando se crean bloques de programa que tienen múltiples sentencias
condicionales, la incorporación de secciones de gestión de errores se
convierte en una parte muy importante del bloque de código. Piénselo de
esta manera, a menos que haya un parámetro de manejo de errores
especificado por el usuario, el programa simplemente dejará de funcionar
debido a un error interno. Incluso si el error que se está generando es muy
simple de tratar, ignorarlo sólo llevará a que el programa sea aún más
inestable cuando implementemos más instrucciones en él. Para evitar tener
que rebuscar en un gran y largo bloque de programa durante la depuración
(el proceso en el que el programador lee el código fuente para averiguar la
raíz del error), es más rentable y ahorrativo considerar estos posibles errores
desde el principio e implementar los correspondientes bloques de código de
gestión de errores. Dejar esta parte de la tarea para más adelante puede
convertirse en una tarea pesada y que consuma mucho tiempo más adelante,
con más posibilidades de otros errores potenciales.
Capítulo 4
Trabajar con SPSS Para Crear
una Interfaz Gráfica de Usuario

Desde la versión 17.0, el IBM SPSS Client incluye una función que permite
a los usuarios crear sus propias GUIs (Interfaz Gráfica de Usuario)
personalizadas, esta función se conoce como "Custom Dialog Builder".
Básicamente, se definen las dimensiones, los elementos, los aspectos y las
acciones de la GUI en un código Python. No importa si este código que
contiene la información estructural para la GUI se implementa dentro de
otro comando o en el bloque de programa del SPSS Client (El que usamos
los comandos Begin Program y End Program).

Si eres experto en programación con Python, también puedes crear tu


propia GUI utilizando el módulo 'Tkinter' de Python, que tiene más
funciones. Aparte del conjunto de herramientas proporcionadas por el
módulo 'Tkinter', también podemos utilizar un conjunto de herramientas
desarrollado por la comunidad para el desarrollo de GUI que se conoce
como 'wxPython'. Sin embargo, para utilizar el kit de herramientas
wxPython, tendremos que descargarlo primero en nuestro sistema.

En esta sección, demostraremos la construcción de interfaz gráficas de


usuario utilizando el kit de herramientas wxPython. Podemos descargarlo
fácilmente desde su página web oficial que es la siguiente:
http://www.wxpython.org/

Para mantener las cosas simples y nítidas, entenderemos los diversos pasos
en la construcción de una GUI usando ejemplos demostrativos. Los
ejemplos mostrados en esta sección son compatibles tanto con programas
de Python como con scripts de Python.

Solicitud de Mensaje Estándar


Comencemos con el primer ejemplo en el que crearemos un cuadro de
diálogo de mensaje estándar. Esta GUI tendrá sólo dos acciones posibles,
una acción 'Yes' y una acción 'No' y éstas serán activadas usando dos
botones con las mismas etiquetas de nombre. Para construir un cuadro de
diálogo de mensaje, vamos a utilizar un bloque de programa de Python que
utiliza una clase del módulo del kit de herramientas wxPython que es
'MessageDialog()'. El siguiente bloque de código lo demuestra:
*python_simple_message_box.sps.
BEGIN PROGRAM.
import wx
app = wx.PySimpleApp()
dlg = wx.MessageDialog(None, "Ok to reformat hard disk?",
caption="Important Question",
style=wx.YES_NO | wx.NO_DEFAULT | wx.ICON_QUESTION)
ret = dlg.ShowModal()
if ret == wx.ID_YES:
# put Yes action code here
print "You said yes"
else:
# put No action code here
print "You said No"

dlg.Destroy()
app.Destroy()
END PROGRAM.

Ahora vamos a desglosar lo que ocurre en este bloque de programa de


Python en detalle.

Antes de poder implementar este bloque de programa, debemos


descargar el conjunto de herramientas wxPython. Una vez
descargado, podemos proceder a importar el módulo wx para utilizar
las funciones y clases que ofrece para construir el cuadro de diálogo
de mensajes. Tras importar el módulo wx, procedemos a ejecutar un
objeto de aplicación perteneciente a wxPython. Para cada cuadro de
diálogo que queramos que muestre la GUI, necesitaremos ejecutar el
mismo número de instancias del objeto de aplicación wxPython.
Este objeto de aplicación es necesario no sólo para mostrar la propia
GUI sino también para manejar las respuestas cuando el usuario
interactúa con la GUI. Como queremos crear un sólo cuadro de
diálogo de mensajes, sólo ejecutaremos una instancia del objeto de
aplicación wxPython. Para eso, utilizamos una clase definida en el
módulo wx que es 'wx.PySimpleApp()'.

En la segunda declaración, especificamos el contenido real del


cuadro de diálogo con la ayuda de una clase del módulo wx que es
'wx.MessageDialog()'. Mirando los argumentos que se dan a esta
clase, vemos que el primer argumento es 'None'. Este argumento
especifica si hay alguna ventana a través de la cual se expandirá este
cuadro de diálogo, como cuando se intenta salir de una aplicación.
Aparece un cuadro de diálogo que te pregunta si realmente quieres
cerrar la aplicación. Dado que no existe tal ventana que se expanda a
este cuadro de mensaje, establecemos este argumento como 'None'.
En el siguiente argumento, proporcionamos una cadena que será el
mensaje que el cuadro de mensajes mostrará en la GUI. El siguiente
argumento especifica el título de la caja de mensajes y este
argumento es opcional porque no importará si la caja tiene un título
o no. Finalmente, el siguiente argumento especifica tres elementos
clave de la caja de mensajes que queremos crear. La primera
declaración define los dos botones que queremos que tenga, la
segunda declaración le dice al programa qué botón debe estar
resaltado por defecto, y la tercera declaración incluye un icono
visual de un signo de interrogación (para hacer las cosas más
atractivas visualmente).
Después de esto, vemos el uso de un método que hace referencia a
las instrucciones especificadas a la clase 'MessageDialog()' y este
método es 'ShowModal' que genera una muestra de cómo es el
cuadro de diálogo actualmente. Justo después de esta declaración,
definimos la acción que debe ocurrir cuando el usuario haga clic en
uno de los dos botones. Si se pulsa el botón 'Yes', el cuadro de
diálogo muestra el mensaje ‘You said Yes o Has dicho Sí’ y si se
pulsa el botón 'No', dice ‘You said No o Has dicho No’.

Por último, una vez que el usuario pulsa un botón, no queremos que
el cuadro de diálogo persista. En cambio, queremos que desaparezca
una vez que haya hecho su trabajo. Para eso, incluimos un método
que terminará esta instancia del cuadro de diálogo y este es el
método 'Destroy()'. Sin embargo, terminar sólo la GUI no será
suficiente. En su lugar, tenemos que terminar dos instancias en
ejecución que pertenecen a diferentes clases. Tenemos que terminar
una instancia que pertenece a la clase wxPython y una instancia que
pertenece a la clase MessageDialog. Por eso usamos el método
'Destroy()' dos veces.

Crear un Explorador de Archivos


Ahora vamos a ver algo más avanzado que un simple cuadro emergente de
mensajes. Aunque esto también es un tipo de cuadro de diálogo, sin
embargo, este cuadro de diálogo será capaz de navegar a través de los
directorios de archivos del sistema y seleccionar un archivo que el usuario
elija. Esto funciona de la misma manera que cuando se intenta subir una
foto o un video en Facebook y, una vez que se hace clic en el botón de
subir, aparece una ventana en la que se navega hasta el archivo que se
quiere subir.

Como estamos trabajando con IBM SPSS, haremos algunos cambios para
que vayas con el tema de este libro. Cuando elijas cargar una imagen,
observa que el explorador de archivos tiene una lista de filtros de tipo de
archivo específicos para imágenes. Del mismo modo, este cuadro de
diálogo del explorador de archivos tendrá un filtro específico para los
archivos de datos de SPSS (.sav). En la siguiente demostración de cómo
crear dicho cuadro de diálogo, utilizaremos otra clase del módulo
wxPython que es 'FileDialog'. El siguiente bloque de programa demuestra
la creación de un explorador de archivos:
*python_simple_file_chooser.sps.
BEGIN PROGRAM.
import wx, os, spss
app = wx.PySimpleApp()
fileWildcard = "sav files (*.sav)|*.sav|" \
"All files (*.*)|*.*"
dlg = wx.FileDialog(None,
message="Choose a data file",
defaultDir=os.getcwd(),
defaultFile="",
wildcard=fileWildcard,
style=wx.OPEN)

if dlg.ShowModal() == wx.ID_OK:
filespec = dlg.GetPath()
else:
filespec = None

dlg.Destroy()
app.Destroy()

if filespec:
spss.Submit("GET FILE='" + str(filespec) + "'.")
END PROGRAM.

De entrada, verás que hay un montón de módulos que se importan


para esta tarea. Esto es porque la función del cuadro de diálogo no
es tan simple. Estamos utilizando un módulo de Python que es 'os'
para poder utilizar una función conocida como 'getcwd'. El resto de
los módulos son los mismos, es decir, el módulo spss, y el módulo
wx.

La mayoría de las cosas son las mismas que se discutieron en el


ejemplo anterior. Estamos utilizando la función
'wx.PySimpleApp()' para crear una instancia de un objeto de
aplicación wxPython para ejecutar la GUI. Estamos definiendo una
variable 'FileWildcard' que será utilizada para definir el filtro de
archivos en el método 'FileDialog()'. Luego, estamos usando el
método 'FileDialog()' y pasándole casi los mismos argumentos que
hicimos con el método 'MessageDialog()'. Como no habrá ninguna
ventana que se expanda a este cuadro de diálogo, establecemos el
primer argumento como 'None'. El siguiente argumento especifica
el título de este cuadro de diálogo. Después de esto, usamos el
argumento 'defaultDir' para decirle al programa que cuando la caja
de diálogo se abra, qué directorio debe mostrar por defecto (en este
ejemplo, el directorio por defecto es nuestro directorio de proyecto
actualmente activo usando la función getcwd(). A continuación, hay
un argumento para decirle al cuadro de diálogo qué archivo debe ser
seleccionado por defecto cuando se abre. En este ejemplo, no
queremos que se seleccione ningún archivo cuando se abra el cuadro
de diálogo, así que dejamos este argumento sin especificar
utilizando una cadena vacía. El argumento siguiente (wildcard)
especifica los filtros de tipo de archivo disponibles para que el
usuario los seleccione en la lista desplegable del cuadro de diálogo.
Por último, el argumento style hace lo mismo que hemos comentado
en el ejemplo anterior.

Usamos el método 'ShowModal' para que aparezca una instancia


real del cuadro de diálogo que hemos creado.
Cuando el cuadro de diálogo selecciona un archivo, devuelve el
directorio de la ruta del archivo al programa utilizando un método de
la clase 'FileDialog' que es 'GetPath()'.

Finalmente, se envía un comando 'GET' al SPSS Client cuando el


usuario selecciona un archivo de datos SPSS (que no está vacío)
utilizando el cuadro de diálogo.

Cuadro de Selección de Variables


Ahora terminaremos discutiendo otro ejemplo en el que creamos un cuadro
de diálogo para dar al usuario una lista de elementos para seleccionar. Estos
elementos representarán las variables de escala de cualquier conjunto de
datos que se esté utilizando activamente con el SPSS Client. A continuación
se muestra un vistazo a la apariencia de este cuadro de diálogo para que
tengas una idea de lo que el bloque de programa que se muestra a
continuación está tratando de crear:

Ahora veamos el bloque de programa que generará un cuadro de diálogo


como éste:
*python_simple_multivariable_chooser.sps.
BEGIN PROGRAM.
import wx, spss, spssaux

spssaux.OpenDataFile("/examples/data/Employee data.sav")
vardict = spssaux.VariableDict(variableLevel=['scale'])
choicelist = vardict.variables
if choicelist:
app = wx.PySimpleApp()
dlg = wx.MultiChoiceDialog(None,
"Select one or more variables\nfor analysis",
"Descriptive Statistics",
choices=choicelist)
if dlg.ShowModal() == wx.ID_OK:
vars = dlg.GetSelections()
else:
vars = None

dlg.Destroy()
app.Destroy()

if vars:
varlist = [choicelist[i] for i in vars]
spss.Submit("DESCRIPTIVES"+" ".join(varlist))
END PROGRAM.

Ahora, ya deberías estar familiarizado con la mayoría de los comandos y


líneas de código que se utilizan para crear esta GUI. En este ejemplo,
queremos que el cuadro de diálogo sea capaz de crear una lista de todas las
variables de escala dentro de un conjunto de datos determinado. Para este
mismo propósito, utilizamos el módulo auxiliar spss que es spssaux en las
secciones anteriores (cuando creamos listas separadas de variables
categóricas y variables de escala). Como este cuadro de diálogo también
creará una lista de variables de escala, importamos el módulo spssaux aquí
también. Para ser más precisos, utilizaremos la función 'OpenDataFile()'
que pertenece al módulo spssaux para abrir el archivo de datos del que
queremos listar las variables. Sin embargo, una lista de variables no puede
crearse simplemente abriendo un archivo de datos; necesitamos extraer
información del archivo y, para ello, nos ayudamos de una clase
perteneciente al módulo spssaux que es 'VariableDict'. Esta clase ofrece
métodos que permiten al usuario especificar variables definiendo sus
propiedades como el nombre de la variable o el tipo de datos (si es una
cadena o un número), entre otros.

La mayor parte del código escrito ha sido demostrado también en secciones


anteriores, como la función ‘Destroy()’, la función ‘ShowModal()’, entre
otras.
Capítulo 5
Información del Diccionario
de Conjuntos de Datos

La información del diccionario también se conoce comúnmente como


"Diccionario de datos". Sin embargo, antes de hablar de cómo trabajar con
los datos del Diccionario de cualquier conjunto de datos, debemos entender
primero a qué se refiere. En un diccionario lingüístico estándar tenemos un
índice de las palabras de una lengua y su fonética correspondiente, su país
de origen y la raíz de la que ha derivado la palabra. Toda esta información
adicional sobre una palabra que muestra un diccionario lingüístico puede
considerarse como "elementos" independientes. Del mismo modo, un
diccionario en términos de un lenguaje de programación significa
básicamente una colección descriptiva de varios elementos (esto incluye las
variables, los objetos y otros elementos) en un conjunto de datos particular.
El propósito de un diccionario es facilitar al programador la referencia a
dicha información y su recuperación para implementarla en su código
fácilmente.

Los diferentes lenguajes de programación tienen diferentes herramientas


para obtener estos datos del diccionario y el IBM SPSS Client no es una
excepción. El módulo spss cuenta con varias funciones que permiten al
usuario obtener fácilmente los datos del diccionario del conjunto de datos
que está utilizando el Client. Además, al igual que cada palabra del
diccionario de un idioma está debidamente indexada para que el lector
pueda buscarla fácilmente, los datos del diccionario de un conjunto de datos
también tienen elementos indexados. Por ejemplo, si queremos consultar los
datos del diccionario para buscar una variable en particular, tendrá un
identificador único (la posición de la variable dentro del conjunto de datos)
para esta variable en particular que el usuario puede consultar fácilmente al
recuperarla en un programa. Este identificador único de una variable
también se conoce como ‘index value’ o ‘valor índice’.

Obtener una Variable de un Conjunto de Datos


Continuemos con el tema de la obtención de una variable de un conjunto de
datos haciendo referencia a su valor índice. Como ya hemos comentado, el
módulo spss tiene muchas funciones para ayudarnos a trabajar con los datos
del diccionario. Para recuperar una variable de un conjunto de datos
haciendo referencia a los datos del diccionario, utilizamos la función
'GetVariableName()' para hacerlo. Proporcionando a esta función el valor
índice de la variable que queremos recuperar, nos devolverá el nombre de la
variable que tiene este valor índice especificado.

En la siguiente demostración, el SPSS Client utiliza un conjunto de datos


que tiene un total de sólo dos variables (para mantener las cosas simples).
El bloque de programa importa el módulo spss para utilizar la función
'GetVariableName()' y obtener el nombre de las variables con el valor
índice que le proporcionamos.
DATA LIST FREE /var1 var2.
BEGIN DATA
1234
END DATA.
BEGIN PROGRAM.
import spss
print "The name of the first variable in file order is (var1): " \
+ spss.GetVariableName(0)
print "The name of the second variable in file order is (var2): " \
+ spss.GetVariableName(1)
END PROGRAM.

Realmente, no siempre queremos obtener una variable utilizando su valor


índice. Por lo general, los conjuntos de datos son muy grandes y averiguar
el valor índice de las variables requeriría una gran cantidad de tiempo antes
de poder hacer algo productivo. En estos casos, un analista de datos se
familiarizaría con las propiedades de las variables al entender el conjunto de
datos. En estos casos, el enfoque para recuperar las variables que queremos
sería crear un bloque de programa que recorra todo el conjunto de datos y
devuelva una lista de todas las variables incluidas en el conjunto de datos.
Una vez que tenemos la lista de las variables, podemos seleccionar las que
tienen propiedades específicas. Para este trabajo, utilizamos una función
con la que ya deberías estar familiarizado, la función
'GetVariableCount()'. Aquí hay una demostración de cómo hacer esto:
DATA LIST FREE /var1 var2 var3 var4.
BEGIN DATA
14 25 37 54
END DATA.
BEGIN PROGRAM.
import spss
for i in range(spss.GetVariableCount()):
print spss.GetVariableName(i)
END PROGRAM.

En este ejemplo, estamos usando principalmente dos funciones importantes,


primero, la función ‘range()’ para decirle al programa cuál debe ser el
límite de búsqueda y segundo la función ‘GetVariableCount()’ que crea
una lista detallando el número total de variables. Al definir el rango de
búsqueda, debemos tener cuidado de especificar el rango adecuado porque
el índice comienza desde 0, en lugar de 1. Así, si un conjunto de datos tiene
un total de 80 variables, entonces establecemos el rango en 79. Por eso
utilizamos la función ‘GetVariableCount()’ para que nos diga cuántas
variables tiene el conjunto de datos y luego establecemos el rango en
consecuencia. En la siguiente declaración, utilizamos la función
‘GetVariableName()’ para devolver los nombres de las variables que el
programa ha buscado dentro del rango especificado.

Separación Automática de Variables Para el Análisis


La mayoría de las veces, un usuario que trabaja con el IBM SPSS Client
tendrá que explorar el conjunto de datos para entender cómo enfocar un
proyecto. Este proceso de análisis exploratorio de datos puede ser muy
agitado y consumir mucho tiempo si el usuario no conoce los métodos y
técnicas adecuados para hacerlo. El usuario puede comprender mejor el
conjunto de datos y el proceso de análisis exploratorio puede ser más fácil
si separa las variables categóricas de las variables de escala del conjunto de
datos y las coloca en listas separadas. Esto se debe a que estas dos variables
pueden proporcionar al usuario una comprensión profunda de la estructura
y el contenido del conjunto de datos, por lo que centrarse en estas variables
puede ser realmente útil.

Cuando se adopta este enfoque, se recomienda ejecutar un comando


‘FREQUENCIES’ en las variables categóricas y un comando
‘DESCRIPTIVES’ en las variables de escala. Sin embargo, no podemos
hacer esto cuando las variables categóricas y de escala están mezcladas en
el conjunto de datos. Por lo tanto, tendríamos que hacer listas separadas y
esta tarea ya se ha demostrado también en el capítulo anterior. Sin embargo,
en esta sección, facilitaremos aún más esta tarea automatizando el listado de
las variables categóricas y de escala. Para eso, utilizamos una propiedad
común en ambas variables y ésta es sus niveles de medición. La idea
principal es que el programa diferencie entre las dos variables y las coloque
en los listados correspondientes haciendo referencia a la variación de sus
niveles de medición. De esta manera, las cosas se vuelven mucho más
fáciles de manejar y podemos simplemente enviar los comandos
correspondientes para la lista de variables categóricas y de escala al mismo
tiempo, es decir, maximizar la eficiencia. Aquí hay un bloque de programa
que demuestra cómo hacer esto:
*python_summarize_by_level.sps.
BEGIN PROGRAM.
import spss
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
catlist=[ ]
scalist=[ ]
for i in range(spss.GetVariableCount()):
varName=spss.GetVariableName(i)
if spss.GetVariableMeasurementLevel(i) in ['nominal', 'ordinal']:
catlist.append(varName)
else:
scalist.append(varName)
if len(catlist):
categoricalVars = " ".join(catlist)
spss.Submit("FREQUENCIES " + categoricalVars + ".")
if len(scalist):
scaleVars = " ".join(scalist)
spss.Submit("DESCRIPTIVES " + scaleVars + ".")
END PROGRAM.

En este punto, el bloque de programa de ejemplo debería ser muy fácil de


entender. Así que vamos a repasarlo sin entrar en demasiados detalles.

A partir de las sentencias de importación y envío, estamos


inicializando listas vacías separadas para las variables categóricas
(catlist) y las variables de escala (scalist) para el conjunto de datos
que está utilizando actualmente el SPSS Client.

A continuación, el programa obtiene el nombre de la variable que


tienen el valor índice ‘i’. para eso se utiliza la siguiente sentencia -
‘spss.GetVariableName(i)’.

Una vez que el programa ha recuperado la variable, explora su nivel


de medición categorizándola como una de las cuatro cadenas -
nominal, ordinal, escala y desconocida. Dependiendo del nivel de
medición de la variable, ésta se clasifica como variable categórica o
como variable de escala. Si la variable especificada se mide como
‘nominal’ u ‘ordinal’, se coloca automáticamente en la catlist. Si su
nivel de medición no pertenece a la categoría nominal u ordinal,
entonces se coloca simplemente en la scalist. Para añadir un
elemento a una lista específica, utilizamos la función ‘append()’del
módulo Python.

Para evitar cualquier error, nos aseguramos de que el programa no


envíe comandos para una lista que no tenga ningún elemento. Para
eso, implementamos una sentencia condicional acompañada de la
función len(). De esta manera, si la lista de variables categórica está
vacía, entonces la función len(catlist) devolverá un valor de ‘0’ y
esto pondrá la lógica del condicional en ‘False’. Del mismo modo, si
la lista de variables de escala está vacía, la función len(scalist)
devolverá un valor de ‘0’ y una lógica condicional de ‘False’.

Listado de Variables que Tienen un Formato Específico


En los conjuntos de datos, diferentes variables pueden tener diferentes
formatos. Del mismo modo, también hay variables que tienen los mismos
formatos— por lo que la búsqueda de un determinado grupo de variables en
función de sus formatos se convierte en un posible enfoque para el análisis
de datos. La información sobre el formato de una variable también se
incluye en el ámbito del diccionario de datos. Debido a esto, existen
funciones disponibles en el módulo spss para ayudarnos también en estas
tareas. Para averiguar los formatos con los que se muestran las variables
dentro de un conjunto de datos, utilizamos una función conocida como
'spss.GetVariableFormat()'. Proporcionamos a esta función la variable
cuyo formato queremos averiguar y a cambio, la función nos dará un valor
de cadena que tendrá la información del formato de la variable. Una vez
que hayas adquirido una lista de los diferentes formatos de variables,
notarás que los formatos tienen dos partes, una parte alfabética y otra
numérica. Por ejemplo, aquí hay una colección de formatos de variables
tomados de un conjunto de datos - ‘F4’, ‘ADATE10’, ‘DOLLAR8’. Para
reunir todas las variables con el mismo formato de visualización, podemos
utilizar sólo la parte alfabética de su formato para usarla como filtro de
búsqueda. Por ejemplo, si queremos reunir todas las variables con formato
"DOLLAR8", podemos utilizar "DOLLAR" como parámetro de búsqueda.
El siguiente bloque de código demuestra esta técnica:
def VarsWithFormat(format):
"""Return a list of variables in the active dataset whose
display format has the specified string as the alphabetic part
of its format, e.g. "TIME".
"""
varList=[ ]
format=format.upper()
for i in range(spss.GetVariableCount()):
vfmt=spss.GetVariableFormat(i)
if vfmt.rstrip("0123456789.")==format:
varList.append(spss.GetVariableName(i))
return varList

Aquí hay una explicación de los elementos importantes en este bloque de


código:

Este programa completo es básicamente una función definida por el


usuario escrita en Python. Esto es evidente desde la primera
declaración donde estamos definiendo una función personalizada
'VarsWithFormat()'. Sólo tenemos que proporcionar esta función
con un argumento.
A continuación, creamos un objeto que contendrá las variables que
serán seleccionadas por el programa desde el conjunto de datos
activos. Este es el objeto varList y como es un contenedor que
todavía va a contener las variables, necesita ser inicializado sin
ningún valor. Para eso, se utiliza el operador 'equal' y se le asigna un
valor nulo encerrado entre corchetes.
En este caso, sabemos que la parte alfabética de los formatos de las
variables está en mayúsculas. Como vamos a comparar el formato
especificado por nosotros con el formato que el programa ve con la
variable en el conjunto de datos, es importante que la variable
'format' esté también en mayúsculas. De lo contrario, el programa
no identificará las variables con los mismos formatos debido a la
diferencia de mayúsculas.
Ya que el formato de la variable recuperado por la función
'GetVariableFormat()' tendrá tanto la parte alfabética como la
numérica, la comparación fallará si lo dejamos así. Para solucionar
esta inconsistencia, utilizamos un método de la clase string de
Python que es 'rstrip()'. Así, si el formato recuperado por la función
tiene una porción numérica, el 'rstrip()' eliminará los números que
se le hayan especificado en los argumentos, como se muestra en el
bloque de código anterior.
He aquí otro ejemplo para mostrar esta técnica y aclarar cualquier confusión
en la implementación de las funciones y los métodos. En este ejemplo, el
bloque de programa busca entre las variables del conjunto de datos y
muestra las que tienen el mismo formato (en este caso, el formato utilizado
como filtro de búsqueda es 'TIME').
*python_list_time_vars.sps.
DATA LIST FREE
/numvar (F4) timevar1 (TIME5) stringvar (A2) timevar2 (TIME12.2).
BEGIN DATA
1 10:05 a 11:15:33.27
END DATA.

BEGIN PROGRAM.
import samplelib
print samplelib.VarsWithFormat("TIME")
END PROGRAM.

Cuando ejecutamos este bloque de código, obtenemos el siguiente


resultado:
['timevar1', 'timevar2']

En este ejemplo, especificamos un total de cuatro variables junto con sus


formatos mediante un comando conocido como 'DATA LIST'. La mitad de
estas variables tienen el formato TIME mientras que las otras dos tienen
formatos diferentes (F4 y A2). Sin embargo, observa que las variables que
tienen el mismo formato pero los formatos tienen porciones numéricas
diferentes. Por eso usamos el método rstrip() para quitar las porciones
numéricas antes de comparar los formatos. El siguiente comando 'BEGIN
DATA' se utiliza para generar un 'caso de ejemplo' en el que el programa
puede referirse a estas cuatro variables.
En el bloque de programa actual, utilizamos una sentencia import para
incluir un módulo conocido como 'samplelib'. La razón por la que
incluimos este módulo es que contiene la función que definimos
anteriormente y para utilizar 'VarsWithFormat()', necesitamos el módulo
'samplelib' para hacerlo. Sin embargo, es importante tener en cuenta que
antes de poder utilizar este módulo, debemos poner el archivo del módulo
en el directorio del paquete de Python.

Verificación de la Presencia de una Variable en un Conjunto de


Datos
Es un escenario común en el que se quiere ejecutar una sintaxis de comando
específica sólo si el conjunto de datos tiene una variable particular. En otras
palabras, puedes crear un bloque de programa que tenga una parte
específica que sólo se ejecutará si el bloque de programa detecta una
variable particular dentro del conjunto de datos. La creación de un bloque
de programa de este tipo no es en absoluto infrecuente. Al contrario, hace
que el bloque de programa sea más útil. Por ejemplo, si estás trabajando con
varios conjuntos de datos y necesitas procesarlos en un plazo limitado,
puedes facilitar el trabajo clasificando todos los conjuntos de datos en
función de tus variables. Por ejemplo, tienes varios conjuntos de datos que
contienen información sobre los registros de tus empleados. Este conjunto
de datos también tiene una variable que representa el género de cada
empleado. En tal escenario, tendrás la oportunidad de categorizar los datos
en dos categorías basadas en la variable de género y luego procesarlos con
bloques de programa y obtener datos estadísticos que representan ambos
grupos de género por separado. Esto hace que tu trabajo sea más limpio,
fácil y rico en información.

Ahora consideremos este mismo escenario y construyamos un bloque de


programa correspondiente que compruebe si existe una variable dentro de
un conjunto de datos y ejecute una sintaxis de comando basada en su
presencia. En este caso, utilizaremos una variable denominada ‘gender’. El
siguiente bloque de programa demuestra esta técnica:
*python_var_exists.sps.
BEGIN PROGRAM.
import spss
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
for i in range(spss.GetVariableCount()):
name=spss.GetVariableName(i)
if name.lower()=="gender":
spss.Submit(r"""
SORT CASES BY %s.
SPLIT FILE
LAYERED BY %s.
""" %(name,name))
break
END PROGRAM.

Empecemos por desglosar el código:

Utilizamos el ‘spss.GetVariableCount()’ para buscar todas las


variables presentes dentro del sistema con el rango de búsqueda
establecido en el valor índice ‘i’.

Luego, utilizamos ‘spss.GetVariableName()’ para poder acceder a


los nombres de las variables y pasándole el argumento de ‘i’ (que es
el valor índice), obtenemos el nombre de la variable en la posición
del índice de ‘i’.

De las secciones anteriores, ya deberías tener claro que Python es un


lenguaje de programación que es muy sensible a las mayúsculas y
minúsculas. Así, cuando Python ve una variable ‘GENDER’ la
considerará como una variable completamente diferente a ‘gender’.
Por lo tanto, para asegurarnos de que no ignoramos ninguna variable
de género porque está en un caso diferente al que hemos
especificado, tenemos que poner todas las variables devueltas por la
función en mayúsculas o en minúsculas. Esto asegura que las
variables que devuelve la función estarán en la misma letra que la
variable con la que la estamos comparando. Por eso, al utilizar el
operador de comparación de igualdad con la variable name,
utilizamos también el método lower() con ella. De este modo, cada
variable devuelta por la función ‘spss.GetVariableName()’ será
convertida a minúsculas y luego comparada con ‘gender’.

Luego, simplemente utilizamos la técnica si ‘string substitution’


junto con la función submit(). Las tres comillas que se pasan como
argumento a la función se utilizan en realidad para pasar una sintaxis
de comando a la función. Así, aplicando el condicional ‘if’, el
bloque de programa buscará primero entre las variables del conjunto
de datos y si encuentra una variable ‘gender’, ejecutará la función
Submit() donde el nombre de la variable se proporciona a la sintaxis
del comando a través de la sustitución de cadenas.
Finalmente, utilizamos la sentencia ‘break’ que indica al programa
que salga del loop una vez que recupere una variable ‘gender’ y
ejecute un comando sobre ella.

Poner las Variables Numéricas y de Cadena en Listas


Separadas
En esta sección, discutiremos cómo podemos hacer uso del método a través
del cual la función ‘GetVariableType()’ determina si una variable es una
cadena o numérica. Generalmente, cuando la función detecta una variable,
le asigna un valor. Si la variable tiene varios caracteres, el valor que le
asigna la función representa la longitud de los caracteres de la variable y se
interpreta como una variable de cadena, en cambio si la variable es un
número y no tiene caracteres, entonces la función le asigna el valor ‘0’ y el
programa la interpreta como una variable numérica.
Podemos utilizar esta propiedad de la función ‘GetVariableType()’ para
separar las variables numéricas de las de cadena y luego utilizar un montón
de otros métodos y funciones para colocarlas en listas separadas. Esto
facilita el análisis de los datos.

El siguiente bloque de programa de Python demuestra cómo podemos


lograr esto:
*python_list_by_type.sps.
BEGIN PROGRAM.
import spss
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
numericVars=[ ]
stringVars=[ ]
for i in range(spss.GetVariableCount()):
if spss.GetVariableType(i) == 0:
numericVars.append(spss.GetVariableName(i))
else:
stringVars.append(spss.GetVariableName(i))
print "String variables:"
print "\n".join(stringVars)
print "\nNumeric variables:"
print "\n".join(numericVars)
END PROGRAM.

En este bloque de programa de ejemplo, al igual que inicializamos


catlist y scalist para acomodar las variables categóricas y de escala
respectivamente, estamos inicializando dos listas vacías separadas
para acomodar las variables numéricas (numericVars) y las variables
de cadena (stringVars) también.

Ahora, implementamos la función GetVariableType()’ para saber si


la variable numérica o de cadena basándonos en el valor que
devuelve la función. Adicionalmente, usamos el condicional ‘if’ y el
operador ‘equality’ junto con el método append() para formar una
estructura de instrucciones automatizada donde si la función
devuelve un valor de ‘0’ (esto significaría que la variable es
numérica), entonces esta variable será añadida a la lista
numericVars. Usando el condicional ‘if’, podemos añadir el
condicional ‘else’ desde el programa añadirá cada variable para la
cual la función no devuelve un valor de ‘0’ a la lista stringVars.
Esto se debe a la suposición básica que hicimos. Si la variable no es
numérica, entonces lógicamente debería ser una variable de cadena.

En la parte final de este bloque de programa, traemos un formato


ordenado y limpio a las listas mismas. Utilizando el método join(),
todas las variables que se añadan a las listas se unirán literalmente y
mediante la implementación de una secuencia de escape ‘\n’, cada
elemento que se una se separará de los demás mediante un salto de
línea. Al final, el resultado mostrado por el programa estará
correctamente formateado con espacios y todas las variables estarán
disponibles en sus respectivas listas.
Capítulo 6
Realización de Diferentes
Tareas en los Datos de Casos

En este capítulo, nos centramos en las características del complemento de


integración de Python para el SPSS Client que permite a los usuarios
realizar diferentes tareas en los datos de casos de cualquier conjunto de
datos. Con las funciones, métodos y clases que proporciona Python junto
con los módulos de SPSS, podemos:

Cargar cualquier conjunto de datos en el SPSS Client y leer los datos


de casos correspondientes de este conjunto de datos.

Construir nuestras propias variables y añadirlas a estos conjuntos de


datos

Incluir nuevas instancias de datos de casos en cualquier conjunto de


datos añadiéndolas mediante el método append.

Estas tareas pueden considerarse tan importantes para un analista de datos


como lo es poder caminar para las personas normales. La comparación
entre estas dos tareas no pretende ser exagerada. Al contrario, piensa en lo
importante y fundamental que es la capacidad de mover nuestras
extremidades. Del mismo modo, la capacidad de trabajar con datos de casos
es igualmente importante, ya que hace posible que el analista de datos se
encargue de ciertos proyectos y tareas que de otro modo serían muy
difíciles.

Generalmente, trabajar con datos de casos implica utilizar los métodos de


una de las clases del módulo spss que es la clase 'Cursor'. Del mismo
modo, si queremos trabajar con varios conjuntos de datos manteniéndolos
abiertos al mismo tiempo, podemos utilizar los métodos de otra de las
clases del módulo spss que es la clase 'Dataset'. A la hora de trabajar con
datos de casos, tenemos dos opciones; podemos utilizar la clase 'Cursor' o
el módulo 'spssdata'. Sin embargo, en este capítulo sólo nos centraremos
en cómo utilizar la clase 'Cursor'.

La Clase Cursor
Cuando usamos la clase de 'Cursor', se nos da la opción de usar esta clase
en uno de los tres modos:

1. Modo Lectura - este modo de uso nos da la capacidad de leer los


datos de casos de cualquier conjunto de datos especificado o del
conjunto de datos actualmente activo.

2. Modo Escritura - como su nombre lo indica, este modo de la clase


cursor permite al usuario agregar un valor de caso a un conjunto de
datos en particular. Este valor de caso es generalmente una variable.

3. Modo Append (Añadir) - Este modo es ligeramente diferente


comparado con el modo de escritura en el sentido de que en el modo
de escritura, añadiríamos valores de casos al conjunto de datos, en el
modo de apéndice, simplemente añadimos casos enteros al conjunto
de datos.

Antes de proceder a utilizar los métodos de la clase cursor en un bloque de


programa, debemos hacer algunos preparativos. Los preparativos incluyen
generar una instancia utilizable de la clase cursor dentro del programa y, a
continuación, almacenar esta instancia de la clase cursor dentro de una
variable (Python) para que el programa pueda referirse a ella en el código
futuro. Aquí hay una demostración simple de cómo hacer esto:
dataCursor = spss.Cursor(accessType='w')

En esta demostración, estamos pasando un argumento al método


spss.Cursor() y este argumento básicamente especifica el modo de la clase
cursor que queremos utilizar. En este ejemplo, establecemos el valor del
argumento ‘accessType’ a ‘w’. Esto significa que queremos utilizar el
modo de escritura. Si queremos usar el modo de lectura, entonces
pasaríamos el valor ‘r’ a este argumento, de forma similar, para usar el
modo de apéndice, pasaríamos el valor ‘a’ al argumento.

Uso de la Clase Cursor para Leer Datos


Llegados a este punto, debería ser obvio el planteamiento que hay que hacer
para utilizar la clase cursor para leer datos de la clase, es decir, ejecutar una
instancia de la clase cursor y utilizar en modo lectura. Para ello, tendríamos
que utilizar la siguiente sentencia (sólo cambiando el valor del argumento,
el resto de la sintaxis sigue siendo la misma):
dataCursor = spss.Cursor(accessType='r')

Si utilizas la sentencia anterior para ejecutar la instancia de la clase cursor


sin pasarle el argumento ‘accessType’, entonces por defecto, el modo de
acceso se establecerá en ‘modo lectura’ o ‘read mode’. Esta función se
implementó a partir de la versión 15.x de IBM SPSS Client. En resumen, si
deseas utilizar la clase cursor en modo de lectura, puedes hacerlo sin
especificar también el argumento de tipo de acceso. En este caso, la
sentencia se escribiría como:
dataCursor = spss.Cursor()

Cuando usamos esta sentencia (ya sea con el argumento de tipo de acceso o
sin él), el programa asume que el usuario requiere los datos de caso para
cada variable dentro del conjunto de datos especificado. La razón por la que
mencionamos esto es porque además del argumento de tipo de acceso,
también podemos pasar al método spss.Cursor() un argumento adicional
que especifica las variables que queremos que recupere. Este argumento es
básicamente el valor índice que representa la posición de las variables
correspondientes dentro del conjunto de datos especificado. Por ejemplo,
digamos que estamos trabajando con un archivo de datos con el nombre
‘demodata.sav’. Cargamos este archivo de datos en el SPSS Client para
que sea el conjunto de datos actualmente activo. Ahora, queremos leer los
datos de caso de las variables, pero no queremos hacerlo para cada variable,
sino que queremos utilizar el modo lectura en un número selecto de
variables. Para eso, pasamos el valor índice de las variables, en este caso,
las variables en la posición 2 y 9, que queremos leer como argumento al
método Cursor():
dataCursor = spss.Cursor([2,9])

Ahora vamos a discutir el resto de usos con el modo de lectura de la clase


cursor en ejemplos discretos, ya que no hay mucho que hablar de lo
contrario.
Obtener Todos los Datos de Una Sola Vez
Uno de los usos de la ejecución de una instancia de la clase cursor en ‘modo
lectura’ es que podemos implementar ciertos métodos en esta instancia del
cursor que finalmente nos permitirán obtener todos los datos de casos de
una sola vez. El siguiente bloque de programa Python demuestra cómo
podemos hacer esto:
*python_get_all_cases.sps.
DATA LIST FREE /var1 (F) var2 (A2).
BEGIN DATA
11 ab
21 cd
31 ef
END DATA.
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor()
data=dataCursor.fetchall()
dataCursor.close()
print "Case data:", data
END PROGRAM.

En este bloque de programa de ejemplo, importamos el módulo spss para


utilizar la clase Cursor y luego ejecutamos una instancia de esta clase
utilizando la sentencia spss.Cursor(). Para obtener todos los datos de casos,
utilizamos un método de la clase cursor que es 'fetchall()'. Entonces
asignamos una variable a la sentencia 'dataCursor.fetchall()'. De esta
manera, todos los datos de casos y las variables correspondientes obtenidas
por el método se almacenarán en la variable 'data'. Es importante recordar
que siempre que una instancia de la clase cursor esté abierta (en este caso el
objeto dataCursor), entonces el usuario no puede implementar la función
Submit() del módulo spss. Por lo tanto, una vez que hayamos terminado de
usar la clase cursor, debemos cerrarla siempre usando el método close()
para evitar cualquier conflicto de error dentro del programa. Si ejecutamos
este bloque de programa de ejemplo, se mostrará el siguiente resultado:
Case data: ((11.0, 'ab'), (21.0, 'cd'), (31.0, 'ef'))

Antes de pasar al siguiente ejemplo, vamos a discutir brevemente lo que


significa este resultado. En el resultado devuelto por la clase cursor, lo que
estamos viendo es un tipo de lista de Python que se llama "tuple". En las
listas, podemos efectivamente modificar los elementos en ella, es decir,
eliminar, añadir o cambiar los elementos, pero en una tuple, no tenemos
permiso para hacer algo así. El bloque de programa del ejemplo que utiliza
la clase cursor devuelve un total de tres tuples y cada una representa los
datos de casos dentro del conjunto de datos. Además, las tuples también se
muestran en el resultado según su ubicación original en el conjunto de
datos. En otras palabras, la primera tuple del resultado es también el primer
dato del caso en el conjunto de datos. Aunque no podemos modificar
directamente las tuples, sí podemos sustituirlas por otra tuple. Si realmente
necesitamos hacer cambios en una tuple, la única manera de hacerlo es
crear otra y sustituirla por la que queremos modificar.

En cada tuple, puedes ver dos elementos. El elemento numérico es el ‘data-


value’ del elemento asociado, la variable. En este caso, la primera tuple nos
dice que la variable ‘ab’ tiene un valor de datos de ‘11.0’. Del mismo
modo, la variable ‘cd’ tiene el valor de datos de ‘21.0’ y la variable ‘ef’
tiene el valor de datos ‘31.0’.
Si el conjunto de datos tiene un montón de valores faltantes. Entonces,
durante el proceso de recuperación, Python asigna a estos valores faltantes
el tipo de datos ‘None’. Si algún valor tiene el tipo de datos ‘None’,
significa que ese valor no está presente en el conjunto de datos.
Obtener Datos de Casos en Secuencias
En este ejemplo, hablaremos de la forma en que podemos obtener los datos
de casos del conjunto de datos activos en secuencias en lugar de hacerlo de
una sola vez. Para eso, tendremos que utilizar otro método que también
pertenece a la clase cursor. Este método es ‘fetchone()’. El siguiente
bloque de programa demuestra cómo podemos implementar este método de
forma práctica:
*python_get_cases_sequentially.sps.
DATA LIST FREE /var1 (F) var2 (A2).
BEGIN DATA
11 ab
21 cd
END DATA.
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor()
print "First case:", dataCursor.fetchone()
print "Second case:", dataCursor.fetchone()
print "End of file reached:", dataCursor.fetchone()
dataCursor.close()
END PROGRAM.

En este bloque de programa, estamos utilizando el método fetchone() un


total de tres veces. En otras palabras, el bloque de programa obtiene los
datos de casos (los valores del caso junto con sus correspondientes
variables) en tres secuencias. Cuando se llama al método por primera vez,
recuperamos los primeros datos de casos. En la segunda llamada,
recuperamos los datos del segundo caso. Como el conjunto de datos que
estamos utilizando tiene sólo dos casos, la tercera llamada no podrá
recuperar ningún dato de caso y en su lugar, devolverá un valor de 'None'
que representa que los datos del tercer caso están vacíos. Al ejecutar este
bloque de programa, obtenemos el siguiente resultado:
First case: (11.0, 'ab')
Second case: (21.0, 'cd')
End of file reached: None

Obtener Datos de Casos para una Variable Específica


En este ejemplo, demostraremos cómo podemos obtener los datos de casos
para una variable específica dentro del conjunto de datos activos. La
implementación del código es muy simple y directa. El siguiente bloque de
programa lo demuestra:
*python_get_one_variable.sps.
DATA LIST FREE /var1 (F) var2 (A2) var3 (F).
BEGIN DATA
11 ab 13
21 cd 23
31 ef 33
END DATA.
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor([2])
data=dataCursor.fetchall()
dataCursor.close()
print "Case data for one variable:", data
END PROGRAM.

En este bloque de programa, aunque estamos utilizando el método


fetchall(), éste queda anulado por el argumento que pasamos al método
spss.Cursor() que es el valor índice de la variable que queremos que
recupere. Por lo tanto, al especificar la posición del índice de la variable
para el conjunto de datos activos, el método sólo limitará el proceso de
recuperación a la variable presente en esta posición dentro del conjunto de
datos activos e ignorará el resto de las variables dentro de los datos de
casos.
Al ejecutar este bloque de programa con el conjunto de datos activos
correspondiente, se obtiene el siguiente resultado:
Case data for one variable: ((13.0,), (23.0,), (33.0,))

Datos Faltantes
No todos los conjuntos de datos que utilicemos estarán completos y no
tendrán valores faltantes en los datos de casos. Para recrear este escenario,
usaremos un conjunto de datos que tenga datos faltantes y luego crearemos
un bloque de programa que obtendrá los datos de casos de este conjunto de
datos. Este bloque de programa es el siguiente:
*python_get_missing_data.sps.
DATA LIST (',') /numVar (f) stringVar (a4).
BEGIN DATA
1,a
,b
3,,
9,d
END DATA.
MISSING VALUES numVar (9) stringVar (' ').
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor()
data=dataCursor.fetchall()
dataCursor.close()
print "Case data with missing values:\n", data
END PROGRAM.

Cuando ejecutamos este bloque de programa en el conjunto de datos


actualmente activo, obtenemos el siguiente resultado:

Case data with missing values:


((1.0, 'a '), (None, 'b '), (3.0, None), (None, 'd '))

A partir de este resultado, usted podría estar confundido, los valores


faltantes son representados como el tipo de datos de Python 'None' pero
podrías preguntarte por qué hay un espacio en blanco después de las
variables. Bueno, la respuesta es que se supone que un valor definido por el
usuario debería estar en el espacio en blanco después de las variables, pero
como no hay tal valor en el conjunto de datos, el programa lo deja en
blanco para significar el valor faltante. En este ejemplo, nos encontramos
con dos tipos de valores faltantes, un ‘system-missing value’ y un ‘user-
defined missing value’. Pues bien, ambos tipos de valores faltantes son
generalmente representados por el programa con el tipo de datos de Python
'None'. Sin embargo, cuando implementemos una solución a este problema
de los valores faltantes, los valores faltantes por el usuario serán
considerados como válidos y sólo se dejará un espacio en blanco en el
espacio del valor.

A continuación se muestra una demostración de cómo un usuario puede


insertar un valor en lugar de un valor omitido mediante el método
'SetUserMissingInclude()'. Es a través de esta función también que
especificamos que el valor faltante del usuario necesita ser tratado como
válido también:
DATA LIST (',') /numVar (f) stringVar (a4).
BEGIN DATA
1,a
,b
3,,
9,d
END DATA.
MISSING VALUES numVar (9) stringVar (' ').
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor()
dataCursor.SetUserMissingInclude(True)
data=dataCursor.fetchall()
dataCursor.close()
print "Case data with user-missing values treated as valid:\n", data
END PROGRAM.

Finalmente, cuando ejecutamos este bloque de programa en el mismo


conjunto de datos, obtendremos las siguientes tuples de datos de casos
como se muestra a continuación:
Case data with user-missing values treated as valid:
((1.0, 'a '), (None, 'b '), (3.0, ' '), (9.0, 'd '))

Uso de la Clase Cursor para Crear Nuevas Variables


En esta sección, hablaremos del uso del ‘modo escritura’ de la clase cursor
para crear nuevas variables y sus correspondientes valores de caso y
añadirlos a un conjunto de datos. Lo primero es lo primero, para poder
hacer algo así, primero debemos ejecutar una instancia de la clase cursor,
almacenarla en una variable y luego pasar el argumento ‘accessType’ el
método Cursor() con un valor ‘w’ para iniciarlo en modo escritura. Todo
esto se hace en una sola sentencia como se muestra a continuación:
dataCursor = spss.Cursor(accessType='w')

Un dato rápido para ti es que el ‘modo de escritura’ del método cursor


también cuenta con la funcionalidad del ‘modo de lectura’. Esto se debe
principalmente a una razón y es que cuando creamos nuevas variables y
queremos asignarles valores de caso, esencialmente necesitaríamos leer los
casos también para confirmar que los cambios que hemos hecho se han
aplicado sin error. He aquí una demostración de esta funcionalidad, el
siguiente método cursor está abierto en ‘modo de escritura’ y estamos
pasando un argumento adicional especificando los valores índices de las
variables dentro del conjunto de datos. El método cursor, a pesar de estar
abierto en ‘modo escritura’ obtendrá los valores de los casos y las variables
en estas posiciones de índice
dataCursor = spss.Cursor([1,3],accessType='w')

Ahora pasemos a discutir la capacidad del método cursor en ‘modo


escritura’ que nos permitirá construir una nueva variable (junto con los
valores de caso) y la misma al conjunto de datos activos.
Implementación Práctica
En esta demostración, el bloque de programa de ejemplo generará un total
de dos variables. Una de las variables sólo presenta un valor entero (es una
variable numérica) mientras que la otra sólo presenta caracteres de cadena
(es variable de cadena). A continuación, procedemos a especificar los
valores de caso para estas variables recién creadas y las añadimos en el
primer y tercer caso del conjunto de datos que se carga en el SPSS Client.
*python_add_vars.sps.
DATA LIST FREE /case (A5).
BEGIN DATA
case1
case2
case3
END DATA.
BEGIN PROGRAM.
import spss
cur=spss.Cursor(accessType='w')
# Specify new variables
cur.SetVarNameAndType(['numvar','strvar'],[0,1])
cur.SetVarLabel('numvar','Sample numeric variable')
cur.SetVarLabel('strvar','Sample string variable')
cur.CommitDictionary()
# Set values for the first case in the active dataset
cur.fetchone()
cur.SetValueNumeric('numvar',1)
cur.SetValueChar('strvar','a')
cur.CommitCase()
# Set values for the third case in the active dataset
cur.fetchmany(2)
cur.SetValueNumeric('numvar',3)
cur.SetValueChar('strvar','c')
cur.CommitCase()
cur.close()
END PROGRAM.

Ahora vamos a desglosar este programa de ejemplo y entender lo que


ocurre en detalle.

En este ejemplo, la generación de las nuevas variables se realiza


principalmente a través de un método disponible en la clase Cursor y
este método es ‘SetVarNameAndType()’. Al utilizar este método,
necesitamos especificar las características de la variable, es decir, su
nombre y tipo de datos, mediante argumentos. Generalmente, sólo
necesitamos proporcionar un total de dos argumentos. El primer
argumento es una cadena que será el nombre de la variable y el
segundo argumento es un número entero, que definirá el tipo de
datos de la variable. También podemos crear más de una variable
utilizando este método una sola vez. La única diferencia, en este
caso, sería que proporcionamos una tuple en los argumentos en
lugar de una sola entrada. Así, cuando pasamos el argumento string,
lo hacemos proporcionando una tuple de cadenas y cada tuple
representará otra variable. Lo mismo ocurre al pasar el argumento
que define el tipo de datos de la variable. Si te preguntas cómo
podemos definir el tipo de la variable utilizando sólo un entero,
entonces ya sabes la respuesta. En los capítulos anteriores, hemos
comentado que una variable puede ser de dos tipos en un archivo de
datos SPSS; puede ser una variable numérica o puede ser una
variable de cadena. Por lo tanto, si pasamos un valor de ‘0’ al
segundo argumento, entonces el tipo de la variable se establecerá
como numérico. Del mismo modo, para establecer una variable de
tipo cadena, pasamos un valor entero (que equivale al número de
caracteres de la variable cadena) al primer argumento. En este
bloque de programa de ejemplo en particular, creamos dos variables,
una variable numérica (numvar) y una variable de cadena (strvar)
cuya longitud es ‘1’.

Una vez que el usuario ha especificado el nombre y el tipo de la


variable, tiene la opción de especificar también propiedades
adicionales de la variable. Esto se hace generalmente utilizando un
método conocido como 'SetVarLabel()'. Por ejemplo, podemos
utilizar este método para especificar el nombre de la variable y el
tipo. Además de esto, también podemos especificar el nivel de
medición de una variable, el nivel de la variable o incluso cualquier
valor que falte (aunque pueda parecer confuso, sí, pero algunas
variables tienen valores que faltan intencionadamente). Lo único que
debemos tener en cuenta a la hora de especificar propiedades
adicionales es que debemos especificar explícitamente la variable a
la que estamos haciendo estos cambios. Así, si quieres asignar
algunas propiedades a cuatro variables, entonces tendrás que usar
este método cuatro veces y pasar a cada instancia de este método el
nombre de la variable que estás modificando como primer
argumento.

En este programa de ejemplo, debes estar preguntándote por la


función 'CommitDictionary()'. Es necesario utilizarla porque cada
vez que creamos una nueva variable, el conjunto de datos no sabe de
su existencia. Por lo tanto, no podemos especificar los valores de
caso de esta variable cuando el conjunto de datos es ajeno a ella. Por
lo tanto, primero debemos incluir esta variable en el diccionario de
datos del conjunto de datos antes de proceder a especificar los
valores de caso. La clase Cursor tiene un método que puede realizar
fácilmente esta acción y es el método 'Commit'.
Ahora pasamos a la parte en la que asignamos los valores del caso a
las nuevas variables que acabamos de crear. Sin embargo, esta parte
es un poco complicada porque antes de que podamos escribir los
valores del caso, debemos primero apuntar el cursor a la posición
correcta de los datos de casos. La parte complicada es que no
podemos especificar explícitamente el caso y esperar que el puntero
del cursor lo identifique por sí mismo. Por eso tenemos que hacer
una pequeña maniobra y utilizar el método fetchone() y
fetchmany() para apuntar el cursor hacia el caso correcto. Para
entender mejor este concepto, piensa en estos dos métodos como la
carta de un juego de mesa que indica a los jugadores cuántos
espacios pueden mover sus personajes por el tablero. Si utilizamos
el método fetchone(), el puntero del cursor sólo se moverá un paso a
partir de la posición inicial del primer caso del conjunto de datos. En
otras palabras, si queremos establecer el valor del caso para el
primer caso en el conjunto de datos, entonces usamos el método
fetchone() ya que apuntará al caso inicial en el conjunto de datos.
Por otro lado, el método fetchmany() permite que el cursor se
mueva a través de los casos del conjunto de datos tantos pasos como
se desee. Así, si queremos establecer el valor del caso para el tercer
caso en el conjunto de datos, entonces usamos el método
fetchmany() y le pasamos un valor de 2 como argumento. Esto hará
que el puntero del cursor se mueva dos pasos y llegue al tercer caso
en el conjunto de datos.

Dependiendo del tipo de variable, necesitamos utilizar el método


apropiado para establecer sus correspondientes valores de caso. Por
ejemplo, si queremos establecer el valor de mayúsculas y
minúsculas para una variable numérica, lo haremos utilizando el
método ‘SetNumericValue’. Del mismo modo, si queremos
establecer el valor de mayúsculas y minúsculas para una variable de
cadena, lo haremos mediante el método ‘SetNumericValue’. La
sintaxis para pasar los argumentos es la misma para ambos métodos,
es decir, el primer argumento que se pasa debe especificar el nombre
de la variable a la que nos referimos y el segundo argumento será el
valor de mayúsculas y minúsculas que queremos establecer para esta
variable en el conjunto de datos. Como es de esperar, si no pasamos
el segundo argumento a este método o ni siquiera establecemos el
valor de caso para las variables, éstas se clasificarán como 'Valores
faltantes'. Para las variables numéricas, el valor de caso vacío se
clasifica como un 'Valor Faltante por el Sistema' y en su lugar se
coloca el tipo de dato 'None'. Por otro lado, el valor de caso vacío
para las variables de cadena se clasifica como un 'Valor Faltante
Definido por el Usuario' y sólo se deja un espacio en blanco en lugar
del valor. Por lo tanto, si quieres especificar que una variable
numérica tiene un valor perdido, entonces lo haces proporcionándole
un valor de caso 'None'. En el caso de las variables de cadena, se
puede utilizar la sentencia 'str(None)' para especificar que tiene un
valor de caso que falta.

Finalmente, utilizamos el método 'CommitCase()' para enviar estos


cambios al caso del conjunto de datos. Estos cambios tendrán efecto
una vez que utilicemos la sentencia 'cur.Close()' para terminar la
instancia en ejecución de la clase Cursor.

Uso la Clase Cursor para Añadir Nuevos Casos al Conjunto de


Datos
Para añadir nuevos casos a un conjunto de datos cargado en el SPSS Client,
iniciamos una instancia de la clase Cursor y la ejecutamos en ‘append
mode’ ‘modo añadir’. Para eso, debemos ejecutar la siguiente sentencia:
dataCursor = spss.Cursor(accessType='a')

Ahora, pasemos a discutir ejemplos de cómo podemos implementar


prácticamente la clase cursor en modo añadir (append) para diferentes usos.
Casos Añadidos
En este ejemplo, mantendremos las cosas simples y veremos cuáles son los
métodos y enfoques necesarios para añadir dos casos a un conjunto de datos
que el Client está utilizando:
*python_append_cases.sps.
DATA LIST FREE /case (F) value (A1).
BEGIN DATA
1a
END DATA.
BEGIN PROGRAM.
import spss
cur=spss.Cursor(accessType='a')
cur.SetValueNumeric('case',2)
cur.SetValueChar('value','b')
cur.CommitCase()
cur.SetValueNumeric('case',3)
cur.SetValueChar('value','c')
cur.CommitCase()
cur.EndChanges()
cur.close()
END PROGRAM.

En este bloque de programa de ejemplo, al proporcionar una


variable numérica y una variable de cadena con sus correspondientes
valores de caso, estamos creando esencialmente dos nuevos casos.
Para asignar un valor de caso a la variable numérica, utilizamos el
método 'SetValueNumeric()'. Del mismo modo, para asignar un
valor caso a la variable de cadena, utilizamos el método
'SetValueChar()'. Así como discutimos la sintaxis de los
argumentos para este método de asignación de valor de caso,
hacemos lo mismo aquí también. El primer argumento que se pasa a
ambos métodos es el nombre de las variables, mientras que los
segundos argumentos son sus correspondientes valores de caso.
Como queremos agregar dos casos al conjunto de datos, estamos
creando dos pares de variables numéricas y de cadena para crear dos
casos correspondientes. Después de asignar los valores de caso a un
par de variables y crear un caso, debemos enviar estos cambios al
conjunto de datos, para eso, utilizamos el método 'CommitCase()',
una vez para cada caso. Estas modificaciones tendrán efecto en el
conjunto de datos una vez que cerremos el cursor mediante la
función 'cur.Close()'.

Por último, utilizamos otro método de la clase cursor que es el


método 'EndChanges()'. La razón por la que hacemos esto cuando
añadimos casos y no al escribir variables o valores al caso en un
conjunto de datos es que es importante decirle al puntero del cursor
que hemos terminado de añadir los casos al conjunto de datos. De lo
contrario, si cerramos el puntero del cursor y salimos del programa,
el proceso de añadir se interrumpirá y los cambios que hayamos
especificado se perderán. Esto es evidente en el bloque de programa
de ejemplo, ya que el método 'EndChanges()' se utiliza antes de
terminar el cursor. No podemos utilizar este método después de
terminar el cursor porque la clase Cursor ya habrá salido y los
cambios en los casos del conjunto de datos no se habrán guardado.

Es importante notar que si ejecutamos la instancia de la clase Cursor en


‘modo añadir, no podemos crear o escribir nuevas variables en el conjunto
de datos. Además, ni siquiera podremos utilizar las funcionalidades del
‘modo lectura’ tan bueno como podríamos hacerlo en ‘modo escritura’.
El ‘modo añadir’ se limita a añadir nuevos casos a un conjunto de datos y
nada más. A continuación, discutiremos dos ejemplos más que demuestran
los otros usos posibles de ‘modo añadir’.

Contar Valores Distintos en las Variables


Ahora discutiremos el uso potencial de la clase Cursor en modo de escritura
para tomar cada caso en el conjunto de datos y recoger los datos de los
valores de todas las variables correspondientes. Una vez que el cursor ha
terminado con el análisis cuantitativo, almacena el resultado en una nueva
variable separada del resto. En esta tarea, el cursor ignora tanto los valores
faltantes definidos por el usuario como los del sistema. El siguiente bloque
de programa de ejemplo demuestra cómo podemos implementar de forma
práctica el modo añadir de la clase Cursor para realizar dicha tarea:
*python_distinct_values_across_variables.sps.
DATA LIST (',') /var1 (F) var2 (F) var3 (F) var4 (F).
BEGIN DATA
1,2,3,4
0,1,1,1
2,3, ,2
1,1,3,4
END DATA.
MISSING VALUES var1 (0).
BEGIN PROGRAM.
import spss
cur = spss.Cursor(accessType='w')
cur.SetVarNameAndType(['distinct'],[0])
cur.CommitDictionary()
for i in range(spss.GetCaseCount()):
row = cur.fetchone()
vals = set(row)
vals.discard(None)
cur.SetValueNumeric('distinct', len(vals))
cur.CommitCase()
cur.close()
END PROGRAM.

En esta tarea, requerimos que la clase Cursor básicamente vaya a


través de todos los casos dentro del conjunto de datos activos, reúna
información sobre las variables junto con sus valores y luego
finalmente escriba los datos reunidos hasta ahora en una variable
distinta. Este proceso involucra tanto la lectura a través de los casos
dentro del conjunto de datos como la escritura del resultado en el
resultado, en otras palabras, requerimos tanto la funcionalidad de
lectura como de escritura de la clase Cursor. Al principio de este
capítulo, discutimos que la clase Cursor en 'modo de escritura' tiene
acceso a la funcionalidad de 'modo de lectura' también. Por lo tanto,
elija ejecutar la instancia de la clase Cursor en 'modo de escritura'.
Ahora que la clase Cursor está lista para realizar el trabajo que
queremos, hemos terminado con la mitad de los preparativos. Lo
siguiente que tenemos que hacer es crear una variable independiente
en la que los métodos Cursor escribirán su salida para cada caso.
Para eso, llamamos al método 'SetVarNameAndType()' y
definimos una variable cuyo nombre es 'distinct' y es de tipo
numérico (pasando el valor '0' como segundo argumento). Para
terminar los preparativos, tenemos que guardar esta variable en el
diccionario del conjunto de datos antes de que el puntero del Cursor
comience con la 'tarea de lectura'. Para eso, llamamos al método
'CommitDicitionary()'.
Para la tarea de lectura, queremos que el puntero del Cursor recorra
cada caso del conjunto de datos individualmente en una secuencia.
Para eso, el bloque de programa de ejemplo utiliza el método
'fetchone()'. Aunque podríamos usar el método 'fetchall()', la razón
por la que no usamos ese método aunque estemos tratando con
muchos casos en el conjunto de datos es que esto nos permitirá en
última instancia especificar el valor de la variable distinta para cada
caso manualmente. En lugar de llamar al método 'fetchone()' por
separado para cada caso individual en el conjunto de datos,
implementamos este método dentro de un loop 'for' y especificando
el número total de casos dentro del conjunto de datos utilizando la
función 'spss.GetCaseCount()', el loop iterará hasta que llegue al
último caso en el conjunto de datos. Esto automatiza el uso
secuencial del método 'fetchone()'.

La parte final de este bloque de programa se ocupa de crear un


objeto y descartar cualquier valor perdido recuperado por los
métodos Cursor. El propósito del objeto generado por la función
set() es que pueda contener los valores pasados por la variable
Python 'row' que es básicamente el método 'fetchone()'. Por último,
utilizamos la función discard() junto con el objeto que acabamos de
crear 'vals' y especificamos lo que queremos que se descarte, que es
el tipo de datos de Python 'None'. De este modo, cualquier valor
que falte en los datos de casos del conjunto de datos se eliminará
automáticamente.

Añadir Valores de Percentil de Grupo a un Conjunto de Datos


Esta sección es esencialmente una demostración avanzada de las
capacidades de la clase Cursor y sus métodos para tratar con análisis de
datos complejos que implican cuartiles (un gráfico estadístico que divide las
observaciones o cantidades de un conjunto de datos en cuatro cuartos
iguales). La idea principal de esta demostración es hacer que el SPSS Client
procese un conjunto de datos que contiene información sobre los salarios de
los empleados de una empresa y calcule el cuartil del conjunto de datos
correspondiente. El cálculo de los cuartiles se realiza para cada caso
individual perteneciente a una variable de grupo en el conjunto de datos.
Una vez procesado este cálculo, añadimos estos datos en variables recién
creadas y luego añadimos estas variables en el mismo conjunto de datos.

En esta tarea, esencialmente estamos revisando los datos dos veces. En


primer lugar, el bloque del programa recibe instrucciones para analizar los
datos y luego pasar las observaciones al SPSS Client para procesar los
cuartiles de los casos en las variables de grupo. A continuación, tomamos
los cuartiles calculados para cada caso y los añadimos en las variables
correspondientes.
Aquí está el bloque de programa de ejemplo que prácticamente implementa
los métodos, funciones y clases necesarias para realizar esta tarea:
*python_add_group_percentiles.sps.
BEGIN PROGRAM.
import spss, math
spss.Submit("GET FILE='/examples/data/Employee data.sav'.")
# Create a cursor that will only read the values of jobcat and salary
cur=spss.Cursor(var=[4,5],accessType='w')
cur.AllocNewVarsBuffer(24)

# Accumulate frequencies of salaries for each employment category


salaries={}; counts={}
for i in range(spss.GetCaseCount()):
row=cur.fetchone()
jobcat=row[0]
salary=row[1]
salaries[jobcat]=salaries.get(jobcat,{})
salaries[jobcat][salary]=salaries[jobcat].get(salary,0) + 1
counts[jobcat]=counts.get(jobcat,0) + 1

# Calculate the cutpoint salary value for each percentile for each
# employment category
percentiles={}
for jobcat in salaries:
cutpoints = [int(math.ceil(counts[jobcat]*f)) for f in [.25, .50, .75]]
tempcount=0; pctindex=0
percentiles[jobcat]=[]
salarylist=sorted(salaries[jobcat].keys())
for salary in salarylist:
tempcount+=salaries[jobcat][salary]
if tempcount>=cutpoints[pctindex]:
percentiles[jobcat].append(salary)
pctindex+=1
if pctindex == 3:
break

# Create and populate new variables for the percentiles


cur.reset()
cur.SetVarNameAndType(['salary_25','salary_50','salary_75'],[0,0,0])
cur.CommitDictionary()
for i in range(spss.GetCaseCount()):
row=cur.fetchone()
jobcat=row[0]
cur.SetValueNumeric('salary_25',percentiles[jobcat][0])
cur.SetValueNumeric('salary_50',percentiles[jobcat][1])
cur.SetValueNumeric('salary_75',percentiles[jobcat][2])
cur.CommitCase()
cur.close()
end program.

Repasar todo el bloque de programa y cada línea de código puede ser


realmente aburrido, así que sólo discutiremos los elementos que son
importantes y nuevos.
Para empezar, verás que se ha importado un nuevo módulo que no
hemos utilizado en ningún capítulo de este libro y que es el módulo
'math'. Como su nombre indica, este módulo contiene funciones que
realizan cálculos aritméticos. Este módulo es importante para que el
bloque de programa realice cálculos. Más adelante en este bloque de
código, verás el uso de una función matemática 'ceil()' que pertenece
al módulo math.

A continuación, tenemos que iniciar una instancia de la clase


Cursor en modo de escritura, para que el bloque de programa pueda
leer los datos de casos del conjunto de datos activos. Al iniciar la
instancia de la clase Cursor, especificamos adicionalmente las
variables que queremos que lea y recupere la información pasándole
sus valores índices como segundo argumento. Las variables de las
que queremos obtener los valores están en las posiciones de índice 4
y 5. Estas variables son 'jobcat' y 'salary' respectivamente.

En esta tarea específica, estamos tratando con varios pasos de datos


y, a excepción del primer paso de datos, queremos colocar variables
en el resto de los pasos de datos. Tenemos que hacer algunos
preparativos antes de poder hacer algo así y esta preparación incluye
la asignación de un "tamaño de búfer" para las variables que se van
a fijar. Para hacer esto, necesitamos llamar a un método que es
'AllocNewVarsBuffer()'. Antes de asignar el tamaño del buffer, es
importante saber con qué estamos trabajando. En este bloque de
programa de ejemplo, sabemos que estamos tratando con un total de
tres variables numéricas y como cada variable necesita un espacio
de memoria de 8 bytes, esto suma 24 bytes en total. Por lo tanto, el
tamaño del buffer que necesitamos asignar para las variables que
vamos a añadir en esta tarea debe ser de 24 bytes. Para utilizar el
método 'AllocNewVarsBuffer()', debemos tener cuidado con los
métodos cursor ya que sólo interrumpirán el funcionamiento de este
método. Así, en este ejemplo, debemos tener cuidado de no
implementar el 'AllocNewVarsBuffer()' después de los métodos
fetch() (one, many y all) y de los métodos Commit() (CaseCommit
y CommitDictionary). En resumen, utiliza siempre el método
'AllocNewVarsBuffer()' antes de los métodos Cursor.
Las siguientes líneas del bloque de programa, referidas a la parte
'Acumular frecuencias de salarios para cada categoría de empleo',
son muy utilizadas para este tipo de tareas y han sido
adecuadamente explicadas por el foro oficial de desarrolladores de
IBM y por libros, de uno de los cuales se ha extraído la siguiente
cita:

“El primer paso de datos acumula las frecuencias de cada valor


salarial para cada categoría de empleo. El diccionario Python de
salarios tiene una clave para cada categoría de empleo encontrada
en los datos de casos. El valor asociado a cada clave es a su vez un
diccionario cuyas claves son los salarios y cuyos valores son las
frecuencias asociadas para esa categoría de empleo. El código
salaries[jobcat].get(salary,0) busca en el diccionario asociado a la

categoría de empleo actual (jobcat) una clave igual al valor actual


del salario. Si la clave existe, se devuelve su valor; en caso
contrario, se devuelve 0”.

De forma similar, al hablar de la parte de cálculo de percentiles de este


bloque de programa de ejemplo, la siguiente explicación de la misma fuente
aclara mejor los conceptos:

“El diccionario Python 'percentiles' tiene una clave para cada


categoría de empleo encontrada en los datos de casos. El valor
asociado a cada clave es una lista de los cuartiles para esa
categoría de empleo. Para simplificar, cuando el límite de un cuartil
cae exactamente en un número de caso particular, el valor del caso
asociado (en lugar de una interpolación) se utiliza como cuartil.
Por ejemplo, para una categoría de empleo con 84 casos, el primer
cuartil cae exactamente en el caso 21”.

(Explicación referenciada en: Programación y Gestión de Datos para IBM


SPSS Statistics 20: Una Guía para Usuarios de IBM SPSS Statistics y SAS
por Raynal Levesque e IBM Corp.)
Ahora, pasamos a discutir el resto del bloque de programa de ejemplo.
Una vez que el bloque de programa ha terminado con el primer paso
de datos, necesita prepararse para el siguiente, y para eso, el puntero
del cursor necesita volver a su estado original, en otras palabras,
necesitamos restablecer el puntero de escritura de la clase Cursor.
Para eso, tendremos que llamar al método 'reset()'. Es importante
recordar que siempre que estemos tratando con varios pasos de
datos, necesitamos restablecer el puntero del cursor después de cada
paso de datos. De lo contrario, surgirá un conflicto al definir las
variables para el siguiente paso de datos.

La principal preocupación del segundo paso de datos es


simplemente añadir las variables de salario (que contienen los
valores percentiles) al conjunto de datos especificado. Las tres
variables que se añaden a cada caso en este paso de datos son:
‘salary_25, salary_50 y salary_75.

Creación y Acceso a Múltiples Conjunto de Datos


El complemento de Python para el SPSS Client permite al usuario crear
nuevos conjuntos de datos y acceder a muchos conjuntos de datos
simultáneamente. Este complemento contiene la clase Dataset que permite
realizar las funciones mencionadas anteriormente. Los nuevos conjuntos de
datos se generan como el usuario desee, como la construcción de un
conjunto de datos a partir de conjuntos de datos existentes combinando sus
datos de la forma deseada. Los valores de los casos y las propiedades de las
variables de varios conjuntos de datos pueden leerse y modificarse
simultáneamente, con la ventaja de que cada uno de ellos no tiene que ser
activado explícitamente. Los pasos de datos que contienen los objetos de
datos crean un entorno especializado que se utiliza para construir nuevos
conjuntos de datos y conceden al usuario la posibilidad de acceder también
a varios conjuntos de datos. Las transformaciones pendientes obstaculizarán
el inicio de los pasos de datos a menos que el usuario acceda a los datos de
casos con la clase Cursor.
Inicio de la Clase Dataset
El inicio del paso de datos tendrá prioridad sobre la creación de un objeto
Dataset que es manejado por la clase DataStep. Esta clase se utiliza en
Python con una sentencia e iniciará el paso de datos después de ejecutar las
transformaciones pendientes.
from __future__ import with_statement
import spss
with spss.DataStep () :
< actions to perform within the data step >

La primera sentencia del ejemplo muestra una línea de código


utilizada para asegurar la disponibilidad de Python con una
sentencia y debe preceder a todas las demás líneas de código del
programa.

El paso de datos asociado a un bloque de código se inicia cuando el


programa llega a la función "con spss.DataStep()" y el paso de datos
se inicia tras la ejecución de las transformaciones pendientes. El
bloque de código que se asocia al paso de datos debe tener todos los
datos necesarios dentro de sí mismo.
Una vez que el programa llega al final del bloque, el paso de datos
se termina aunque una excepción impida la finalización normal del
bloque. El objeto Dataset se construye tras el inicio del paso de
datos y se especifica el nombre del conjunto de datos para el proceso
como:
dataset = spss.Dataset ( name="DataSet1" )

La instancia de la clase Dataset que es el conjunto de datos variable de


Python permite al usuario acceder a los datos de casos así como a las
variables en el DataSet1.

Un objeto Dataset se crea para un conjunto de datos activos de dos


maneras, ya sea teniendo el argumento del nombre especificado por
un “*” o asegurándose de que el argumento no está incluido.

El conjunto de datos se llena después de crear un nuevo conjunto de


datos y un objeto Dataset. Esto se consigue mediante el tipo de datos
en Python cuando se especifica cómo "None" o el argumento
nombre especificado por una cadena vacía ' '. El SPSS Client genera
el nuevo nombre para el conjunto de datos en lugar de recuperarlo
de la propiedad asociada del objeto Dataset.
Nota: La clase Dataset y su instancia sólo pueden utilizarse dentro del paso
de datos en el que se generó y no funcionarán fuera de él.
Acceso, Adición o Eliminación de Variables
El objeto Dataset tiene asociado otro objeto conocido como el objeto
VariableList. Proporciona al usuario la posibilidad de acceder a las variables
del conjunto de datos y editarlas añadiendo nuevas o borrando las
originales. Este objeto se toma de la propiedad varlist del objeto Dataset
como:
variableList = dataset.varlist

Nota: El objeto VariableList no puede ser referido como una lista de Python
pero muestra algunas similitudes con ella. Puede hacer que el usuario sea
capaz de añadir e insertar elementos, iterar sobre los elementos y otorga el
soporte de la función Python. La clase VariableList tiene una instancia que
sólo es capaz de funcionar dentro del paso de datos donde fue generada.
Obtener o Configurar las Propiedades de las Variables
El usuario accede a las variables que ya existen a través del objeto
VariableList tras lo cual es posible recuperar o cambiar la propiedad
asociada a esa variable que puede ser el nivel de medición de la variable de
sus atributos personalizados. Especificando el nombre de la variable, el
usuario accede a las variables dentro del objeto VariableList, lo que puede
entenderse como:
variable = variableList['salary']

El nombre de la variable utilizado debe coincidir con el caso que se


especificó cuándo se definió en el SPSS Client, porque Python es sensible a
la mayúsculas y minúsculas. El valor índice de una variable se utiliza para
representar la posición de esa variable se utiliza para representar la posición
de esa variable en el conjunto de datos, asignándose como valor índice de la
primera variable. Este valor índice de la variable también se puede utilizar
para la especificación como:
variable = variableList[5]

Sugiere que la variable posicionada como índice 5 en el conjunto de datos


es a la que hay que acceder. La clase Variable incluye una instancia
“variable” que es una variable Python. La variable asociada a la clase
Variable puede tener sus propiedades obtenidas o establecidas como se
desee debido a las propiedades de la clase Variable. Se puede entender
estudiando el ejemplo:
varLevel = variable.measurementLevel

En este ejemplo, el nivel de medición que es la propiedad de la variable


obtiene y almacena a la variable Python.
Del mismo modo, el ejemplo es el método en el que el nivel de medición se
establece como se desea.
variable.measurementLevel = 'ordinal'

Recorrer un Loop (bucle) de las Variables de una Instancia de


VariableList
Una instancia de la clase Variable puede ser iterada en el orden de los
archivos, de manera que las variables de conjunto de datos se pasen a través
de un loop. Por ejemplo,
for var in dataset.varlist :
print var.name
Cada vez que se repite el loop de las variables del conjunto de datos
asociadas, la instancia de la clase Variable “var” representa cada vez
una variable específica de la instancia VariableList.

Utilizando la función len de Python dada como:


len ( variableList )

El usuario puede acceder al número de variables contenidas en una


instancia VariableList que son iguales al número de variables presentes en
el conjunto de datos asociados.

Añadir Variables
El objeto VariableList incluye el método append o añadir que se utiliza para
permitir al usuario editar el conjunto de datos añadiendo una variable
completamente nueva en él. Esta variable se incluye entonces tanto en el
objeto VariableList como en el conjunto de datos asociado.
Añadir una Variable
El método append del objeto VariableList se utiliza para añadir una nueva
variable como la newvar1 del siguiente ejemplo. La posición de esta nueva
variable se encuentra al final de la lista de variables.
variableList.append ( name='newvar1', type=0 )

Se añade el nombre de la nueva variable y el tipo de variable se


convierte en el argumento del método append. El tipo de variable se
expresa como 0 para las variables numéricas y un entero para una
variable de cadena que es igual a su longitud definida con el valor
máximo de 32767. Es opcional expresar el tipo de variable y se
convierte en numérico por defecto.
Insertar una Variable
A diferencia del método append, el método insert también añade una
variable pero en una posición determinada en la lista de variables. En el
ejemplo se muestra la variable de cadena newvar2 con su longitud definida
de 10 que se inserta en la posición 3 de la lista de variables:
variableList.insert ( name ='newvar2', type =10, index =3 )

El nombre de la variable, su tipo y la posición de índice especificada


en la que se inserta son argumentos del método insert del objeto
VariableList. El tipo de la variable en este método también se
establece como opcional y se devolverá como numérico por defecto.
Adicionalmente, la posición del índice de la variable también es
opcional, y la variable se colocará al final de la lista de variables por
defecto. Si la nueva variable se añade en medio de una lista de
variables, la variable que le sigue tendrá su posición de índice
incrementada en 1 y el resto de las variables por debajo de ella
seguirán de la misma manera.
Eliminar Variables
Las variables contenidas en la instancia de VariableList pueden ser
eliminadas por el usuario, lo que también eliminará esa variable en el
conjunto de datos asociados. Para especificar la variable a eliminar de la
lista, se utiliza su nombre o su posición de índice. Por ejemplo, se puede
eliminar una variable especificando su nombre como:
del variableList ['salary' ]

Del mismo modo, se especifica el número de índice de la variable para


poder localizarla y eliminarla.
del variableList [ 5 ]
Capítulo 7
Trabajar con Bloques de Programa de SPSS
Usando el Lenguaje de Programación R

Python es un lenguaje de programación común utilizado con el SPSS Client


que cuenta con un complemento de integración de SPSS para Python. Del
mismo modo, el lenguaje de programación R está orientado al análisis de
datos, lo que también lo hace ideal para trabajar con el SPSS Client. Para
facilitar a los usuarios la implementación de los recursos y paquetes
disponibles en el lenguaje de programación R, el SPSS Client ofrece a los
usuarios el 'IBM SPSS con el complemento de integración para R'. Al
instalar este complemento en sus sistemas, los usuarios tendrán acceso al
bloque de programas con toda la funcionalidad y capacidades del lenguaje
de programación R. Aunque existe una diferencia entre el uso de R y
Python con la sintaxis de comandos del SPSS Client, al final, todo se reduce
a la preferencia de los usuarios de con qué lenguaje de programación se
sienten más cómodos. Los bloques de programa R son capaces de hacer
todo lo que hacen los bloques de programa Python y viceversa.

En este capítulo, repasaremos los fundamentos del trabajo con bloques de


programa R y comprenderemos las sintaxis básicas.

Trabajar con Bloques de Programa R


Se puede acceder a la funcionalidad del lenguaje de programación R y a los
paquetes R instalados desde los bloques BEGIN PROGRAM R-END
PROGRAM en la sintaxis de comandos instalando R e IBM SPSS Statistics
– Complemento de Integración para R.

Una vez que tenemos el complemento de integración de SPSS instalado en


el sistema, podemos ejecutar el SPSS Client y acceder a los recursos
disponibles en el lenguaje de programación R a través del bloque de
programa 'Begin Program’ y 'End Program' del SPSS Client. La estructura
será así:
BEGIN PROGRAM R.
R statements
END PROGRAM.

El procesador R controla el bloque de programa R por lo que las sentencias


sólo deben contener sentencias R y evitar las sentencias de sintaxis aunque
los bloques de programa formen parte de la sintaxis del comando. Un
ejemplo de este concepto sería:
BEGIN PROGRAM
R. FREQUENCIES VARIABLES=var1, var2, var3.
END PROGRAM.

Si intentamos ejecutar este bloque de programa en el SPSS Client,


simplemente no se ejecutará y, en cambio, generará un error. La razón de
este problema es que el bloque de programa contiene declaraciones que son
sintaxis de comandos que pertenecen al SPSS Client y no al lenguaje de
programación R. Por ejemplo, el comando "Frequencies" no es un comando
R válido.

Un sencillo programa que muestra el texto "Hello, world!" se expresa como


un bloque de programa R en el siguiente ejemplo:
BEGIN PROGRAM
R. cat("Hello, world!")
END PROGRAM.

Este programa puede ejecutarse para obtener ayuda para la función 'R
paste()'. Del mismo modo, utilizando el siguiente bloque de programa,
podemos acceder fácilmente a la página web del manual de ayuda de R:

En el bloque de programa dado, se utiliza una función perteneciente al


lenguaje de programación R para escribir la salida en la salida estándar de
R, esta función es 'R.cat()'. Si el bloque de programa tiene acceso a un
visualizador externo (como el visualizador nativo del SPSS Client),
entonces la salida se transfiere a un elemento de registro en el Visualizador
de Estadísticas de SPSS. El resultado obtenido de la función de impresión
de R escrito en la salida estándar de R se dirige de forma similar a un
elemento de registro.

Visualización de la Salida de R
Cualquier salida mostrada desde R para la versión 18 de SPSS Statistics y la
salida de la consola y los gráficos se redirigen al visualizador de SPSS
Statistics.

La salida mostrada para SPSS Statistics versión 18 y superior además de la


salida de consola y los gráficos de R se redirigen todos, por defecto, al
visualizador de SPSS Statistics. Las salidas implícitas generadas a partir de
las funciones de R dentro de una consola de R también se redirigen al
visualizador de SPSS Statistics, como el valor medio cuando se utiliza una
función de media, o los coeficientes del modelo y los estadísticos obtenidos
por la función glm. La función SetOutput escrita como spsspkg se utiliza
para cambiar la visualización de la salida de R.

Acceso a la Ayuda de R dentro de IBM SPSS Statistics


En SPSS Statistics, si se incluye una llamada a la función de ayuda de R
presente en el bloque 'BEGIN PROGRAM R-END PROGRAM', es posible
acceder a la ayuda de las funciones de R cuando se ejecuta el bloque de
programa. Por ejemplo:
BEGIN PROGRAM R.
help(paste)
END PROGRAM

Este programa se puede ejecutar para obtener ayuda para la función ‘R


paste()’. Del mismo modo, utilizando el siguiente bloque de programa,
podemos acceder fácilmente a la página web del manual de ayuda de R:
BEGIN PROGRAM R.
help.start()
END PROGRAM
Depuración
Las funciones del navegador R, debug y undebug para SPSS Statistics
versión 18 y superior pueden utilizarse dentro de los bloques BEGIN
PROGRAM R-END PROGRAM. También se pueden utilizar desde el
código de implementación para los comandos de extensión implementados
en R, lo que significa que las herramientas de depuración están, al igual que
en la consola de R, disponibles para su uso. Entre estas funciones, la
función de navegador se utiliza para mostrar una ventana de consola
durante la ejecución para que el usuario pueda inspeccionar objetos en el
entorno asociado como valores de variables y expresiones. La función de
depuración marca una función específica de R para la depuración, así como
una función de R para la implementación de un comando de extensión. Se
llama a la función y aparece una ventana de consola donde la función
recorre las sentencias una a una e inspecciona los valores de las variables y
las expresiones.

Después de que el bloque de programa o la extensión, un comando


se ejecuta y se completa, los resultados del navegador y las
funciones de depuración que están en la ventana de la consola se
muestran en el visualizador de estadísticas de SPSS. Un punto a
tener en cuenta es que cuando una función que da salida explícita
como la función R Print viene antes de la llamada a una función de
navegador o de depuración, el resultado se muestra en el
Visualizador de SPSS Statistics después de que el bloque de
programa o el comando de extensión con la llamada a la función se
haya completado. Para asegurarse de que la salida se muestra en la
ventana de la consola de R que está asociada a las funciones de
depuración, coloca la llamada a las funciones de navegador y
depuración de forma que precedan a la función que genera la salida
explícita.
El modo distribuido no soporta las funciones de navegador y
depuración.

Funciones R que se Leen desde stdin


La función R toma datos de entrada desde un archivo externo o una
conexión de entrada estándar stdin como la función de exploración que lee
desde stdin pero también puede tomar datos de un archivo externo
especificado por el argumento archivo. R está incrustado dentro de SPSS
Statistics, que no admite la lectura de datos desde stdin cuando se utilizan
funciones R dentro de los bloques BEGIN PROGRAM R-END
PROGRAM. En este caso, la entrada se toma de un archivo externo. Un
ejemplo es el siguiente:

BEGIN PROGRAM R. data <- scan(file="/Rdata.txt") END


PROGRAM.
El Paquete R de spss
Junto con el complemento de integración para R, también se instala el
paquete R de spss, que tiene las funciones R específicas de SPSS Statistics
que permiten utilizar el lenguaje de programación R desde la sintaxis de
comandos de SPSS Statistics. Algunas funciones proporcionadas por el
paquete son:

Lectura de los datos de casos en R tomándolos del conjunto de datos


activos.
Recibir información sobre los datos contenidos en el conjunto de
datos activos.

Obtener la salida y los resultados del comando de sintaxis de SPSS


Statistics.

Tomar los resultados de R y escribirlos de nuevo en SPSS Statistics.

Visualizar los gráficos de R en el SPSS Statistics Viewer.


Generalmente, no es necesario un comando de biblioteca R para que los
bloques BEGIN PROGRAM R-END PROGRAM carguen el paquete R de
SPSS porque la versión del paquete que se necesita se carga
automáticamente.

Reglas de Sintaxis del Lenguaje de Programación R


La sintaxis de R tiene un conjunto de reglas dadas como:

Sensibilidad a las Mayúsculas y Minúsculas: Las sentencias


escritas en el lenguaje de programación R distinguen entre
mayúsculas y minúsculas, incluyendo los nombres de las variables,
las funciones y todo lo demás. Por ejemplo, la variable
‘myRvariable’ es lo mismo que ‘myRVariable’ y la función
GetCaseCount() no debe ser getcasecount().

Símbolo de Asignación: En la sintaxis de R, la asignación se indica


mediante el uso de un signo menor que seguido de un guion (<-).
Aunque en la mayoría de los casos, el signo de igualdad también se
puede utilizar para la asignación.

Por ejemplo:
var1 <- var2+1

Terminación y Continuación: Para terminar un comando de R se


utiliza un punto y coma o una nueva lista, mientras que la
continuación no necesita ningún tipo de símbolos o caracteres
especiales. Por ejemplo:
var1 <- var2+
3

Estas dos líneas separadas se leen como “var1 <- var2+ 3” lo que significa
que R continuará leyendo la entrada hasta que el comando esté
sintácticamente completo. Por otro lado, si el comando se escribe como:
var1 <- var2
+3

Las líneas se leerán por separado y “var1” se asignará como el valor de


“var2”.

Agrupar sentencias: Las estructuras como los loops, las


expresiones condicionales y las funciones contienen un grupo de
sentencias que se encierran entre llaves para indicar la agrupación.
Por ejemplo:
while (!spssdata.IsLastSplit()){
data <- spssdata.GetSplitDataFromSPSS()
cat("\nCases in Split: ",length(data[,1]))
}

Convenciones de Comillas en R
En el lenguaje de programación R, las cadenas se encierran entre
comillas simples (‘) o dobles (“) como cuando se utilizan en IBM®
SPSS® Statistics.

Si una cadena tiene un apóstrofe dentro de sí misma, que es


básicamente la comilla simple (‘), entonces esta cadena se encierra
entre comillas dobles (“) para evitar un error. Un ejemplo para
ilustrarlo es:
“Joe’s Bar and Grille”

Que se trata sintácticamente como


Joe’s Bar and Grille

Si el usuario desea utilizar comillas simples para encerrar la cadena, el


apóstrofe dentro de la cadena para escribirse escapando de la comilla
utilizada como apóstrofe. Se escribirá como:
‘Joe\’s Bar and Grille’

Si la cadena contiene comillas dobles dentro de sí misma, entonces


se utilizan comillas simples para la cadena como:
'Categories Labeled "UNSTANDARD" in the Report'

Si se utilizan comillas dobles en la cadena que es del mismo tipo que


las que encierran la cadena, se producirá un error en el lenguaje de
programación R. Por ejemplo:
'Joe's Bar and Grille'

Especificaciones del Archivo


En el lenguaje de programación R, las secuencias de escape van precedidas
de una barra invertida o slash invertido (\), como \n para indicar una nueva
línea y \t para el tabulador. Y como tal, las especificaciones de archivos en
Windows utilizan slashes (/) lo cual generalmente aceptado por el SPSS
Statistics.
spssRGraphics.Submit("/temp/R_graphic.jpg")

Otra forma de indicar las especificaciones de archivos es usar la barra


invertida o slash invertido con otra como se muestra:
spssRGraphics.Submit("\\temp\\R_graphic.jpg")

Mezcla de Bloques de Sintaxis de Comando y de Programa R


En cada trabajo de sintaxis de comandos, es posible mezclar el programa
BEGIN PROGRAM R-END PROGRAM con otros comandos de sintaxis y
también hacer que un trabajo dado contenga múltiples bloques de programa
R. La variable R que se asigna en un bloque de programa específico puede
utilizarse en los bloques de programa posteriores. Esto se explica con más
detalle en el siguiente ejemplo:

Ejemplo
*R_multiple_program_blocks.sps.
DATA LIST FREE /var1.
BEGIN DATA
1
END DATA.
DATASET NAME File1.
BEGIN PROGRAM R.
File1N <- spssdata.GetCaseCount()
END PROGRAM.
DATA LIST FREE /var1.
BEGIN DATA
1
2
END DATA.
DATASET NAME File2.
BEGIN PROGRAM R.
File2N <- spssdata.GetCaseCount()
{ if (File2N > File1N)
message <- "File2 has more cases than File1."
else if (File1N > File2N)
message <- "File1 has more cases than File2."
else
message <- "Both files have the same number of cases."
}
cat(message)
END PROGRAM.

En el primer bloque de programa dado en el ejemplo, se define la


variable programática File1N y su valor se establece en el número
total de casos disponibles en el conjunto de datos activos.
La sintaxis de comando que viene después del primer bloque de
programa crea un nuevo conjunto de datos activos y lo nombra. En
un bloque de programa de R no se puede ejecutar la sintaxis de
comandos de IBM® SPSS® Statistics, sino que se pueden utilizar
varios bloques de programa de R que están separados por la sintaxis
de comandos y la función necesariamente.

File2N es la variable programática definida en el segundo bloque de


programa del ejemplo. Su valor se asigna como el número de casos
contenidos en el File2, que es el nombre de un conjunto de datos de
SPSS Statistics. El valor que se asignó a File1N en el primer bloque
de programa sigue siendo válido en el segundo bloque de programa
y, por lo tanto, la comparación de los dos recuentos de casos es
posible.
El valor de la variable R del mensaje se muestra con la ayuda de la
función R cat. La salida escrita con el cat, print o cualquier otra
función a la salida estándar de R se dirige a un elemento de registro
presente en el SPSS Statistics Viewer.

No es posible anidar los bloques BEGIN PROGRAM R excepto


cuando están anidados dentro de un bloque BEGIN PROGRAM
PYTHON.
Al final del bloque del programa R, el usuario puede eliminar
objetos grandes como el conjunto de datos de SPSS Statistics para
disminuir el uso de la memoria de R. Un ejemplo puede ser el
rm(data).

Lectura de Datos de Casos de IBM SPSS Statistics Usando


Bloques de Programa R
El complemento de integración para R puede utilizarse para leer datos de
casos de IBM SPSS Statistics e introducirlos en R. Brinda la opción de
recuperar los casos para todas las variables o sólo un subconjunto específico
de variables en el conjunto de datos activos.
Uso de la Función spssdata.GetDataFromSPSS
Para leer los datos mientras se utilizan conjuntos de datos sin grupos
divididos, se utiliza la función spssdata.GetDataFromSPSS. Si el conjunto
de datos del que se van a leer los datos tiene grupos divididos, entonces se
utiliza la función spssdata.GetSplitDataFromSPSS en lugar de la anterior.
Es necesario seguir algunas reglas tanto para GetDataFromSPSS como para
GetSplitDataFromSPSS cuando se recuperan datos de IBM® SPSS®
Statistics.
Las variables de cadena tienen un ancho ya definido según el cual
los valores de la cadena se rellenan a la derecha.
Si las variables de SPSS Statistics tienen valores con formato de
hora, se devuelven como algunos segundos contados desde la
medianoche.

En SPSS Statistics, el análogo de la variable categórica en los datos que se


están leyendo es un factor en R.

Ejemplo: Recuperación de Casos para Todas las Variables


*R_get_all_cases.sps.
DATA LIST FREE /age (F4) income (F8.2) car (F8.2) employ (F4).
BEGIN DATA.
55 72 36.20 23
56 153 76.90 35
28 28 13.70 4
END DATA.
BEGIN PROGRAM R.
casedata <- spssdata.GetDataFromSPSS()
print(casedata)
END PROGRAM.

Resultado
age income car employ
1 55 72 36.2 23
2 56 153 76.9 35
3 28 28 13.7 4

La funciones GetDataFromSPSS o GetSplitDataFromSPSS dan el resultado


en forma de marco de datos R, lo que significa que los datos recuperados de
estas funciones se almacenan en la memoria. Los datos de un caso de una
variable individual del conjunto de datos activos están contenidos en la
columna del marco de datos devuelto. Si las variables son de cadena, las
columnas son factores. El nombre de la columna recibe el nombre de la
variable como en el caso del diccionario de SPSS Statistics. El nombre dado
de la columna se puede utilizar para extraer los datos de la variable
correspondiente como:
income <- casedata$income
En el ejemplo dado, “income” o “ingresos” es una variable de R que
especifica los valores de caso de la variable de SPSS Statistics con el
mismo nombre. Los valores de caso utilizados pueden iterarse como:
for (value in income) print(value)

En el marco de datos devueltos, cada fila representada por enteros


consecutivos da los datos de un sólo caso. Es posible recorrer las filas del
marco de datos que a su vez repite sobre los casos como:
for (i in c(1:spssdata.GetCaseCount())) print(casedata[i,]$age)

En el lenguaje de programación R, la función se escribe como


spssdata.GetCaseCount toma el número de casos de un conjunto de
datos activos y los devuelve. Después, el vector de etiquetas de fila
es generado por la función R c() como en este caso, sólo se contarán
los enteros desde 1 hasta el número de casos.

Cada vez que se repite el loop, casedata[i,] representa la lista de


componentes del nombre de las variables del marco de datos. Así,
casedata[i,]$age especifica el valor de la edad del caso actual.

Nota: Si se llama a la función GetDataFromSPSS, se puede utilizar el


argumento opcional row.label para especificar la variable cuyos valores de
caso son las etiquetas de fila del marco de datos resultante. Los valores de
la variable específica no deben ser valores duplicados.

Ejemplo: Recuperación de los Casos de las Variables Seleccionadas


*R_get_specified_variables.sps.
DATA LIST FREE /age (F4) income (F8.2) car (F8.2) employ (F4).
BEGIN DATA.
55 72 36.20 23
56 153 76.90 35
28 28 13.70 4
END DATA.
BEGIN PROGRAM
R. casedata <- spssdata.GetDataFromSPSS(variables=c("age","income","employ"))
END PROGRAM.
En el lenguaje de programación R, el argumento “variables” de la función
llamada GetDataFromSPSS es un vector R que se utiliza para especificar un
subconjunto de variables que recibirán los datos de casos recuperados. La
función R c() utilizada en el ejemplo crea un vector de caracteres de los
nombres de las variables que se especifican en el caso que contiene las
variables asociadas en el diccionario para el conjunto de datos activos.
Como resultado, el marco de datos de R mostrará tres columnas de edad,
ingresos y empleo. El rango de una variable puede especificarse en SPSS
Statistics utilizando la palabra clave TO que no depende del caso, como por
ejemplo:
variables= c(“age TO car”)

Para utilizar el valor índice de las variables que representan la posición en


el conjunto de datos, el rango de variables se especifica con una expresión
como:
Variables=c(0:2)

Donde el código R c(0:2) hace un vector que contiene enteros entre 0 y 2.


Datos Faltantes
Los valores faltantes por el usuario relacionados con las variables
numéricas se cambian por el valor R NaN mientras que los de las variables
de cadena se convierten en el valor R NA. El valor R NaN también
sustituye a los valores faltantes por el sistema. Para crear un conjunto de
datos con los valores faltantes por el usuario y los valores faltantes por el
sistema, se utiliza el siguiente programa de sintaxis.
*R_get_missing_data.sps.
DATA LIST (',') /numVar (f) stringVar (a4).
BEGIN DATA
1,a
,b
3,,
9,d
END DATA.
MISSING VALUES numVar (9) stringVar (' ').
BEGIN PROGRAM R.
data <- spssdata.GetDataFromSPSS()
cat("Case data with missing values:\n")
print(data)
END PROGRAM.

Resultado
Datos de casos con valores faltantes:
numVar stringVar
1 1 a
2 NaN b
3 3 <NA>
4 NaN d

Si se utiliza el argumento missingValueToNA, los valores faltantes de las


variables numéricas se convertirán en el valor R NA que puede mostrarse
como:
data<-spssdata.GetDataFromSPSS(missingValueToNA=TRUE)

Por otro lado, el argumento opcional keepUserMissing se puede establecer


en TRUE para que los valores faltantes por el usuario se vean como datos
válidos y no se conviertan. Se puede elaborar rehaciendo un ejemplo
anterior como:
DATA LIST (',') /numVar (f) stringVar (a4).
BEGIN DATA 1,a
,b
3,,
9,d
END DATA.
MISSING VALUES numVar (9) stringVar (' ').
BEGIN PROGRAM R.
data <- spssdata.GetDataFromSPSS(keepUserMissing=TRUE)
cat("Case data with user-missing values treated as valid:\n")
print(data)
END PROGRAM.

Resultado
Case data with user-missing values treated as valid:
numVar stringVar
1 1 a
2 NaN b
3 3
4 9 d

Manejo de los Valores de Fecha-Hora de IBM SPSS Statistics


Si los valores recuperados de las variables de IBM SPSS Statistics incluyen
los formatos de fecha o fecha-hora, es necesario cambiar estos valores a
objetos R date\time (POSIXt). Por defecto no se convierten, sino que sólo
se devuelven en la representación interna que utiliza SPSS Statistics. El
argumento rDate de la función GetDataFromSPSS se utiliza para
convertirlos en objetos R date/time.
*R_retrieve_datetime_values.sps.
DATA LIST FREE /bdate (ADATE10).
BEGIN DATA
05/02/2009
END DATA.
BEGIN PROGRAM R.
data<-spssdata.GetDataFromSPSS(rDate="POSIXct") data
END PROGRAM.

Result
bdate
1 2009-05-02

Manejo de Datos con Divisiones


La función de R spssdata.GetSplitDataFromSPSS se utiliza para leer los
conjuntos de datos IBM® SPSS® Statistics con grupos divididos para
recuperar cada división por separado. La primera llamada a
GetSplitDataFromSPSS recuperará el primer grupo dividido, mientras que
la segunda llamada devolverá los datos del segundo grupo dividido y
continúa de la misma manera. Si no hay grupos de división en el conjunto
de datos activos, la primera llamada a GetSplitDataFromSPSS devuelve
todos los casos.
*R_get_split_groups.sps.
DATA LIST FREE /salary (F6) jobcat (F2).
BEGIN DATA
21450 1
45000 1
30000 2
30750 2
103750 3
72500 3
57000 3
END DATA.
SORT CASES BY jobcat.
SPLIT FILE BY jobcat.
BEGIN PROGRAM R.
varnames <- spssdata.GetSplitVariableNames()
if(length(varnames) > 0)
{
while (!spssdata.IsLastSplit() ) {
data <- spssdata.GetSplitDataFromSPSS()
cat( "\n\nSplit variable values:")
for ( name in varnames ) cat( "\n",name,":",
as.character(data[1,name]))
cat( " \nCases in Split: ",length(data[,1]))
}
spssdata.CloseDataConnection()
}
END PROGRAM.

Resultado
Split variable values:
jobcat : 1
Cases in Split: 2
Split variable values:
jobcat : 2
Cases in Split: 2
Split variable values:
jobcat : 3
Cases in Split: 3
Los nombres de las variables de división en el conjunto de datos
activos se devuelven con la ayuda de la función
GetSplitVariableNames.
Para reconocer si la división que se está leyendo es la última en el
conjunto de datos activos, se utiliza la función IsLastSplit que
devuelve TRUE si es la última.
Durante la ejecución, los datos de casos son recuperados por la
función GetSplitDataFromSPSS para el siguiente grupo de división
y devueltos como el marco de datos R que es similar al devuelto por
el GetDataFromSPSS. Una vez que los grupos de división terminan
en el conjunto de datos activos, la función devuelve el valor como
NULL.
Una vez leídos los grupos de división necesarios, se llama a la
función CloseDataConnection. Se utiliza para cerrar la conexión de
datos para evitar el inicio implícito de una conexión de datos para la
lectura de archivos divididos por el GetSplitDataFromSPSS.

Al igual que en GetDataFromSPS, se pueden incluir argumentos en


GetSplitDataFromSPSS. Estos incluyen el argumento variables para
especificar el subconjunto de las variables que necesitan ser recuperadas, el
argumento row.label para especificar las etiquetas de las filas del marco de
datos devuelto y también el argumento keepUserMissing para la
especificación del manejo de los valores faltantes por el usuario.
Trabajar con Valores Categóricos
Los datos recuperados deben ser convertidos a variables factoriales de R si
la naturaleza categórica de los datos que se leen en R necesitan ser retenidas
para el análisis de R.
*R_handle_catvars.sps.
DATA LIST FREE /id (F4) gender (A1) training (F1).
VARIABLE LABELS id 'Employee ID'
/training 'Training Level'.
VARIABLE LEVEL id (SCALE)
/gender (NOMINAL)
/training (ORDINAL).
VALUE LABELS training 1 'Beginning' 2 'Intermediate' 3 'Advanced'
/gender 'f' 'Female' 'm' 'Male'.
BEGIN DATA
18 m 1
37 f 2
10 f 3
22 m 2
END DATA.
BEGIN PROGRAM R.
casedata <- spssdata.GetDataFromSPSS(factorMode="labels")
casedata
END PROGRAM.

Las variables categóricas se convierten de IBM SPSS Statistics a un


factor R mediante el argumento ‘factorMode’ de la función
GetDataFromSPSS.

En el ejemplo dado, la conversión de las variables categóricas en


factores se especifica mediante el valor “labels” para factorMode.
Las etiquetas de los valores de estas variables definen los niveles de
estos factores. Los valores que no tienen ninguna etiqueta de valor
definida, adquieren el mismo nivel que el del valor. El valor
alternativo “niveles específicos tales variables categóricas que se
convierten en factores y tienen el mismo nivel que el valor de la
variable”.

Resultado
id gender training
1 18 Male Beginning
2 37 Female Intermediate
3 10 Female Advanced
4 22 Male Intermediate

Los factores recuperados con el factorMode=”labels” pueden escribirse en


un nuevo conjunto de datos de SPSS Statistics, pero requiere un manejo
especial.
Escritura de Resultados en un Nuevo Conjunto de Datos de
IBM SPSS Statistics
Otro uso proporcionado por IBM SPSS Statistics – Complemento de
Integración para R tiene la capacidad de copiar los resultados de un
conjunto de datos de IBM SPSS Statistics y transferirlos a otro nuevo
conjunto de datos. De este modo, hay dos formas posibles de crear un
conjunto de datos, bien sea empezar a crear un nuevo conjunto de datos y
especificar explícitamente las variables y los valores de los casos o
construir una copia basada en un conjunto de datos existentes y luego
incluir nuevas variables y casos.
Creación de Nuevo Conjunto de Datos
A continuación se indican los pasos especificados para crear nuevos
conjuntos de datos:
Crear un diccionario para el nuevo conjunto de datos de IBM SPSS
Statistics que se representará mediante un marco de datos. Esta
representación puede crearse desde el principio con la ayuda de la
ayuda de la función de R spssdictionary.CreateSPSSDictionary y
también puede construirse sobre un diccionario de conjunto de datos
existente con la función spssdictionary.GetDictionaryFromSPSS. La
página web spssdictionary.SetDictionaryToSPSS crea un nuevo
conjunto de datos con el diccionario especificado.

La función spssdata.SetDataToSPSS llena los datos de casos.

Nota: Si los valores de la variable de SPSS Statistics se escriben con un


formato de fecha-hora, es importante especificar estos valores como objetos
R POSIXt para que se conviertan en valores válidos para SPSS Statistics.

Ejemplo: Añadir Variables a una Copia del Conjunto de Datos

En el siguiente ejemplo, se crea un nuevo conjunto de datos a partir de una


copia de un conjunto de datos activos en el que se añade el salario medio a
una copia de los datos de empleado Employee data.sav, lo que supone la
adición de una única variable nueva.
*R_copy_dataset_add_var.sps.
GET FILE='/examples/data/Employee data.sav'.
BEGIN PROGRAM R.
dict <- spssdictionary.GetDictionaryFromSPSS()
casedata <- spssdata.GetDataFromSPSS()
varSpec <- c("meansal","Mean Salary",0,"F8","scale")
dict <- data.frame(dict,varSpec)
spssdictionary.SetDictionaryToSPSS("results",dict)
casedata <- data.frame(casedata,mean(casedata$salary))
spssdata.SetDataToSPSS("results",casedata)
spssdictionary.EndDataStep()
END PROGRAM.

El diccionario representado como un marco de datos R en el


conjunto de datos activos se devuelve utilizando la función
GetDictionaryFromSPSS. Del mismo modo, la función
GetDataFromSPSS devuelve los datos activos como un marco de
datos de R.

El varSpec especifica las propiedades básicas de una variable en el


vector R que es un paso importante en la creación de variables para
un conjunto de datos. Los componentes del vector requeridos se
muestran en un orden particular que es:

Nombre de la variable

Una etiqueta de la variable que puede ser una cadena en blanco

Tipo de variable como 0 para una variable numérica, un entero para una
longitud definida con 32, 767 es el valor máximo para una variable de
cadena

El formato de visualización de la variable

Nivel de medición que puede ser “nominal”, “ordinal” o “escala”.


La declaración ‘data.frame(dict,varSpec)’ hace uso de una función
del lenguaje de programación R que se expresa como data.frame().
Su trabajo principal es generar un marco de datos que representa un
nuevo diccionario. Este diccionario tiene el contenido del
diccionario original junto con una variable completamente nueva
que no está incluida en ninguna parte del original. Si el usuario
quiere añadir múltiples variables, sólo tiene que añadir los vectores
de las variables en la función data.frame que tendrá el siguiente
aspecto:
data.frame(dict,varSpec1,varSpec2)

Las variables del nuevo conjunto de datos se colocan según el orden dado
en el marco de datos. El ejemplo muestra que la nueva variable ‘meansal’
está precedida por todas las variables originales escritas desde el Employee
data.sav.

Para crear el nuevo conjunto de datos, se utiliza la función


SetDictionaryToSPSS. Incluye argumentos que son los nombres del
nuevo conjunto de datos y una representación de marco de datos R
del diccionario especificado.

El código de línea data.frame(casedata,mean(casedata$salary)) se


utiliza para generar un marco de datos completamente nuevo. Este
marco de datos contiene la combinación de los datos del conjunto de
datos activos y los datos de la nueva variable. La nueva variable
añadida en el marco de datos en este ejemplo es la variable salario
medio que calcula la media de la variable salario del conjunto de
datos activos original. Los marcos de datos se crean a partir de los
existentes o de vectores que representan cada columna del marco de
datos. Esto puede entenderse considerando el ejemplo en el que
data.frame(var1,var2,var3) construye un marco de datos en el que
las columnas se hacen de igual longitud mediante especificaciones
de los vectores var1, var2 y var3. Cuando se trata de datos de casos
representados en el marco de datos, las variables asociadas en el
nuevo conjunto de datos establecen el orden en que se crean las
columnas del marco de datos. Este punto puede elaborarse
especificando la primera columna del marco de datos llena los datos
de casos para la primera variable del conjunto de datos. En cambio,
la segunda columna llena los datos de casos de la segunda variable y
continúa de la misma manera.

El nuevo conjunto de datos tiene sus datos de caso llenados por una
función R llamada SetDataToSPSS. Los argumentos utilizados en
esta función llevan el nombre del conjunto de datos que se va a
llenar y el marco de datos representa los datos de casos. Las filas del
marco de datos representan los casos mientras que las columnas
especifican las variables en orden del archivo.

Después de seguir todos los pasos para crear un nuevo conjunto de


datos, se llama a la función EndDataStep. Otra forma de llamar la
función EndDataStep es añadir un bloque BEGIN PROGRAM R-
END PROGRAM al final del conjunto de datos, que es una adición
necesaria en caso de que la función muestre un error en la primera
ejecución.

Ejemplo: Creación de un Diccionario de Variables desde Cero

Un ejemplo para crear un nuevo diccionario de variable desde el principio


sin depender de un diccionario ya existente se muestra como:
*R_create_dataset.sps.
GET FILE='/examples/data/Employee data.sav'.
BEGIN PROGRAM R.
casedata <- spssdata.GetDataFromSPSS()
stats <- summary (casedata$salary)
min <- c ("min","",0,"F8.2","scale" )
q1 <- c ("q1","1st Quartile",0,"F8.2","scale" )
median <- c ( "median","",0,"F8.2","scale" ) 349 W
mean <- c ( "mean","",0,"F8.2","scale" )
q3 <- c ( "q3","3rd Quartile",0,"F8.2","scale" )
max <- c ( "max","",0,"F8.2","scale" )
dict <- spssdictionary.CreateSPSSDictionary (min,q1,median,mean,q3,max)
spssdictionary.SetDictionaryToSPSS ("summary",dict )
data <- data.frame (min=stats[1],q1=stats[2],median=stats[3],
mean=stats[4],q3=stats[5],max=stats[6] )
spssdata.SetDataToSPSS ( "summary", data )
spssdictionary.EndDataStep()
END PROGRAM.

Para el bloque de programa de ejemplo mostrado arriba, la fuente


principal de datos es un conjunto de datos que hemos utilizado
muchas veces en este libro, que es el ‘Employeedata.sav’. Dado
que este es importante para el bloque de programa, primero tenemos
que recuperarlo antes de que el bloque de programa R se inicie y lo
hacemos enviando el comando ‘GET’ al SPSS Client junto con el
directorio de archivos en el que se encuentra este archivo de datos.
Una vez que el bloque de programa R lee los datos de casos de este
conjunto de datos, deposita automáticamente la información en una
variable a la que se hace referencia con el nombre de ‘casedata’.
A continuación, utilizamos una función del lenguaje de
programación R que es ‘summary()’. La finalidad de esta función
es exactamente la que su nombre indica, proporcionamos a la
función el nombre de la variable (en ese caso, sería casedata) y los
casos correspondientes. La función devolverá un resumen
estadístico.

El bloque del programa R tiene un total de seis vectores que


funcionan como un plano que especifica los detalles de seis
variables correspondientes. Estos vectores son ‘min’, ‘q1’,
‘median’, ‘mean’, ‘q3’ y ‘max’.

A continuación, el bloque del programa R comienza a preparar el


escenario para la creación del nuevo diccionario de variables. Para
eso, implementamos una función ‘CreateSPSSDictionary()’ que
esencialmente genera una ilustración de marco de datos de un
diccionario de muestras que se construye sobre las variables
especificadas por los seis vectores.

Después de esto, ahora procedemos a crear un conjunto de datos


adecuado que contará con el diccionario de variables que creamos
en el paso anterior. Para eso, primero utilizamos la función
‘SetDictionaryToSPSS’. En este bloque de programa de ejemplo,
pasamos un total de dos argumentos a esta función. El primer
argumento especifica el nombre del conjunto de datos resultante que
será creado por esta función y el segundo argumento especifica el
nombre del diccionario del marco de datos en el que se basará el
nuevo conjunto de datos.
Ahora terminamos generando una representación de marco de datos
de los datos de casos desde el conjunto de datos fuente que
incluimos al principio de este bloque de programa de ejemplo. Esta
representación de marco de datos es principalmente para el conjunto
de datos ‘summary’ que acabamos de crear en el paso anterior y
para crear el marco de datos en sí, utilizamos una función de R que
es ‘data.frame()’. Al utilizar esta función, se nos da la opción de
especificar las etiquetas de los valores que pasamos como
argumentos a la función y omitir el detalle. Al final, el impacto que
tiene esta elección en los datos de casos enviados al SPSS Client es
completamente nulo. Por último, utilizamos la función
‘SetDataToSPSS()’ para especificar los valores de los casos en el
conjunto de datos recién creado.
Crear un Nuevo Conjunto de Datos con Casos Adicionales
Hay ocasiones en la que no deseas modificar un conjunto de datos original
o deseas realizar algunos cambios en los casos de un conjunto de datos pero
deseas mantener el archivo de datos en su forma original. En este caso, la
mejor manera de abordar este problema es simplemente crear un nuevo
conjunto de datos y luego hacer los cambios que desees. De esta manera,
tienes el conjunto de datos original sin tocar y una copia actualizada o una
versión modificada del mismo.

En esta demostración, discutiremos cómo podemos generar una copia del


conjunto de datos que está siendo utilizado actualmente por el SPSS Client
y luego añadir un montón de datos de casos al conjunto de datos:
*R_copy_dataset_add_cases.sps.
DATA LIST FREE /numvar (F) strvar (A2).
BEGIN DATA
1a
END DATA.
BEGIN PROGRAM R.
dict <- spssdictionary.GetDictionaryFromSPSS()
casedata <- spssdata.GetDataFromSPSS()
numvar <- c(casedata$numvar,2,3)
strvar <- c(as.vector(casedata$strvar),format("b",width=2),format("c",width=2))
spssdictionary.SetDictionaryToSPSS("results",dict)
casedata <- data.frame(numvar,strvar)
spssdata.SetDataToSPSS("results",casedata)
spssdictionary.EndDataStep()
END PROGRAM.

Cuando se trata de realizar una tarea como ésta, la forma


recomendada de enfocar la solución es que se construya un grupo de
vectores que especifiquen el caso que se quiere añadir al conjunto de
datos en sus variables correspondientes y luego utilizar la función
data.frame() para crear una representación de marco de datos de
estos datos de casos almacenados, en este bloque de programa R de
ejemplo en particular, las variables que contienen los datos de casos
original, así como dos valores del caso, son ‘numvar’ y ‘strvar’.

Utilizamos los vectores que mencionamos anteriormente para llenar


el marco de datos que esencialmente ilustra los datos de casos. El
orden con el que se proporcionan los vectores a la función
data.frame() es el mismo que el orden en el que las variables
correspondientes de estos vectores aparecerán en el conjunto de
datos.
Especificación de Valores Faltantes para Nuevos Conjuntos de
Datos
En esta sección, hablaremos de un escenario al que los analistas y usuarios
de datos se enfrentan de vez en cuando al trabajar con conjuntos de datos.
Por lo general, un conjunto de datos se gestiona y se estructura
adecuadamente antes de ponerse a disposición del público. Sin embargo, si
alguien utiliza un conjunto de datos relativamente reciente y que no se ha
mantenido adecuadamente, es muy probable que el conjunto de datos
relativamente reciente y que no se ha mantenido adecuadamente, es muy
probable que el conjunto de datos tenga algunos valores que se han perdido,
específicamente para las variables. Por suerte, el módulo spss ofrece una
solución a este problema. El módulo incluye una función que permite al
usuario especificar fácilmente el valor de la variable que falta en el
conjunto de datos. Para eso, utilizamos la función
'spssdictionary.SetUserMissing'. Sin embargo, hay una condición que
debe cumplirse antes de que podamos utilizar esta función y esta condición
es la especificación de la posición en la que esta función debe ser
implementada en el 'bloque de programa R'. Para elaborar, esta función
necesitas utilizar entre otras dos funciones estrechamente relacionadas que
son 'spssdictionary.SetDictionaryToSpss' y
'spssdictionary.EndDataStep'. Para ser más precisos, la función
'SetUserMissing' no debe ser ejecutada después de 'SetDictionaryToSpss'
y al mismo tiempo, no puede ser ejecutada antes de 'EndDataStep'.

Para entender este concepto y el método de uso de la función


'SetUserMissing()', echemos un vistazo al 'bloque de programa R' que se
muestra a continuación:
*R_specify_missing_values.sps.
BEGIN PROGRAM R.
var1Spec <- c("var1","",0,"F8.2","scale")
var2Spec <- c("var2","",0,"F8.2","scale")
var3Spec <- c("var3","",0,"F8.2","scale")
var4Spec <- c("var4","",2,"A2","nominal")
dict <- spssdictionary.CreateSPSSDictionary(var1Spec,var2Spec,var3Spec,
var4Spec)
spssdictionary.SetDictionaryToSPSS("newds",dict)
spssdictionary.SetUserMissing("newds","var1",missingFormat["Discrete"],
c(0,9,99))
spssdictionary.SetUserMissing("newds","var2",missingFormat["Range"],
c(9,99))
spssdictionary.SetUserMissing("newds","var3",missingFormat["Range Discrete"],
c(9,99,0))
spssdictionary.SetUserMissing("newds","var4",missingFormat["Discrete"],
c(" ","NA"))
spssdictionary.EndDataStep()
END PROGRAM.

En el bloque de programa del ejemplo mostrado arriba, podemos ver


que se han definido un total de cuatro variables originales y sus
respectivos vectores acompañan a estas variables. Los nombres de
estas cuatro variables son 'Var1spec', 'Var2spec', 'Var3spec', y
'Var4spec'. De estas cuatro variables, las tres primeras se utilizan
para almacenar una variable de tipo numérico (lo que significa que
almacenará números) mientras que la última se utiliza para
almacenar una variable de tipo cadena (lo que significa que
almacenará caracteres).
A continuación, tenemos que indicar al bloque de programa cuáles
son los valores que faltan, es decir, especificarlos. Para ello,
utilizamos una función que se denomina 'SetUserMissing()'. Para
especificar correctamente el valor faltante, necesitamos pasar dos
argumentos a esta función. El primer argumento indica a la función
a qué conjunto de datos nos referimos, por lo que es una cadena que
representa el nombre del conjunto de datos. El segundo argumento
es simplemente el nombre de la variable que falta en el conjunto de
datos especificado. Sin embargo, es importante tener en cuenta que
la función 'SetUserMissing()' tiene una condición bajo la cual
puede ser utilizada y esta condición es que la función debe ser
implementada en el bloque de programa después del método
'SetDictionaryToSPSS()'. En caso contrario, la ejecución de este
bloque de programa generará un error.
Si echas un vistazo al bloque de programa de ejemplo, observarás
que después del método 'SetDictionaryToSPSS()', estamos
utilizando la función 'SetUserMissing()' un total de cuatro veces.
Esto es porque estamos acomodando las cuatro variables (var1, var2,
var3 y var4). Centrémonos en los argumentos que se pasan a esta
función por el momento. Mientras que los dos primeros argumentos
especifican el nombre del conjunto de datos y el nombre de la
variable faltante, el tercer argumento especifica el tipo de datos del
valor. Aquí, tienes dos opciones para especificar el tipo de la
variable faltante. - el tipo 'Discret' y el tipo 'Range'. Si pasamos el
valor 'Discret' como tercer argumento a esta función, esto le dirá a la
función que el valor faltante es de tipo numérico discreto o de
cadena.
Del mismo modo, si pasamos el valor 'Range' como tercer
argumento a esta función, esto le dirá a la función que el valor
faltante es de tipo rango. Otro valor posible para este argumento es
'Range Discrete' que indica a la función que debe haber un 'rango de
valores faltantes junto con un valor ‘discrete’. Sin embargo, si la
variable es de tipo cadena, entonces puede presentar valores
'discretos'.
El último argumento que pasamos a la función 'SetUserMissing()'
es el vector de valores faltantes. Si el valor faltante es de tipo
discrete, entonces el vector correspondiente a este valor sólo puede
tener un total de tres valores o menos. Esto puede verse fácilmente
en el bloque de programa para las variables primera y cuarta 'var1'
y 'var4'. Sin embargo, si el valor faltante es de tipo range, el vector
correspondiente de este valor se compone básicamente de dos
partes, la primera parte del vector representa el inicio del rango del
valor. Por el contrario, la segunda parte del vector representa el final
del rango del valor. En el bloque del programa de ejemplo, la
segunda variable 'var2' entra en esta categoría. Por último, si el
valor perdido es esencialmente "un rango de valores faltantes junto
con un valor discreto", el vector correspondiente tendrá tres partes.
Las dos primeras partes representan el principio y el final del rango
del valor, mientras que la última parte representa el valor discreto en
sí.

Especificación de las Etiquetas de los Valores para los Nuevos


Conjuntos de Datos
Para establecer las etiquetas de un valor, tenemos que utilizar un método de
la clase spssdictionary que es el método 'SetValueLabel()'. Al igual que la
función 'SetUserMissing()' es necesario que se cumpla la misma condición
para que el bloque de programa pueda utilizar el método 'SetValueLabel()'
sin ningún error y esta condición es que la función
'spssdictionary.SetValueLabel()' debe implementarse siempre antes de la
función 'EndDataStep()', así como después de la función
'SetDictionaryToSPSS()'. El motivo es que no surja ningún conflicto
cuando el bloque de programa llame a estas funciones. El siguiente bloque
de programa de ejemplo demuestra cómo podemos utilizar la función
'SetValueLabel()' para especificar etiquetas de valores:
*R_specify_value_labels.sps.
BEGIN PROGRAM R.
var1Spec <- c("var1","Minority",0,"F1","ordinal")
var2Spec <- c("var2","Gender",1,"A1","nominal")
dict <- spssdictionary.CreateSPSSDictionary(var1Spec,var2Spec)
spssdictionary.SetDictionaryToSPSS("newds",dict)
spssdictionary.SetValueLabel("newds","var1",c(0,1),c("No","Yes"))
spssdictionary.SetValueLabel("newds","var2",c("m","f"),c("male","female"))
spssdictionary.EndDataStep()
END PROGRAM

Se pueden asignar etiquetas descriptivas a cada valor de la variable, un


proceso útil para cuando se utilizan códigos numéricos en los archivos de
datos para representar categorías no numéricas, es decir, 1 para hombre, 2
para mujer. Las etiquetas de los valores se guardan cuando se guarda el
archivo de datos.

El usuario puede crear fácilmente un conjunto de datos que consten


de dos variables acompañadas de sus respectivos vectores. Se trata
de ‘var1spec’ y ‘var2spec’, que proporcionan, respectivamente, una
especificación adecuada para las variables de tipo numérico y las
variables de tipo cadena.
La sintaxis para especificar la etiqueta del valor es
‘Setvaluelabel()’. El bloque de programa accede fácilmente a esta
función sin encontrar ningún error de conflicto al estar
implementada después de la función 'SetDictionaryToSPSS()'. Para
esta función, el nombre del conjunto de datos es el primer
argumento y el segundo es el nombre de la variable cuyo valor se
está estableciendo. Sin esto, asignar una etiqueta a una variable sería
muy difícil y requeriría bastantes soluciones. El tercer argumento de
'SetValueLabel()' es para especificar el valor asociado a la etiqueta.
El cuarto argumento es el vector con las etiquetas asociadas. Una
vez que hemos pasado por completo todos los argumentos
necesarios a la función 'SetValueLabel()', la siguiente tarea es la
limpieza de los datos, el registro y el análisis que se realizará
utilizando las funciones clásicas del bloque de programa de R. Se
puede especificar una etiqueta de variable para cualquier vector
utilizando var label.

Especificación de los Atributos de una Variable para Nuevos


Conjuntos de Datos
Para terminar, el tema final de esta sección será el uso del método
‘SetVariableAttributes()’ de la clase ‘spssdictionary’ para especificar los
atributos de una variable específicamente para conjuntos de datos recién
creados. Al igual que las dos funciones anteriores
(‘spssdictionary.SetUserMissing’ y ‘SetValueLabel), la función
‘spssdictionary.SetVariableAttributes()’ sólo debe implementarse dentro
de un bloque de programa antes de la función
‘spssdictionary.EndDataStep()’ y siempre después de la función
‘spssdictionary.SetDictionaryToSPSS()’.
El siguiente bloque de programa de ejemplo demuestra cómo podemos
utilizar la función ‘SetVariableAttributes()’ para especificar los atributos
de una variable:
*R_specify_var_attr.sps.
BEGIN PROGRAM R.
var1Spec <- c("var1","Minority",0,"F1","ordinal")
dict <- spssdictionary.CreateSPSSDictionary(var1Spec)
spssdictionary.SetDictionaryToSPSS("newds",dict)
spssdictionary.SetVariableAttributes("newds","var1",DemographicVars="1",
Binary=”Yes”)
spssdictionary.EndDataStep()
END PROGRAM.

En el bloque de programa de ejemplo que se muestra arriba,


podemos ver que un vector 'var1spec' se está utilizando como plano
para una variable completamente nueva que es de tipo numérico.
Además, también estamos generando un nuevo conjunto de datos en
el que almacenaríamos estas variables. El nombre de este conjunto
de datos en el bloque del programa de ejemplo es 'newds'.
Después de esto, pasamos a la tarea principal de este programa de
ejemplo, que es establecer el atributo de la variable numérica que
acabamos de crear. Para eso, primero implementamos la función
‘spssdictionary.SetDictionaryToSPSS()’ y después la función
‘spssdictionary.SetVariableAttributes()’ en el bloque de programa
de ejemplo. Una vez que implementemos esta función, todo lo que
tenemos que hacer es pasarle el argumento correspondiente para
especificar el atributo de la variable. Así, el primer argumento que le
pasamos a esta función le indica el nombre del conjunto de datos
donde queremos guardar los cambios que estamos haciendo en los
atributos de la variable. En el segundo argumento, le decimos a la
función el nombre de la variable cuyos atributos queremos
establecer. Estos dos argumentos guían a la función hacia la variable
correcta. El resto de los argumentos se refieren principalmente a la
especificación de los atributos en sí. La sintaxis de este argumento
es la que se muestra a continuación:
attrName=attrValue

Al observar esta sintaxis, resulta bastante obvio que todo lo que


necesitamos hacer es especificar el nombre del atributo que queremos
establecer y luego asignar un valor a este atributo. No hay límite en el
número de argumentos de atributos que podemos pasar a esta función. El
único límite son los atributos disponibles para la propia variable.
Conclusión

A lo largo de este libro, hemos discutido en detalle las capacidades de los


lenguajes de programación Python y R. Hemos examinado lo que cada uno
de ellos puede ofrecer para el análisis de datos. En este libro, nos hemos
aventurado a través de muchos temas diferentes, pero en el corazón de cada
uno había una implementación práctica del concepto que se estaba
discutiendo. Esto era necesario para ayudar al usuario a entender mejor lo
que se le está dando en este libro. Aunque Python tiene más flexibilidad y
capacidad de generalización, al final de este libro, hemos llegado a ver que
tanto Python como R son lenguajes de programación notables cuando se
utilizan con la herramienta IBM SPSS. Ambos lenguajes de programación
son igual de competentes y ambos tienen sus propios recursos, paquetes,
funciones, clases y métodos para abordar tareas similares. Los capítulos en
los que se destaca cada lenguaje de programación pretenden que el usuario
comprenda mejor cómo se utiliza cada lenguaje de programación con los
bloques de programa y cómo se tratan sus recursos. Al final de este libro,
esperamos que el lector haya adquirido una gran cantidad de conocimientos
útiles no sólo sobre el uso del propio SPSS Client, sino también sobre la
funcionalidad de los lenguajes de programación Python y R.

Independientemente del lenguaje que prefieras, al final, lo único que


importa es tu motivación para aprender más. Incluso si te dedicas a Python
o R, podrás lograr grandes cosas e incluso convertirte en el pionero de una
tecnología que ayudó a cambiar el mundo para un bien mayor. Este libro ha
tenido éxito si el lector se ha interesado por cualquiera de estos lenguajes y
ha aprendido también mucho sobre el SPSS Client.
Referencias

1). Programación y Gestión de Datos para IBM SPSS Statistics 20: Una Guía
para Usuarios de IBM SPSS Statistics y SAS (Por el autor: Raynald
Levesque e IBM Corp.)

También podría gustarte