W kilku wersjach programu Excel wprowadzono serię zmian w obliczeniach wewnętrznych, aby poprawić wyniki z linii trendu wykresu, w przypadku których przecięcie linii trendu jest ustawione na zero (0). Te zmiany w rzeczywistości nie zmieniają linii ani wyglądu, lecz tylko obliczanie wartości R2, jeśli uwzględniono tę adnotację na wykresie. To obliczanie jest wykonywane przy każdym otwarciu skoroszytu programu Excel. W rezultacie ten sam skoroszyt może pokazywać różne obliczenia zależnie od używanej wersji programu Excel.
Ta sytuacja dotyczy danych na wykresie, który jest sekwencją liczb o stałej długości, wykreślaną jako X i Y:
X = { x_1,x_2,…,x_N }
Y = { y_1,y_2,…,y_N }
Linia trendu danych jest równaniem opartym na wartościach wyrażonych jako Z. Aby obliczyć wartość R2, wartości linii trendu Z są obliczane dla wszystkich takich samych wartości X:
Z = { z_1,z_2,…,z_N }
Jeśli na przykład równanie linii trendu ma postać:
Z(x) = 2*e(4x)
Wtedy zestaw Z jest obliczany dla każdej wartości X:
Z = { Z(x_1), Z(x_2), …, Z(x_N) }
Gdzie:
suma(y) = suma od i=1 do N, wartość y_i w zestawie Y.
suma(z2) = suma od i=1 do N, wartość z_i2 w zestawie Z.
suma2(x)= ( suma(x) )2
ln(x) = logarytm naturalny wartości x
ln2(x) = ( ln(x) )2
średnia(X) = suma(x) / N
średnia(ln(x)) = suma( ln(x) ) / N
Biorąc pod uwagę te dwie sekwencje liczb: Y i Z, program Excel oblicza wartość R2 następująco:
Wersje programu Excel starsze niż 2005 (maj 2020 r.)
Dla wielomianowych, liniowych i logarytmicznych linii trendu:
R2(Z,Y) = ( 2 N suma(yz) - N suma(z2) - suma2(y) ) / ( N suma(y2) - suma2(y) )
Dla wykładniczych i potęgowych linii trendu:
R2(Z,Y) = ( 2 N suma(ln(y) ln(z)) - N suma(ln2(z)) - suma2(ln(y)) ) / ( N suma(ln2(y)) - suma2(ln(y)) )
Wersje programu Excel od 2005 r. (maj 2020 r.) do wersji 2103 (marzec 2021 r.)
Dla wielomianowych i logarytmicznych linii trendu oraz liniowych linii trendu bez ustawionego przecięcia:
R2(Z,Y) = ( 2 N suma(yz) - N suma(z2) - suma2(y) ) / ( N suma(y2) - suma2(y) )
Dla potęgowych linii trendu i wykładniczych linii trendu bez ustawionego przecięcia:
R2(Z,Y) = ( 2 N suma(ln(y) ln(z)) - N suma(ln2(z)) - suma2(ln(y)) ) / ( N suma(ln2(y)) - suma2(ln(y)) )
Dla liniowych linii trendu z ustawionym przecięciem innym niż zero:
R2(Z,Y) = suma2( ( y - średnia(Y) )( z - średnia(Z) ) ) / ( suma( ( z - średnia(Z) )2 ) suma( ( y - średnia(Y) )2 ) )
Dla liniowych linii trendu z ustawionym przecięciem równym zero:
R2(Z,Y) = suma(z2) / suma(y2)
Dla wykładniczych linii trendu z ustawionym przecięciem innym niż jeden:
R2(Z,Y) = suma2( ( ln(y) - średnia(ln(y)) )( ln(z) - średnia(ln(z)) ) ) / ( suma( ( ln(z) - średnia(ln(z)) )2 ) suma( ( ln(y) - średnia(ln(y)) )2 ) )
Dla wykładniczych linii trendu z ustawionym przecięciem równym jeden:
R2(Z,Y) = suma( ln2(z) ) / suma( ln2(y) )
Program Excel w wersji 2104 (kwiecień 2021 r.) lub nowszej
Dla liniowych linii trendu z ustawionym przecięciem równym zero:
R2(Z,Y) = suma(z2) / suma(y2)
Dla liniowych linii trendu bez ustawionego przecięcia, liniowych linii trendu z ustawionym przecięciem innym niż zero, wielomianowych, logarytmicznych, wykładniczych i potęgowych linii trendu:
R2(Z,Y) = suma2( ( y - średnia(Y) )( z - średnia(Z) ) ) / ( suma( ( z - średnia(Z) )2 ) suma( ( y - średnia(Y) )2 ) )
Uwaga: Wielomianowe linie trendu z ustawionymi przecięciami mają więcej błędów precyzji liczbowej niż inne typy linii trendu.