top 30 sas interview questions
Llista de les preguntes més freqüents entrevistes SAS amb respostes:
En aquest article, veurem alguns dels conceptes bàsics i avançats de la programació SAS a través de les preguntes i respostes de les entrevistes SAS més freqüents.
El sistema d’anàlisi estadística, conegut habitualment com SAS, es considera un conjunt de programari múltiple que s’integra i s’utilitza per a diverses operacions com ara Gestió de dades, Anàlisi predictiu - perspectiva i descriptiu, Millora de la qualitat, Anàlisi empresarial, Desenvolupament d’aplicacions, etc.
El gran nombre de personalització de components de SAS, així com la funció d’enfocament de programació extensa, realitzen tasques d’anàlisi de dades i transformació de dades. Pot funcionar en qualsevol sistema operatiu (Linux, Windows, etc.), ja que és independent de la plataforma.
Preguntes i respostes d’entrevistes SAS més populars
Aqui venim..
Q # 1) Enumereu les funcions realitzades per SAS.
Resposta: SAS (Sistema d’anàlisi estadística) té la seva pròpia importància en tots els àmbits empresarials.
A continuació es detallen algunes de les funcions resumides que realitza SAS:
- Gestió de dades i gestió de projectes
- Emmagatzematge de dades
- Recerca operativa i suport a la decisió
- Recuperació d’informació i gestió de la qualitat
- Planificació empresarial
- Anàlisi estadística
Q # 2) Quins són els 3 components de la programació SAS?
Resposta: Els 3 components de la programació SAS són:
- Declaracions
- variables
- Conjunt de dades
P # 3) Enumereu les regles de sintaxi seguides a les sentències SAS.
Resposta: El programa SAS s'escriu a la finestra de l'editor. Aquí conté una sèrie d’afirmacions seguides de la sintaxi adequada en un ordre perquè el programa SAS l’entengui.
Algunes de les regles de sintaxi que se segueixen en el cas del component Statement de SAS són les següents:
- El final de qualsevol sentència està marcat per un punt i coma (;).
- També s’utilitza un punt i coma per separar múltiples sentències que apareixen en una sola línia.
- Les sentències SAS no distingeixen entre majúscules i minúscules i hi ha un espaiat addicional abans que les sentències siguin eliminades automàticament.
- Els comentaris es poden incloure al programa SAS per a declaracions de dues maneres diferents, com ara:
- Una línia que comença amb un asterisc (*) i que acaba amb un punt i coma (;).
- Una línia que comença amb una barra inclinada i un asterisc (/ *) i que acaba amb un asterisc i una barra inclinada (* /).
Q # 4) Quins són els tipus de dades que conté SAS?
Resposta: 'Numèric' i 'Personatge' són els dos tipus de tipus de dades que conté el programa SAS.
P # 5) Què són les PDV i les seves funcions?
Resposta: Program Data Vector (PDV) és un concepte lògic i es defineix com una àrea de memòria on SAS està construint un conjunt de dades.
Les funcions del PDV són les següents:
- Es crea una base de dades amb una sola observació alhora.
- El buffer d’entrada per conservar les dades d’un fitxer extern es crea en el moment de la compilació.
- PDV conté dues variables automàtiques, és a dir, _N_ (mostra el recompte del pas de dades que s'està executant) i _ERROR_ (notifica l'error que es produeix en el moment de l'execució).
P # 6) Què en sabeu del conjunt de dades SAS?
Resposta: El conjunt de dades SAS es coneix bàsicament com les dades disponibles per a l’anàlisi dins d’un programa SAS. El conjunt de dades SAS també es coneix com la taula de dades SAS.
La taula de dades SAS consta de dues parts:
- Columnes de variables
- Fileres d'observacions
La informació útil sobre el conjunt de dades SAS es pot resumir de la següent manera:
- SAS Dataset pot llegir i tenir fonts de dades incorporades per utilitzar-les com Excel, Access, etc.
- El conjunt de dades que només s’utilitza en l’execució de la sessió actual i es descarta després de finalitzar la sessió es coneix com a conjunt de dades temporals.
- El conjunt de dades que s’emmagatzema per utilitzar-lo en la sessió futura també es coneix com a conjunt de dades permanent.
- Es pot accedir al conjunt de dades integrat mitjançant aquest camí d'accés Biblioteques -> Les meves biblioteques-> SASHELP.
Q # 7) Expliqueu per què s'utilitza el doble final @@ a les declaracions d'entrada?
Resposta: Durant la iteració de passos de dades, incloure el doble final @@ a les instruccions d'entrada, implica que SAS hauria de tenir el registre actual amb l'objectiu d'executar la següent instrucció d'entrada en lloc de canviar al nou registre.
Q # 8) Expliqueu la diferència entre les opcions NODUP i NODUPKEY?
Resposta: Per eliminar valors duplicats de la taula, PROC SORT es classifica bàsicament entre dues opcions:
- NODUP
- NODUPKEY
La diferència entre aquestes dues opcions es pot veure a continuació:
NODUPKEY | NODUP |
---|---|
Compara només la variable BY present al conjunt de dades. | Compara totes les variables presents al conjunt de dades. |
Elimina les opcions duplicades dels valors de la variable que apareixen a la instrucció BY. | Identifica i elimina observacions duplicades. |
Sintaxi: PROC SORT DATA = readin NODUPKEY; BY nom de variable; CORRER; | Sintaxi: PROC SORT DATA = readin NODUP; BY nom de variable; CORRER; |
P # 9) Quina ordre s'utilitza per realitzar l'ordenació al programa SAS?
Resposta: L’ordre PROC SORT s’utilitza per realitzar l’ordenació, ja sigui en una sola variable o en diverses variables. Aquesta ordre es realitza al conjunt de dades on es crea el nou conjunt de dades com a resultat de l'ordenació, però el conjunt de dades original no es modifica.
Sintaxi:
PROC SORT DATA=original OUT=Sorted; BY variable;
On,
'Original' fa referència al conjunt de dades original
'Ordenat' fa referència al resultat com a conjunt de dades ordenat
'Variable' fa referència a la columna en què es fa l'operació d'ordenació.
L'ordenació es pot fer tant en ordre ascendent com descendent.
Perquè el conjunt de dades es mostri en ordre descendent, s'utilitza la paraula clau 'Descendent' a la sentència BY amb el nom de la columna en què s'ha de realitzar l'ordenació.
PROC SORT DATA=original OUT=Sorted; BY DESCENDING variable
Q # 10) Expliqueu la diferència entre Informat i Format amb un exemple.
Resposta: La diferència entre Informat i Format es pot explicar com:
Informat | Format |
---|---|
Indiqueu SAS com llegir les dades a la variable SAS. | Indiqueu a SAS com es mostren els valors a la variable. |
S’utilitzen per llegir les dades o prendre dades d’entrada de fitxers externs. | S’utilitzen per escriure les dades. |
Q # 11) Diferencieu INPUT i INFILE.
Resposta: La inclusió d’una sentència INFILE dins de la programació SAS identifica un fitxer extern que consta de les dades, mentre que incloure la sentència INPUT a la programació SAS descriu les variables utilitzades.
La sintaxi per a INFILE:
INFILE ‘filename’;
La sintaxi per a INPUT:
INPUT ‘varname1’ ‘varname2’;
P # 12) Expliqueu l'ús de la impressió PROC i del contingut PROC?
Resposta: El pas PROC del programa SAS s'utilitza per invocar procediments integrats per analitzar les dades del conjunt de dades.
Impressió PROC: Assegura que les dades presents al conjunt de dades es llegeixen correctament.
Continguts PROC: Mostra la informació sobre el conjunt de dades SAS.
P # 13) Expliqueu DATA_NULL_?
Resposta: Tal com defineix el nom, DATA_NULL_ és un pas de dades que en realitat no crea cap conjunt de dades.
S'utilitza per:
- Creació de variables macro.
- Escriptura de la sortida sense cap conjunt de dades.
Q # 14) Com es converteix la variable de caràcter en una variable numèrica i viceversa?
Resposta: Sota la programació SAS, apareixen moltes tasques en què un valor de caràcter s'ha de convertir en el numèric i, de la mateixa manera, un valor numèric s'ha de convertir en un valor de caràcter.
PUT () s’utilitza per convertir numèric a caràcter. En aquest cas, el format de font i el tipus de variable de font sempre han de ser similars.
Exemple:
char_var= PUT( num_var, 6.);
INPUT () s’utilitza per convertir un caràcter en numèric. En aquest cas, el tipus de variable font sempre ha de ser variable de caràcter.
Exemple:
Num_var= INPUT(char_var,2.0);
P # 15) Quin és el propòsit de _CHARACTER_ i _NUMERIC_?
Resposta: Al conjunt de dades actual,
_PERSONATGE_ defineix totes les variables de caràcter que es defineixen actualment.
Exemple : Per incloure totes les variables de caràcters a PROC MEANS, s’utilitzen les afirmacions següents:
PROC MEANS; Var_character_; Run;
_NUMERIC_ defineix totes les variables numèriques que es defineixen actualment.
Exemple: Per incloure totes les variables numèriques a PROC MEANS, s’utilitzen les següents afirmacions:
PROC MEANS; Var_numeric_; Run;
P # 16) Quines ordres s’utilitzen en cas d’incloure o excloure alguna variable específica al conjunt de dades?
Resposta: Amb aquesta finalitat s’utilitzen les opcions DROP, KEEP i conjunt de dades.
La variable que volem eliminar del pas de dades s'especifica a la instrucció DROP.
La variable que volem retenir del pas de dades s'especifica a la instrucció KEEP.
P # 17) Diferencieu entre MITJANS PROC i RESUM PROC.
Resposta: La diferència entre PROC MEANS i PROC RESUM es pot entendre de la següent manera:
MITJANS PROC | RESUM DEL PROC |
---|---|
Aquest procediment produeix l'informe imprès per defecte a la finestra OUTPUT. | Aquest procediment inclou la IMPRESSIÓ a la declaració per produir l'informe imprès. |
EL PROC MITJÀ pren per defecte totes les variables numèriques de l’anàlisi. | RESUM DE PROC inclou les variables a l’anàlisi estadística que es descriuen a la declaració VAR. |
P # 18) Expliqueu el propòsit de les funcions SUBSTR a la programació SAS.
Resposta: A la programació SAS, sempre que el programa exigeix abstraure una subcadena, s'utilitza la funció SUBSTR en el cas d'una variable de caràcter.
Quan s'especifica una posició inicial i una longitud, aquesta funció s'utilitza per a l'abstracció de la cadena de caràcters.
Sintaxi: SUBSTR (char_var, inici, longitud);
P # 19) Anomeneu i descriviu breument algunes funcions de caràcters SAS que s’utilitzen per a la neteja de dades.
Resposta: A continuació es detallen algunes funcions de caràcters SAS que s’utilitzen per a la neteja de dades:
- Comprimir (cadena_carregada) La funció s'utilitza per eliminar espais en blanc o alguns caràcters especificats d'una cadena determinada.
- TRIM (str) La funció s'utilitza per eliminar espais en blanc d'una cadena determinada.
- MAJÚSCULA (cadena_car) La funció s'utilitza per convertir tots els caràcters d'una cadena en minúscules.
- UPCASE (char_string) La funció s'utilitza per convertir tots els caràcters d'una cadena en majúscules.
- COMPBL (str) La funció s'utilitza per convertir diversos espais en blanc en un únic espai en blanc.
P # 20) Esmenta algunes maneres amb què es fa una 'cerca de taula' a la programació SAS.
Resposta: A la programació SAS, els valors de cerca de taules es poden emmagatzemar de les maneres següents:
- Codi
- Matriu
- Objecte hash
- Format
- Conjunt de dades
Les tècniques següents s’utilitzen per realitzar la “cerca de taula” a SAS respectivament:
- Instruccions SELECT / WHEN o IF / THEN
- Valor de l'índex de matriu
- Valor de la clau de l'objecte Hash
- Instrucció FORMAT, funció PUT
- Combina, uneix, KEY = Opció
Vegem un exemple que mostra la manera 'Codi' de realitzar la cerca de taules mitjançant instruccions 'IF / THEN':
data location; set myinfo; if AreaCode='226' then Location='Ontario, Canada'; else if AreaCode='212' then Location='New York, NY'; else Location='Unknown'; run;
Q # 21) Diferencieu les funcions CEIL i FlOOR.
Resposta: funció CEIL s'utilitza per truncar valors numèrics on mostra la sortida com el nombre enter més petit. Pel nombre enter més petit, aquí significa que el valor enter és superior a / igual a l'argument.
Exemple: CEIL (12.85) mostrarà la sortida com a 13.
Funció PLANTA s'utilitza per truncar valors numèrics on mostra la sortida com el màxim enter. Com a màxim enter, aquí significa que el valor enter és menor que / igual a l'argument.
Exemple: FLOOR (12.85) mostrarà la sortida com a 12.
P # 22) Quines són les maneres en què es poden crear variables macro a la programació SAS?
Resposta: Bé, es poden utilitzar diverses tècniques diferents per crear variables macro en la programació SAS.
A continuació es detallen els cinc mètodes més utilitzats:
- Instrucció% LET
- Paràmetres macro (anomenats i posicionals)
- Declaració% DO (iterativa)
- INTO a PROC SQL
- Truca a la rutina SYMPUTX
P # 23) Expliqueu el propòsit de la declaració RETAIN.
Resposta: Com el significat de la paraula 'RETAIN' significa mantenir el valor un cop assignat, l'objectiu de la declaració RETAIN és el mateix en la programació SAS que el seu significat implica.
Dins d'un programa SAS, quan cal passar de la iteració actual al següent pas de dades, en aquest moment la instrucció RETAIN indica a SAS que conservi els valors en lloc de definir-los com a faltants.
Exemple: Imprimim un programa que mostrarà el valor de sortida de 'z' a partir d'1 mitjançant la instrucció RETAIN.
data abc; set xyz; RETAIN z 0; z = z + 1; run;
P # 24) Quina ordre s'utilitza per desar registres al fitxer extern?
Resposta: PROCÉS IMPRESSIÓ La comanda s'utilitza per desar registres al fitxer extern.
Preguntes i respostes de l’entrevista c ++
Exemple:
PROC PRINTTO log='C:UsersabcDownloadsLOG11.txt' new; run;
Q # 25) Esmenta alguns errors comuns que normalment es cometen a la programació SAS.
Resposta: A continuació, es detallen alguns dels errors més habituals que solen cometre's, especialment quan no coneixeu aquest llenguatge de programació.
- La sintaxi bàsica inclou un punt i coma al final de cada sentència i la falta de punt i coma és l’error més comú.
- Omet la comprovació dels registres després d’enviar el programa.
- Comentar errors com no utilitzar els comentaris quan sigui necessari o utilitzar comentaris de manera inadequada.
- No utilitzar mètodes de depuració adequats.
P # 26) Esmenta les opcions del sistema SAS per depurar macros SAS.
Resposta: Per ajudar-vos a fer el seguiment del codi macro i del codi SAS generat per les macros, es poden utilitzar algunes opcions del sistema.
Ells són:
- MLOGGICA
- MPRINT
- SÍMBOLS
El missatge que generaran aquestes opcions del sistema es pot veure al registre SAS.
P # 27) Diferencieu les funcions SAS i els procediments SAS.
Resposta: Les diferències principals es poden descobrir / entendre pel cas explicat tant per a les funcions SAS com per als procediments.
Caixa:
Per a Funció , es proporciona el valor de l'argument o diguem que es pren per al càlcul a través de l'observació esmentada a la declaració del programa, mentre que, en el cas de Procediment , s'espera que cada observació només tingui una variable mitjançant la qual es faci el càlcul tal com s'esmenta a l'exemple següent.
Entenguem-ho amb exemples:
data average; set temp; avgtemp = mean( of T1 – T24 ); run;
En els exemples anteriors, els arguments passats a la funció mitjana es prenen per al càlcul com a observació.
proc sort; by month; run; proc means; by month; var avgtemp; run;
En l'exemple anterior, Proc significa que la funció calcula la temperatura mitjana d'un argument que es passa com a observació, és a dir, per mes.
P # 28) Què en sabeu de SYMPUT i SYMGET?
Resposta: A continuació s'esmenten les principals diferències entre tots dos.
SYMPUT s’utilitza per emmagatzemar el valor d’un conjunt de dades a la variable macro mentre que SYMGET s’utilitza per recuperar el valor de la variable macro al conjunt de dades.
P # 29) Expliqueu els delimitadors d'entrada especials que s'utilitzen en la programació SAS.
Resposta: Els delimitadors d'entrada especials utilitzats en la programació SAS són:
- DLM
- DSD
S'utilitzen a la declaració 'INFILE' i DSD té la funcionalitat d'ignorar els delimitadors que apareixen inclosos entre cometes.
P # 30) Quina funció s'utilitza per comptar el nombre d'intervals entre dues dates SAS?
Resposta: La funció d'interval INTCK s'utilitza per comptar el nombre d'intervals entre dues dates SAS determinades.
Sintaxi:
INTCK(interval,start-of-period,end-of-period)
Conclusió
Fins ara, hem vist diverses preguntes i respostes que us haurien donat una clara comprensió dels conceptes de programació de SAS, així com una idea de la naturalesa de les preguntes que es feien a les entrevistes de SAS.
Doncs bé, si sou nou en la programació SAS, el coneixement d’algunes tecnologies de programació per ordinador i familiarització amb SQL (Structured Query Language) serà un avantatge afegit per comprendre i aprendre SAS ràpidament.
Espero que esteu preparats per afrontar qualsevol entrevista SAS amb confiança !!