Resumen de los puntos de conocimiento de la revisión final de SAS (notas del experimento de estadística multivariada aplicada)

1. Creación, almacenamiento, exportación, importación y edición de conjuntos de datos:

Para los pasos de datos y los pasos del proceso, se debe agregar la ejecución a cada paso y los pasos del proceso se pueden ejecutar juntos.
1. Cree un conjunto de datos temporales y guárdelo en la biblioteca temporal de trabajo
data temp (agregue el nombre del conjunto de datos que desea crear después de los datos)
2. Cree un conjunto de datos permanente
libname Study'x:\xxx\xx' ; (nombre de la base de datos' La ruta absoluta de la base de datos')
estudio de datos.xxx; (xxx representa el nombre del conjunto de datos)
3. Entrada de importación de datos
abc$ x1-x3 @/@@; (@ corresponde a la fila de datos por fila, @@ puede unir todas
las tarjetas de una fila);
xxxxxxxx
;
ejecutar;

proc import out=xxx (nombre del conjunto de datos, sin punto y coma aquí)
datafile="xxxx.xls"; (ruta absoluta a la tabla de Excel)
dbms=excel2000 reemplazar;
ejecutar;

data xxx ;(o libname)
infile 'xxxxx' (indica la ruta absoluta del archivo de datos como D:\test\test.txt)
ingresa abc$ x1-x3; (el nombre y tipo de datos correspondientes a cada dato en el conjunto de datos)
ejecutar;

4. Edición y exportación de datos
Para un conjunto de datos vacío, después de la creación,
establezca xxx (un conjunto de datos existente)
mantenga xx xx (conserve las variables en el conjunto de datos sin el signo $)
(o elimine xx xx para eliminar variables en el conjunto de datos) ciertas variables)
se ejecutan;
pero set es una conexión en serie, y el efecto de importación de datos puede no ser bueno para conjuntos de datos ya escritos.
En este momento, se necesita conexión paralela y fusión; ya sea que se establezca o mantenga, se necesitan múltiples datos Los conjuntos se pueden conectar en serie.
Por ejemplo, crear un conjunto de datos vacío temp1, establecer temp2 y temp3 se almacenan datos concatenados. Esto requiere que temp2 y temp3 sean del mismo tipo de datos y fusionar los datos concatenados temp2 y temp3 existen. temp2 y temp3 son no es el mismo tipo de datos.

Seleccione variables en un determinado conjunto de datos, como sexo, exporte el conjunto de datos stf para hombres y exporte el conjunto de datos stm para mujeres
stf stm; (se pueden crear varios conjuntos de datos temporales al mismo tiempo)
set xxx; (conjunto de datos a procesar )
seleccionar (sexo); (Seleccionar variables en el conjunto de datos a procesar)
cuando ("masculino") genera stf; (la salida es exportar los datos de los niños en el conjunto de datos xxx al conjunto de datos stf)
cuando ("mujer ") salida stm;
de lo contrario, ponga sexo= "Error"; (para evitar problemas con la importación de datos)
fin; (agregue fin aquí)
ejecute;
proc print data=stf; (declaraciones de impresión comunes en los pasos del proceso)
proc print data=stm;

¿Qué debemos hacer para procesar el contenido de los datos originales?
La forma común de escribirlo es crear un conjunto de datos vacío, y set utiliza el conjunto de datos que se va a procesar, como por ejemplo:
data temp2;
set temp1;

sum=test1+test2+test3; / Aquí las variables se definen para sumar, promediar y valores de índice. /
promedio=suma/3;
y=x
3;**
prueba=suma(x1,x2,x3) o suma(de x1 x2 x3) o suma(de x1-x3) / Aquí está el uso de función de suma /
ejecución;
Por supuesto, también puede editar las variables directamente entre la entrada y las tarjetas, tales como:
datos de grasa corporal;
sexo de entrada $ fatpct @@;
fat=fatpct/100;
tarjetas;

consejos:recall puede recuperar el código ahora mismo y lib puede abrir la biblioteca del conjunto de datos

2. Análisis descriptivo de datos estadísticos.

