Javaban szeretnék autokorrelációt számítani, fájlból beolvasott adatok alapján. A fájlbelolvasás megtörtént, az átlagot kiszámítottam, de a ciklus megírása nem sikerült, mert nem tudom, hogy hogyan érdemes szorzatot összegezni? Köszi a segítséget!
Figyelt kérdés
A képlet: XX (n) = 1/N* SZUMMA (k=1 től N-n ig) (k-adik x - x átlaga) * k+n-edik x -x átlaga), ahol k az elemek sorszáma 0-599 (összesen 600, az utolsó N), n pedig 0,1,2...N-1.2014. okt. 31. 21:13
1/2 anonim válasza:
XX:=0
x_átlag:=ezt már csak ki tudod számolni
ciklus k:=1..(N-n)
> XX:=XX + (x[k] - x_átlag) * (x[k+n] - x_átlag)
ciklus vége
XX:=XX*(1/N)
Implementáláskor figyelj a tömb indexekre, általában gépen 0-val kezdünk.
2/2 A kérdező kommentje:
Köszönöm a választ ki, igen az átlagot ki tudtam számolni. Viszont nem csak a k-t hanem az n-et is növelnem kell...vagyis az n-es for ciklusba tegyem bele a k-s ciklust?
for (int n=0;n<x.length;n++){
for (int k=0;k<x.length;k++){
s+=(x[k]-mx)*(y[k+n]-my);
System.out.println(+s);
}
}
2014. nov. 3. 20:40
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!