/* INTENZITA.C skot..................*/ /* cteni souboru s hlavickou ulozeneho z XLS */ /* do TXT formatu, sloupce oddelene tabulatory */ /* ............. import banky byku...............*/ /* vypocet indexu pro byky a prumery pri selekci dle ruzne intenzity selekce*/ /* 12.9.2005 VUZV */ dm output 'clear'; dm log 'clear'; PROC IMPORT OUT= WORK.byci DATAFILE= "c:\šafus\selekční indexy\čestr\bc c.txt" DBMS=TAB REPLACE; GETNAMES=YES; DATAROW=2; RUN; data ph; set work.byci; keep OREG ML TP BP BKG VLPL PLDCER VKRIZ OSVAL DZAD SZAD SKLZAD STRUP PKON HLEZKL SPENKA PAZNEHT PUPVEM NASVEM ZAVVAZ ZAKLVEM PSTRUK DSTRUK TLSTRUK JATVYT NETTO PLL; tp=tp/100;bp=bp/100;bkg=bkg/100;vlpl=vlpl/100;pldcer=pldcer/100;vkriz=vkriz/100; osval=osval/100;dzad=dzad/100;szad=szad/100;sklzad=sklzad/100;strup=strup/100; pkon=pkon/100;hlezkl=hlezkl/100;spenka=spenka/100;pazneht=pazneht/100;pupvem=pupvem/100; nasvem=nasvem/100;zavvaz=zavvaz/100;zaklvem=zaklvem/100;pstruk=pstruk/100; dstruk=dstruk/100;tlstruk=tlstruk/100;jatvyt=jatvyt/100;netto=netto/100;pll=pll/100; if bkg>60 then delete; proc means;title "Nactene udaje";run; data ind; set ph; sML= 434.05/434.0534714; sTP= 0.21 /0.2073408; sBP= 0.13/0.1256954; sVP= 9.99 /1.1612516; sPD= 9.23 /0.9077550; sVK = 2.52 /1.1796497; sOS= 2.95 /1.1735322; sDZ = 2.58/1.3209157; sSZ = 2.99/1.2153572; sSKL= 3.36/1.3967770; sSTR= 2.58/1.2744522; sPK = 3.2/1.3194744; sHL= 2.65 /1.3077539; sSPE= 2.69 /1.3608356; sPAZ= 3.21 /1.3316447; sPU= 2.71 /1.4119878; sNAS= 2.58/1.3317558; sZAV= 3.12 /1.2823269; sZAKL= 2.57/1.3089661; sPST= 2.73 /1.4019949; sDST= 3.10/1.2667705; sTLS=2.73 /1.3858383; sJAV=0.18 /0.1790559; sNET= 12.11 /1.6606237; sPL= 0.10 /1.3109563; /*....index SIC...............*/ ind = ML*sml*4.862 + TP*stp*1671.698 + BP*sbp*5934.423 /* ...BKG ...*/ + VLPL*svp*39.169 + PLDCER*spd*12.294 - VKRIZ*svk*13.113 - OSVAL*sos*6.885 + DZAD*sdz*5.108 - SZAD*ssz*55.424 + SKLZAD*sskl*21.451 - STRUP*sstr*58.181 + PKON*spk*9.367 + HLEZKL*shl*15.164 - SPENKA*sspe*12.166 + PAZNEHT*spaz*53.285 + PUPVEM*spu*50.273 - NASVEM*snas*86.414 - ZAVVAZ*szav*80.44 + ZAKLVEM*szakl*27.264 + PSTRUK*spst*16.98 + DSTRUK*sdst*4.63 - TLSTRUK*stls*30.724 - JATVYT*sjav*1026.702 + NETTO*snet*100.189 - PLL*spl*4020.592; /*if ind = . then delete;.......*/ keep ind ML TP BP BKG VLPL PLDCER /*VKRIZ OSVAL DZAD SZAD SKLZAD STRUP PKON HLEZKL SPENKA PAZNEHT PUPVEM NASVEM ZAVVAZ ZAKLVEM PSTRUK DSTRUK TLSTRUK JATVYT*/ NETTO /*PLL*/; proc means; title "Vypoctene indexy "; /*............................komplexni index ........................*/ proc sort ; by descending ind; data selk; set ind; If _n_ gt 204 then delete; proc means;title " Vybrana skupina 20% SIC"; data selk; set ind; If _n_ gt 51 then delete; proc means;title " Vybrana skupina 5% SIC"; data selk; set ind; If _n_ gt 20 then delete; proc means;title " Vybrana skupina 2% SIC"; data selk; set ind; If _n_ gt 10 then delete; proc means;title " Vybrana skupina 1% SIC"; /*................................kg mleka......................*/ data ind1; set ind; proc sort ; by descending ml; data selk; set ind1; If _n_ gt 204 then delete; proc means;title " Vybrana skupina 20% kgmleka"; data selk; set ind1; If _n_ gt 51 then delete; proc means;title " Vybrana skupina 5% kgmleka"; data selk; set ind1; If _n_ gt 20 then delete; proc means;title " Vybrana skupina 2% kgmleka"; data selk; set ind1; If _n_ gt 10 then delete; proc means;title " Vybrana skupina 1% kgmleka"; /*................................kg bilkovin......................*/ data ind2; set ind; proc sort ; by descending bkg; data selk; set ind2; If _n_ gt 204 then delete; proc means;title " Vybrana skupina 20% kgbilk"; data selk; set ind2; If _n_ gt 51 then delete; proc means;title " Vybrana skupina 5% kgbilk"; data selk; set ind2; If _n_ gt 20 then delete; proc means;title " Vybrana skupina 2% kgbilk"; data selk; set ind2; If _n_ gt 10 then delete; proc means;title " Vybrana skupina 1% kgbilk"; /*................................korigovany netto prirustek......................*/ data ind3; set ind; proc sort ; by descending netto; data selk; set ind3; If _n_ gt 204 then delete; proc means;title " Vybrana skupina 20% NET"; data selk; set ind3; If _n_ gt 51 then delete; proc means;title " Vybrana skupina 5% NET"; data selk; set ind3; If _n_ gt 20 then delete; proc means;title " Vybrana skupina 2% NET"; data selk; set ind3; If _n_ gt 10 then delete; proc means;title " Vybrana skupina 1% NET"; /*.................................................................*/ run;