Kezdőoldal » Számítástechnika » Programozás » Javaban szeretnék autokorrelác...

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.

2014. okt. 31. 23:28
Hasznos számodra ez a válasz?
 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!