2011-10-08 14 views
7

estoy pensando en escribir una función de diccionario de datos en R que, teniendo una trama de datos como argumento, hará lo siguiente:Diccionario de datos de embalaje en I

1) Crear un archivo de texto, que:

a. Resume el marco de datos al enumerar el número de variables por clase, número de observaciones, número de observaciones completas ... etc.

b. Para cada variable, resuma los datos clave sobre esa variable: media, mínima, máxima, modo, número de observaciones perdidas ... etc.

2) Crea un pdf que contiene un histograma para cada variable numérica o entera y un gráfico de barras para cada variable de atributo.

La idea básica es crear un diccionario de datos de un marco de datos con una función.

Mi pregunta es: ¿hay un paquete que ya lo haga? Y si no, ¿la gente piensa que sería una función útil? Gracias

+0

lo mejor sería hacer una rebaja demasiado :) para que el resto pueda ser completado por el analista de datos o el propietario del DB. – Espanta

Respuesta

6

Hay una variedad de funciones describe en varios paquetes. El que estoy más familiarizado es Hmisc :: describe. Aquí está su descripción de su página de ayuda:

"Esta función determina si la variable es carácter, factor, categoría, binario, numérico discreto y numérico continuo, e imprime un resumen estadístico conciso según cada uno. Se considera una variable numérica discreto si tiene < = 10 valores únicos. En este caso, no se imprimen los cuantiles. Se imprime una tabla de frecuencias para cualquier variable no binaria si no tiene más de 20 valores únicos. Para cualquier variable con al menos 20 valores únicos, los 5 valores más bajos y más altos se imprimen ".

y un ejemplo de la salida:

Hmisc::describe(work2[, c("CHOLEST","HDL")]) 
work2[, c("CHOLEST", "HDL")] 

2 Variables  5325006 Observations 
---------------------------------------------------------------------------------- 
CHOLEST 
     n missing unique Mean  .05  .10  .25  .50  .75  .90 
4410307 914699  689 199.4  141  152  172  196  223  250 
    .95 
    268 

lowest : 0 10 19 20 31, highest: 1102 1204 1213 1219 1234 
---------------------------------------------------------------------------------- 
HDL 
     n missing unique Mean  .05  .10  .25  .50  .75  .90 
4410298 914708  258 54.2  32  36  43  52  63  75 
    .95 
    83 

lowest : -11.0 0.0 0.2 1.0 2.0, highest: 241.0 243.0 248.0 272.0 275.0 
---------------------------------------------------------------------------------- 

Además, en su punto de conseguir histogramas, el método Hmisc :: látex para un objeto describir producirá histogramas intercalados en la salida se ilustra arriba. (Necesita tener una función de instalación de LaTeX para aprovechar esto.) Estoy bastante seguro de que puede encontrar una ilustración de la salida en el sitio web de Harrell o en la presentación de Amazon Look "Look Inside" de su libro "Regression Modeling Strategies" ". El libro tiene un montón de material útil sobre el análisis de datos.

+0

Gracias por la información, muy útil, podría incorporar esto en mi función –