1.significa procesar
la media de la muestra, la mediana, los cuartiles, la varianza de la muestra, el rango, el coeficiente de variación, la
asimetría, la curtosis, las estadísticas de distancia central estándar, de segundo orden, de tercer orden y de cuarto orden:
proc significa datos sin impresión = temperatura media mediana qrange var rango cv asimetría curtosis std;
var xx;
run;

El momento central de orden k requiere operaciones adicionales:
B2=Σ(Xi-X Pull)²/n, B3=, B4=;
OK Envíe los resultados anteriores a un conjunto de datos temp1, luego cree una nueva tabla temp2 para importar los datos originales y use fusionar para conectar la media y los datos. También puede sumar/n directamente en temp2 para obtener la media y finalmente usar el símbolo de índice** y finalmente usar suelte para conectarlo a la tabla del proceso de medios para obtener los resultados de las estadísticas de datos.

2. Datos básicos, momentos estadísticos del proceso univariado
, medidas básicas de posición y variabilidad, prueba de posición, prueba de normalidad (normal), cuantiles, gráficos de observación de valores extremos: diagramas de tallo y hojas, diagramas de caja,
diagramas de probabilidad normal (plot)
proc univariado. data=temp trazar normal;
var xxx;
ejecutar;

Cuando el tamaño de la muestra es menor que 2000, mire la prueba de normalidad de Shapiro-Wilk, de lo contrario mire la estadística de Kolmogorov-Smirnov. Cuando el valor de P es >0.05, acepte H0, rechazar H1 y considerar que la variable se ajusta a la distribución normal, en caso contrario no obedece.
El nivel de significancia a = 0.01 y 0.05, el primero es extremadamente significativo, el segundo es una división significativa y el nivel de significancia es el valor p. Si P <0.05 significa que hay al menos un 95% de certeza de que algo sucederá. Estadísticas Las descripciones verbales son
significativas al nivel 0,05.
Si P<0,01, significa que hay al menos un 99% de certeza de que algo sucederá, y el lenguaje estadístico se describe como significativo en el nivel 0,001.
Según h0h1, que es la parte correspondiente del principio de evento completo, se pueden sacar conclusiones experimentales.

**

3. Análisis de regresión lineal univariante

**
proc reg data=test1;
model y=x/cli; (La confianza del valor predicho obtenido por cli es un intervalo de confianza del 95%. Agregue (x,.) a los datos originales para obtener el valor inferido y la confianza correspondiente. intervalo) ejecutar
;
/ Crear un diagrama de dispersión de Y versus _ _ _ set test1; x=1/x; (hipérbola) y=1/y; (x=x(1/2);y=y;función de potencia) (x=log(x);y=y;log Función) (x=1/x; y=log(y); función exponencial negativa) ejecutar; proc reg data=test2; modelo y=x; trazar y*x ; ejecutar; La tabla de estimaciones de parámetros puede obtener la pendiente y la intercepción. A partir de esto se obtiene la ecuación de regresión, que también se puede ver en el diagrama de dispersión.















Prueba de significancia de la ecuación de regresión: de la tabla de Análisis de Varianza, se puede ver que el Valor F = 140,99, el valor de Pr>F (Probabilidad de probabilidad) es menor que 0,0001, mucho menor que 0,05, por lo que se rechaza la hipótesis original. , se acepta la hipótesis alternativa y se consideran y y x Existe una correlación lineal significativa entre ellos,
del valor de R-Cuadrado de 0.9592 se puede observar que el grado de ajuste de la ecuación es muy alto 95.92% de la La información de los valores de observación de la muestra se puede explicar mediante la ecuación de regresión, por lo que el efecto de ajuste es bueno. Se cree que existe una correlación lineal significativa entre y y x. La
mejor curva de ajuste también depende del valor de R-cuadrado. Si el valor es grande, el grado de ajuste es bueno.
Si el diagrama de dispersión no es lineal o la curva no es lineal, debe transformar las variables en lineales
usando predict_y=intercept+x*x . Puede utilizar esta declaración para realizar predicciones de datos en el conjunto de datos original, similar a (x., .)

**

4. Análisis de regresión lineal múltiple y análisis residual.

**

