[vastaus aiempaan viestiin]
Kirjoittaja: | Kimmo Vehkalahti |
---|---|
Sähköposti: | - |
Päiväys: | 22.10.2004 0:08 |
Jatkoa jännittävään jatkosarjaan, jonka aiheena ovat matriisit. Tähän asti tapahtunut: on törmätty faktorimatriisiin AKOE4F, josta on poimittu alkuperäisen rakenteen perusteella korkeimmat lataukset faktoreittain sekä tieto siitä millä muuttujilla nuo korkeimmat lataukset ovat. Tiedot on talletettu erillisiin 1x1-matriiseihin MAX1, MAX2, MAX3, MAX4 ja MAX5. Tiedot voitaisiin esittää tiiviimmin yhtenä ainoana vektorina: MAT MAX=ZER(5,1) MAT MAX(5,1)=MAX_IJ(AKOE4F(E01:E05,F5)) MAT MAX(4,1)=MAX_IJ(AKOE4F(D01:D05,F4)) MAT MAX(3,1)=MAX_IJ(AKOE4F(C01:C10,F3)) MAT MAX(2,1)=MAX_IJ(AKOE4F(B01:B10,F2)) MAT MAX(1,1)=MAX_IJ(AKOE4F(A01:A20,F1)) MAT MAX(0,1)="max" MAT NAME MAX AS MAX Aluksi MAX on nollavektori, minkä jälkeen se täytetään kohta kohdalta. Tällä kertaa aloitin viimeisestä elementistä ja etenin kohti nollatta elementtiä, jolla tarkoitetaan sarakeotsikkoa. Otetaan vektori MAX esille transponoituna (vie tässä vähemmän rivejä): MAT LOAD MAX' MATRIX MAX' /// A02 B06 C03 D01 E01 max 0.788997 0.685176 0.740926 0.696109 0.700670 "Kärkimuuttujat" ovat siis selvillä. Näiden tietojen perusteella voidaan muodostaa haluttu painokerroinmatriisi PAINOT: MAT DIM AKOE4F /* rowAKOE4F=50 colAKOE4F=5 MAT PAINOT=ZER(rowAKOE4F,colAKOE4F) MAT RLABELS FROM AKOE4F TO PAINOT MAT PAINOT(A02,1)=1 / Sinänsä toimivan ratkaisutavan heikkous on tässä MAT PAINOT(B06,2)=1 / kohdassa: automatisoinnista ei ole tietoakaan MAT PAINOT(C03,3)=1 / vaan ykköset sijoitetaan manuaalisesti oikeisiin MAT PAINOT(D01,4)=1 / kohtiin. Uuden faktorimatriisin tapauksessa työ MAT PAINOT(E01,5)=1 / jouduttaisiin tekemään käsin uudelleen. Ei hyvä! MAT NAME PAINOT AS Kärkimuuttuja-asteikkojen_kertoimet MAT CLABELS "%" TO PAINOT Tulos on se mitä tavoiteltiin, mutta työn toistettavuus on heikko. MAT LOAD PAINOT ## CUR+2 MATRIX PAINOT Kärkimuuttuja-asteikkojen_kertoimet /// %1 %2 %3 %4 %5 A01 0 0 0 0 0 A02 1 0 0 0 0 A03 0 0 0 0 0 A04 0 0 0 0 0 A05 0 0 0 0 0 A06 0 0 0 0 0 A07 0 0 0 0 0 A08 0 0 0 0 0 A09 0 0 0 0 0 A10 0 0 0 0 0 A11 0 0 0 0 0 A12 0 0 0 0 0 A13 0 0 0 0 0 A14 0 0 0 0 0 A15 0 0 0 0 0 A16 0 0 0 0 0 A17 0 0 0 0 0 A18 0 0 0 0 0 A19 0 0 0 0 0 A20 0 0 0 0 0 B01 0 0 0 0 0 B02 0 0 0 0 0 B03 0 0 0 0 0 B04 0 0 0 0 0 B05 0 0 0 0 0 B06 0 1 0 0 0 B07 0 0 0 0 0 B08 0 0 0 0 0 B09 0 0 0 0 0 B10 0 0 0 0 0 C01 0 0 0 0 0 C02 0 0 0 0 0 C03 0 0 1 0 0 C04 0 0 0 0 0 C05 0 0 0 0 0 C06 0 0 0 0 0 C07 0 0 0 0 0 C08 0 0 0 0 0 C09 0 0 0 0 0 C10 0 0 0 0 0 D01 0 0 0 1 0 D02 0 0 0 0 0 D03 0 0 0 0 0 D04 0 0 0 0 0 D05 0 0 0 0 0 E01 0 0 0 0 1 E02 0 0 0 0 0 E03 0 0 0 0 0 E04 0 0 0 0 0 E05 0 0 0 0 0 Tämä oli ns. viiden pisteen vihje. Neljän pisteen vihje kuuluu: matriiseilla operoitaessa kannattaa usein hyödyntää myös Survon datatiedostoja. Alkuperäinen kysymys tarkennettuna näillä vihjeillä kuuluu siten: "Millä tavoin PAINOT-matriisi muodostetaan ilman em. käsityövaihetta, ts. niin että työ voidaan toistaa helposti vaikka faktorimatriisin sisältö muuttuu?" terv. Kimmo
Vastaukset: |
---|
Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!