Truco SAS. Transformaciones de variables con arrays

Hacer ceros los missing en un dataset. Crear una etiqueta "NO DISPONIBLE" en campos carácter sin valores. Cuando trabajamos con SAS es una situación más que habitual. A continuación voy a plantear un par de ejemplos de como podemos usar arrays de variables en SAS para realizar una transformación “masiva” de variables de nuestro conjunto de datos. Poner missing numéricos a 0: Lo primero es destacar que no siempre un valor perdido equivale a 0. Cuando realizamos modelos es necesario tener en cuenta que hacemos con los missing, el siguiente ejemplo transforma todos los . de un dataset a 0: ...

18 de septiembre de 2008 · rvaquerizo

Conectar R a una base de datos

Cada día los softwares libres van ganando más y más terreno a los softwares comerciales, no sólo por su precio, si no porque incluyen procedimientos más vanguardistas que los comerciales. El mayor problema que tienen es el volumen de datos. Cuando he preguntado a algún desarrollador de los principales softwares libres (R, Weka, Knime…) acerca de esta cuestión siempre me han respondido que depende de la capacidad de la máquina o servidor en la que se ejecuten los procesos. Es una respuesta ambigua, es cierto, pero es totalmente cierta. Si dispusiésemos de una máquina con recursos de memoria y almacenamiento ilimitados el software libre sería prácticamente perfecto. Podríamos decir entonces que la principal desventaja de los software libres frente a los comerciales es la gestión de los procesos (mucho más estudiada en los comerciales), además de una consola o interfaz más amigable. ...

22 de julio de 2008 · apadrones

Manual. Curso introducción de R. Capítulo 8: Inferencia estadística

En esta nueva entrega del curso de R vamos a trabajar con algunos conceptos básicos de inferencia estadística. En primer lugar hacemos inferencia a partir de unas observaciones obtenidas a partir de la población a las que vamos a extraer unas propiedades que se denominan estadísticos muestrales. Además vamos a conocer la distribución de dichos estadísticos (generalmente distribución normal) por lo que hacemos inferencia paramétrica. La inferencia paramétrica puede recogerse en una vertiente o en otra según el parámetro a estimar; tenemos por un lado la estadística clásica (que es en la que nos vamos a centrar) y por otro lado la estadística ballesiana. ...

23 de junio de 2008 · rvaquerizo

El `ODS` de SAS (III). Documentos `HTML` y `PDF` desde SAS

Desde SAS podemos generar PDF y HTML. Esto es muy práctico a la hora de reportar información ya que no necesitaremos pasar por Excel o cualquier otra herramienta de ofimática para generar informes. Además, si generamos HTML podemos crear webs en las que podemos navegar por los resultados obtenidos con SAS. En este mensaje veremos algunos ejemplos prácticos de uso del ODS para conocer mejor su funcionamiento. El primero de ellos crea un informe web a partir de un proc univariate: ...

19 de junio de 2008 · rvaquerizo

El ODS de SAS (II). Dataset desde OUTPUT

Ya vimos el funcionamiento de ODS TRACE ON/OFF. Ahora crearemos datasets a partir del OUTPUT que genera un paso PROC de SAS con ODS. Lo principal es conocer como se denomina cada parte del OUTPUT, esto lo conseguimos con TRACE y analizando el LOG. Una vez conocemos la salida empleamos ODS OUTPUT <nombre de la salida> = libreria.dataset. En el ejemplo que teníamos: *DATASET ALEATORIO DE 200000 OBSERVACIONES; data uno; do i=1 to 20000; importe=round(rand('normal')*1000,.1); num_productos=min(max(1,rand('pois',4)),8); num_cargos=max(0,rand('pois',10)-int(rand('uniform')*10)); output ; end; run; ods noresults; ods output Quantiles=cuant; proc univariate data=uno; var importe; quit; ods output Chisq=testchi; proc freq data=uno; tables num_productos*num_cargos/chisq; quit; ods results; Para evitar la salida en la ventana output o en formato HTML se emplea ODS NORESULTS. Con ODS OUTPUT hemos creado dos datasets. Veamos el log: ...

19 de mayo de 2008 · rvaquerizo

