Az Excel több verzióban számos változtatást eszközölt a belső számításokban, hogy javítsa a diagram trendvonalainak eredményeit, ahol a trendvonal elfogása nulla (0) értékre van állítva. Ezek a módosítások valójában nem változtatják meg a vonalat vagy a megjelenést, csak az R2 számítását, ha ezt a jegyzetet felveszi a diagramra. Ez a számítás az Excel-munkafüzetek minden megnyitásakor végbemegy. Emiatt ugyanaz a munkafüzet az Excel-verziótól függően különböző számításokat jeleníthet meg.
Ez a helyzet a diagram adataira vonatkozik, amely számok rögzített hosszúságú sorozata, X és Y formátumban:
X = { x_1,x_2,…,x_N }
Y = { y_1,y_2,…,y_N }
Az adatok trendvonala az értékeken alapuló egyenlet, Z-ként kifejezve. Az R2 kiszámításához a Z trendvonal értékei ugyanazokkal az X értékekkel kerülnek kiértékelésrei:
Z = { z_1,z_2,…,z_N }
Ha például a trendvonal egyenlete:
Z(x) = 2*e(4x)
Akkor a rendszer minden X értéknél kiértékeli a Z halmazt:
Z = { Z(x_1), Z(x_2), …, Z(x_N) }
Hol:
szum(y) = Összeg i=1 és N között, az y_i érték az Y halmazon belül.
szum(z2) = Összeg i=1 és N között, a z_i2 érték a Z halmazon belül.
szum2(x)= ( szum(x) )2
ln(x) = Az x természetes logaritmusa
ln2(x) = ( ln(x) )2
Középérték(X) = szum(x) / N
Középérték(ln(x)) = szum( ln(x) ) / N
Ezt a két számsort figyelembe véve: Y és Z, az Excel az alábbi módokon számítja ki az R2 értéket:
2005-nél korábbi Excel-verziók (2020. május)
Polinomiális, lineáris és logaritmikus trendvonalak esetén:
R2(Z,Y) = ( 2 N szum(yz) - N szum(z2) - szum2(y) ) / ( N szum(y2) - szum2(y) )
Exponenciális és hatványtrendvonalak esetén:
R2(Z,Y) = ( 2 N szum(ln(y) ln(z)) - N szum(ln2(z)) - szum2(ln(y)) ) / ( N szum(ln2(y)) - szum2(ln(y)) )
Excel-verziók 2005-től (2020. május) 2103-ra (2021. március)
Polinomiális és logaritmikus trendvonalak, valamint lineáris trendvonalak esetén, metszéspont nélkül:
R2(Z,Y) = ( 2 N szum(yz) - N szum(z2) - szum2(y) ) / ( N szum(y2) - szum2(y) )
Hatványtrendvonalak és exponenciális trendvonalak esetén, metszéspont nélkül:
R2(Z,Y) = ( 2 N szum(ln(y) ln(z)) - N szum(ln2(z)) - szum2(ln(y)) ) / ( N szum(ln2(y)) - szum2(ln(y)) )
Olyan lineáris trendvonalak esetén, amelynek a metszéspontja nem egyenlő nullával:
R2(Z,Y) = szum2( ( y - Középérték(Y) )( z - Középérték(Z) ) ) / ( szum( ( z - Középérték(Z) )2 ) szum( ( y - Középérték(Y) )2 ) )
Olyan lineáris trendvonalak esetén, amelynek a metszéspontja egyenlő nullával:
R2(Z,Y) = szum(z2) / szum(y2)
Olyan exponenciális trendvonalak esetén, amelynek a metszéspontja nem egyenlő eggyel:
R2(Z,Y) = szum2( ( ln(y) - Középérték(ln(y)) )( ln(z) - Középérték(ln(z)) ) ) / ( szum( ( ln(z) - Középérték(ln(z)) )2 ) szum( ( ln(y) - Középérték(ln(y)) )2 ) )
Olyan exponenciális trendvonalak esetén, amelynek a metszéspontja egyenlő eggyel:
R2(Z,Y) = szum( ln2(z) ) / szum( ln2(y) )
Az Excel 2104-ben (2021. április) vagy újabb verzióiban
Olyan lineáris trendvonalak esetén, amelynek a metszéspontja egyenlő nullával:
R2(Z,Y) = szum(z2) / szum(y2)
Metszéspont nélküli lineáris trendvonalak, lineáris trendvonalak nullával nem egyenlő metszésponttal, polinomiális, logaritmikus, exponenciális és hatványtrendvonalak esetén:
R2(Z,Y) = szum2( ( y - Középérték(Y) )( z - Középérték(Z) ) ) / ( szum( ( z - Középérték(Z) )2 ) szum( ( y - Középérték(Y) )2 ) )
Megjegyzés: A metszéspontokkal rendelkező polinomiális trendvonalak numerikus pontosságú hibákkal rendelkeznek, mint más trendvonaltípusok.