MAT #TRANSFORM A BY B ..

[vastaus aiempaan viestiin]

Kirjoittaja: Petri Palmu
Sähköposti:    -
Päiväys: 23.2.2008 9:53

Moi, kiitos. Itse asiassa alunperin ongelmana oli
kahden matriisin avulla tapahtuva muunnos. Alla hupsu esimerkki,
mutta periaatteellinen käyttötilanne:

MAT A=ZER(3,3)
MAT B=CON(3,3,.5)  / *B~0 D3*3
MAT #TRANSFORM A BY rand(2008)         / *A~T(A_by_rand(2008)) 3*3
MAT #TRANSFORM A BY B AND if(X#<Y#)then(A1)else(X#) /
                A1=if(X#<.2)then(0)else(.2)

MAT LOAD A
MATRIX A
T(A_by_B_and_if(X#<Y#)then(A1)else(X#))
///             1        2        3
  1      0.572020 0.687159 0.200000
  2      0.816559 0.953355 0.801897
  3      0.200000 0.649545 0.000000

Minusta tämä VARmaisuus on erinomainen juttu.
Esim. tämä laajentaa Survon datatiedostofunktiota TRANSFORM kivasti.
Ainoa ongelma on puuttuvat arvot,
niitä varten pitää keksiä jotain kikkailua. Mutta ehkä juuri
koodaamalla MISSING sopivaksi arvoksi ja tuota if-else rakennetta
käyttäen puuttuvatkin tulevat asianmukaisesti käsitellyksi.

Helpissä on kuvattu:

MAT #TRANSFORM X BY <expression(X#,I#,J#)> 
or
MAT #TRANSFORM X BY Y AND <expression(X#,Y#,I#,J#)> 

Nuo  I# ja J# ovat ilmeisesti myös matriiseja?

Toinen matriiseihin liittyvä asia on, että olen itse
tykästynyt c=MAT_A(1,1) tyyppiseen käyttöön erit. automatisoinneissa
(luuppaaminen etc.). Näitä olisi kiva saada käyttöön myös
esim. GPLOT Y(t)=c*t tyyppisesti (esim. regressioanalyysin tulosten
havainnollistamisessa).
Huomattavasti tärkeämpi juttu olisi kuitenkin funktioiden
täsmennykset,
esim. olk. a=round(MAT_A(1,1)) , b=round(MAT_A(1,2))
ja sitten: XSCALE=a,b (jotain tähän suuntaan joka tapauksessa)

Tällä tavoin automatisoinnit suoraviivaistuisivat melkoisesti,
kun toimintoja voisi ohjailla tiedostoihin talletettujen parametrien
avulla. Toki sukroilla saa kaiken tehtyä, mutta olen tullut siihen
tulokseen, että manuaalinen viilaus on nopeampaa kuin tehdä
jokaiseen toimintoon oma parametrien "kaivuu+tulostussukro". Tai sitten
minulta on jäänyt huomaamatta jotain olennaista, kun olen
pitkään pähkäillyt ongelman kanssa ;)

Mielestäni Survon loistavan toimituskentän hyötyjä lisäisivät
em. ehdotusten mukaiset laajennukset :)

t. Petri

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!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.