Realice una regresión múltiple para y y x1, x2, x3:
término cruzado variable: Xi4=Xi1 Xi2; Xi5=Xi1 Xi3; Xi6=Xi2*Xi3;
proc reg data=temp2;
var Xi1-Xi6;
modelo Yi=Xi1-Xi3/ cli clb r ss2;
trazar r.*pr*Xi1 r.*Xi2 r.*Xi3 r.*Xi4 r.*Xi5 r.*Xi6 npp.*r.; ejecutar; Explicación: cli calcula la confianza del valor
predicho
Como intervalo de confianza del 95%, clb se utiliza para encontrar
la r del coeficiente de regresión para el análisis residual, que puede obtener el residuo jackknife, el residuo de Student, el mapa de significación residual y el estadístico D de Cook.
SS2 utiliza este tipo de modelo para calcular la
suma de regresión del vector residual de cuadrados perdido bajo restricciones. El vector residual es la columna Residual; la gráfica residual sobre los valores predichos ^Y y xi y el término cruzado de la variable: gráfica r.
* pr*Xi1 r .*Xi2 r.*Xi3 r.*Xi4 r.*Xi5 r. Xi6
npp. r. es un diagrama de probabilidad normal del residual. Si el residual se distribuye básicamente en una línea recta, puede ser básicamente Se consideró que el residual obedece a la distribución normal.

proc reg data=temp1;
modelo Yi=Xi1-Xi3/ss2;
restringir Xi1=Xi2;

ejecutar; Se puede ver en la figura que cuando el nivel de significancia a=0.01, el valor P es <0.0001<0.01, lo que indica que el el subrango de regresión tiene una correlación lineal significativa, es decir, satisface la condición de restricción Xi1 = Xi2,
La descripción SS2 correspondiente a RESTRICT agrega esta restricción y pierde la suma de cuadrados de regresión 15.60337, pero a cambio de la simplificación del modelo, cuanto menor es el valor, más objetiva existe la restricción. (También puede usar la prueba Xi1=Xi2)
proc reg data=temp1;
/ método R-Squre, MSE, CP para seleccionar la ecuación /
modelo óptimo Yi=Xi1-Xi3/selection=rsquare mse cp;
ejecutar;

/ método PRESS para seleccione la ecuación óptima Ecuación /
proc reg data=t;
modelo z=Xi1/noprint;
salida out=temp2 press=press;
run;
proc significa uss data=temp2;
var press;

run; (requiere repetir para todas las variables y términos cruzados variables en secuencia Operación)
PRESS (Criterio de suma de cuadrados prevista), puede escribirlo en el código anterior de esta manera, o puede realizar directamente el proceso proc reg en todas las combinaciones de variables con la palabra clave estadística r, y el La segunda tabla obtenida contiene SS residual previsto (PRESS),
luego compare cada valor y elija el que tenga el valor más pequeño. Por lo tanto, según este criterio, USS=1,5990749 sólo retiene Xi1 y Xi3 como mínimo.
Entre los criterios anteriores, cuanto mayor sea el valor de R², mejor, y cuanto más pequeños sean CP, MSE y PRESS, mejor
/ Método de regresión por pasos para seleccionar la ecuación óptima /
datos de registro de proceso = temp1;
modelo Yi=Xi1-Xi3/selección=paso a paso;
correr;

**

5. Análisis de componentes principales

**
/ Pasos principales del análisis de componentes principales /
proc princomp data=temp2 prefix=S out=temp3 outstat=temp4;/ std (type=cov/corr) /
var X1-X4;
run;
proc plot data=temp3;

/ Painter Diagrama de dispersión entre componentes /
diagrama S2 S1 $ n=" "/
href=-1 href=2 vref=0;

/ Ordenar por el valor de puntuación de S1 de pequeño a grande /
proc sort data=temp3;
por S1;

/ Calcular el valores propios y vectores propios ortogonales de una matriz: /
proc iml;
a={15 -6 0,-6 18 -6,0 -6 21};
llamar a eigen(valores, vectores, A);
imprimir vectores de valores ;
run;

/ Calcula el formato del análisis de componentes principales a partir de los datos de la matriz de covarianza, o puedes cambiarlo a corr; /
data t(type=cov);
nombre de entrada $ x1-x3; tipo ='cov';
tarjetas;
x1 15 -6 0
x2 -6 18 -6
x3 0 -6 21
;
ejecutar;
proc princomp data=t (tipo=cov) covarianza;
var x1-x3 ;
ejecutar;