El `ODS` de SAS (I). Elementos del `OUTPUT`

Hoy comenzaré una serie de mensajes dedicados al ODS (Output Delivery System) de SAS. Este mecanismo de SAS nos permite un uso más eficiente del OUTPUT de nuestros pasos PROC además podemos crear Excel (como ya vimos), crear dataset, no generar salidas,… Antes SAS nos ofrecia un texto plano en la ventana OUTPUT, ahora generamos documentos sofisticados. En tres entregas veremos: *Trazar el OUTPUT de SAS *Datasets de salidas de SAS *Documentos con nuestras salidas de SAS: -HTML -PDF Como complemento a estas entregas es posible que redacte un mensaje con algunos ejemplos de uso del PROC TEMPLATE. En esta primera capítulo dedicado al ODS estudiaremos algunas salidas SAS y con ellas, sabremos identificar la estructura del OUTPUT. ...

8 de mayo de 2008 · rvaquerizo

Manual. Curso introducción de R. Capítulo 7: Funciones gráficas básicas en R

R dispone de múltiples posibilidades a la hora de realizar gráficos. De hecho, bajo mi punto de vista, puede ser una de las herramientas estadísticas más potentes al respecto, además es gratuita y existe una comunidad detrás que pone a nuestra disposición múltiples manuales y documentación. Debido al gran material existente este capítulo sólo será una pequeña introducción a sus posibilidades en sucesivas entregas veremos nuevas funciones y nuevos gráficos más aplicados a ejemplos reales. ...

16 de abril de 2008 · rvaquerizo

Manual. Curso introducción de R. Capítulo 6: Funciones de estadística descriptiva

En R trabajaremos con objetos y funciones. En capítulos anteriores hemos empezado a crear objetos, fundamentalmente vectores y matrices. En la presente entrega vamos a estudiar las funciones básicas de estadística descriptiva. Como funciones de medida de tendencia y localización tendremos: alturas<- scan() #creamos el objeto alturas con 11 observaciones 1: 1.75 1.67 1.89 1.78 1.54 1.90 1.87 8: 1.67 1.76 1.75 1.90 12: Read 11 items mean(alturas) 1.770909 median(alturas) 1.76 min(alturas) 1.54 max(alturas) 1.9 quantile(alturas) #cuartiles 0% 25% 50% 75% 100% 1.54 1.71 1.76 1.88 1.90 IQR(alturas) #rango intercuartílico 0.17 Como funciones de medida de dispersión tenemos: ...

31 de marzo de 2008 · rvaquerizo

Manual. Curso introducción de R. Capítulo 5: Lectura avanzada de datos

En esta nueva entrega aprenderemos a importar datos a R desde otras fuentes. Habitualmente no introduciremos manualmente los datos, emplearemos las posibilidades de lectura que nos ofrece R. En este capítulo leeremos ficheros de texto y ficheros Access, para ello necesitaremos el paquete de R RODBC. Para leer fichero de texto emplearemos un fichero de ejemplo GRADES.TXT que es un fichero de texto delimitado por espacios y sin cabeceras, tiene los siguientes campos: ...

10 de marzo de 2008 · rvaquerizo

Manual. Curso introducción de R. Capítulo 4: Contribuciones a R (paquetes)

En esta nueva entrega del manual introducctorio a la programación en R comenzaremos a familiarizarnos con las contribuciones que se realizan en el mundo a esta herramienta. La intención es cargar un paquete que contenga una funcionalidad en R que nos permita leer orígenes de datos ODBC para que, en sucesivas entregas, podamos leer datos de Access, Excel,… Los paquetes de R son contribuciones de programadores de todo el mundo para la creación de funcionalidades de R que contienen funciones que permiten que día a día R mejore y adquiera un mayor potencial. Estos paquetes se encuentran en el Comprehensive R Archive Network CRAN que es una red de ftp y servidores donde nos podemos descargar R o nos podemos descargar las contribuciones de los programadores de R de todo el mundo. En este caso para España tenemos la red CRAN espejo España En ella tenemos todos los paquetes disponibles por orden alfabético. ...

28 de febrero de 2008 · rvaquerizo