análisis: out obtiene los datos originales y los datos de puntuación del componente principal, y outstat obtiene el conjunto de datos estadísticos.
prefix especifica el prefijo del componente principal. Si falta, el valor predeterminado es print1, print2...
El diagrama de dispersión Del componente principal se puede encontrar la situación de polarización, arriba, abajo, izquierda y derecha, y luego realizar el análisis real. La
matriz de correlación, los valores propios y los vectores propios, así como la tasa de contribución y la tasa de contribución acumulada se obtienen del valor propio. y vectores propios.
Si un determinado valor propio es 0, se puede juzgar que este conjunto de variables tiene una relación lineal aproximada. La expresión del vector propio
:escomponente El cálculo de valores propios y vectores propios puede utilizar el proceso proc iml y el proceso proc princomp, este último requiere especificar el tipo de datos.

**

6. Análisis factorial

**
datos del factor proc=método temp1=principal priors=una proporción de puntuación de corrección simple=0,80;
var pop school emplea casa de servicios;
ejecutar;

el método es principal, que utiliza el método del componente principal para realizar el análisis factorial.
priors=one especifica el cálculo de la varianza del factor común anterior. Los métodos de estimación, ambos son los parámetros predeterminados del programa
corr para encontrar la matriz de correlación y la matriz de correlación parcial, simplemente genera la
puntuación de la variable condicional simple y utiliza el método de regresión para estimar la puntuación del factor. La
proporción del coeficiente del modelo es para seleccionar el número de factores comunes m, de modo que m satisfaga λ1+...
Para la solución de factor común obtenida por el entero positivo más pequeño +λm / p ≥ 0,80, la matriz de carga factorial inicial no cumple con el "criterio de estructura simple", es decir, las variables representativas típicas de cada factor común no son muy prominentes, por lo que es fácil hacer que el significado de los factores
factor data=d832 rotar=varimax n=3;
/ ROTATE=VARIMAX (o R=V) representa la matriz de carga de factores Realizar rotación ortogonal máxima de varianza , la opción N=3 especifica el número de factores comunes m=3. /
var x1-x8;
run;

Después de la rotación ortogonal, solo unos pocos indicadores de cada factor tienen cargas factoriales mayores, todos los cuales pueden clasificarse Los indicadores se clasifican
/Utilice el método de regresión para encontrar la función de puntuación de los factores, calcule la puntuación de los factores de la muestra y dibuje el diagrama de dispersión de las puntuaciones de los factores primero y segundo / datos
del factor proc=d832 rotar=v puntuación n=3 out=o852;
var x1-x8;
ejecutar;
proc imprimir datos=o852;
var factor1 factor2 factor3;
ejecutar;
proc trazar datos=o852;
trazar factor2 factor1 $ n=′ ′/
href=0 vref=0;
ejecutar;

matriz de carga factorial y expresión del modelo factorial , Fórmula de expresión de puntuación de factor, modelo de factor después de la rotación, hi² y qi², el promedio de carga analítica después de la polarización de la carga no se puede interpretar y se requiere rotación de factor para obtener la carga polarizada antes de la interpretación profesional

**

7. Análisis discriminante

**
proc discrim data=temp1 wcov simple pool=no manova método=normal crosslisterr listerr;
/ proc discrim data=temp1 pool=yes manova método=normal crosslisterr listerr; /
grupo de clases;
var x1-x2;/ var x1 x3;var x1-x4; /
priors iguales; / priors '0'=0.05 '1'=0.95; /
run;

El vector medio de la población y de cada clase se puede obtener mediante
wcov simple para obtener la covarianza dentro del grupo, es decir,
se puede obtener la covarianza de muestra pcov Covarianza de combinación, las condiciones de uso correspondientes de estas dos covarianzas están relacionadas con el grupo
. Cuando el grupo es sí, se utiliza la matriz de covarianza de combinación, lo que significa que la matriz de covarianza general correspondiente no es la mismo.
Cuando es no, se utiliza la matriz de covarianza intragrupo, lo que significa que todas las poblaciones correspondientes obedecen a la población normal con matrices de covarianza iguales.
Al realizar la prueba, la matriz de covarianza dentro del grupo se corrige para la prueba de razón de verosimilitud, y slpool se utiliza para especificar el nivel de prueba de homogeneidad. El método predeterminado es 0.1, que significa normal
. La clase obedece a la distribución normal multivariada. Si es npar, significa que no obedece a la distribución. El método no paramétrico
crosslisterr es se utiliza para generar los resultados de la prueba retrospectiva en forma de tabla cruzada, utilizando el método jackknifing.
listerr es la información de error de juicio inverso generada por la probabilidad posterior, que requiere que el resultado de discriminación se obtenga de acuerdo con el criterio de distancia.
Priors es igual, lo que significa que las probabilidades anteriores son iguales y es proporcional, lo que significa que la La probabilidad previa es igual a la frecuencia de muestra. También puede especificar la probabilidad previa de la marca de clasificación, pero la suma Compare la calidad del criterio de discriminación con 1
y observe la opción Total del resultado del juicio erróneo. En términos generales, cuyo criterio "cuanto más pequeño, mejor.
En el caso de muestras pequeñas, generalmente es más preferible utilizar la matriz de covarianza conjunta para la discriminación. La muestra es pequeña y la especificidad es alta. La matriz de covarianza conjunta puede equilibrar mejor los datos. Manova obtiene 4
estadísticas . Lambda de Wilks se utiliza para medir la relación entre la suma de cuadrados dentro del grupo y la suma total de cuadrados. Un valor lambda de Wilks grande indica la media de cada grupo. Básicamente igual,
en el análisis discriminante, el análisis discriminante sólo tiene significado cuando las medias del grupo son desiguales
**

8. Análisis de conglomerados

** Cuando el número de muestras es de 1 a
100, utilice la agrupación del sistema proc cluster
proc cluster data=temp1 método=single std pseudo; / El método único no es adecuado para ccc y tiene errores // proc cluster data=temp1 método=ward std pseudo ccc outtree =temp2; / / var x1-x6 / / id group / proc tree horgraphics; run; El single aquí usa el método de distancia más corta. Los métodos comúnmente utilizados incluyen complete (método de distancia más larga) y eml (método de máxima probabilidad). ).11 métodos de agrupación como, centroide (método del centro de gravedad), std es para estandarizar los datos, proc tree es para imprimir el gráfico genealógico, hor es hacer el gráfico horizontalmente, pseudo es para obtener PSF y PSFT2, es decir , estadísticas pseudo F y pseudo t² para juzgar la puntuación Cuando el número de muestras en es 100~100000, utilice el proc de agrupación dinámica fastclus proc fastclus data=temp1 maxc=4 list out=temp2; var x1-x8; id area; proc datos candisc=temp2 salida=temp3; var x1-x8;














class cluster;
ejecutar;

Utilice la agrupación de variables proc varclus al realizar análisis de conglomerados en variables
proc varclus data=temp1 trace outtree=test; / centroid minc=4 /
var x1-x8;
proc tree data=test horizontal;
ejecutar;

el valor predeterminado es The El método del componente principal, más el centroide se analiza desde el método del componente del centro de gravedad.
Se pueden establecer los números de grupo máximo y mínimo minc maxc; el seguimiento enumera las clases iteradas.
También puede usar proc transpose para realizar la conversión de columnas y columnas para agrupar la variable. sistema:
proc transpose data=temp1 out=temp2;
var x1-x8;
proc print data=temp2;
proc cluster data=temp2 método=single std pseudo;
var COL1-COL31;
id NAME ;
gráficos hor del árbol de proc;
ejecutar;

análisis de clasificación : A juzgar por el valor R², cuando una determinada clase cae bruscamente, es el estándar para dividirse en varias clases.
El valor pseudo-F es cuando ocurre un pico y la clasificación se basa en la clase donde se encuentra el pico.
El análisis de conglomerados incluye el tipo R para agrupar variables o indicadores, y el tipo Q para agrupar muestras. Las estadísticas que distinguen a los dos son el coeficiente de similitud y la distancia.
Para el método varclus de agrupación de variables, los resultados de la clasificación se pueden obtener directamente en los resultados y también puede analizarlos usted mismo.

Supongo que te gusta

Origin blog.csdn.net/weixin_56115549/article/details/125030084
Recomendado
Clasificación