スプレッドシートのSUMX2PY2関数の使い方|平方の和

スポンサーリンク

「2つのデータ列について、それぞれの二乗を足し合わせた合計を出したい……」。スプレッドシートでこんな計算が必要になったことはありませんか?

セルごとに二乗して足し算して、さらに合計して……と手作業で数式を組むと長くなりがちです。もっとスッキリ書けたら便利ですよね。

そんなときに使うのがスプレッドシートのSUMX2PY2関数です。この記事では基本の書き方から実務での活用例まで解説します。よく似た姉妹関数(SUMX2MY2SUMXMY2)との違いも比較表で整理しました。

SUMX2PY2関数とは?スプレッドシートで平方の和を求める関数

SUMX2PY2関数(読み方: サム エックス スクエアド プラス ワイ スクエアド)は、2つの配列の対応する要素についてx²+y²の合計を返す関数です。

「SUMX2PY2」は「SUM of X² Plus Y²」の略です。数式で書くと次のようになります。

SUMX2PY2 = Σ(xᵢ² + yᵢ²)

たとえば X = {3, 4} と Y = {1, 2} なら、3²+1²(=10)と 4²+2²(=20)の合計で 30 になります。

SUMX2PY2関数にできることをまとめると、次のとおりです。

  • 2つのデータ列の「二乗の和」を一括で合計する
  • ユークリッド距離の計算に使える(SQRTと組み合わせ)
  • データの全体的な大きさ(スケール)を把握できる
  • SUMSQ関数(平方和)の応用として使える
  • 姉妹関数のSUMX2MY2SUMXMY2と組み合わせて多角的な分析ができる

NOTE

SUMX2PY2関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作は同じです。

SUMX2PY2関数の書き方(構文と引数)

基本構文

=SUMX2PY2(配列_x, 配列_y)

カッコの中に、計算したい2つのセル範囲を指定します。

引数の説明

引数必須/任意説明
配列_x必須1つ目のデータ範囲(x側)
配列_y必須2つ目のデータ範囲(y側)

2つの配列は同じサイズ(同じ要素数)である必要があります。サイズが異なると #N/A エラーになるので注意してください。

TIP

空のセルや文字列が含まれている場合は、0として扱われます。たとえば x=5、y=空白なら、5²+0² = 25 として計算されますよ。

SUMX2PY2関数の基本的な使い方

以下のサンプルデータでSUMX2PY2関数を使ってみましょう。

A列にデータX、B列にデータYが入っているとします。

 A列(データX)B列(データY)
2行目31
3行目42
4行目53

セル範囲で指定する

=SUMX2PY2(A2:A4, B2:B4)

結果は 64 です。内訳を確認してみましょう。

要素xᵢ²yᵢ²xᵢ²+yᵢ²
1番目3²=91²=110
2番目4²=162²=420
3番目5²=253²=934
合計  64

各要素をそれぞれ二乗して、その和を取り、最後に合計しています。

計算の仕組みを数式で確認する

SUMX2PY2の結果が正しいか、個別の数式で検算してみましょう。

=SUMPRODUCT(A2:A4^2 + B2:B4^2)

この数式でも同じ結果の 64 が返ります。SUMX2PY2関数は、この計算を1つの関数でまとめてくれるわけですね。

SUMX2PY2関数の実務での活用例

ユークリッド距離の計算に使う

ユークリッド距離とは、2つのデータ間の「直線距離」のことです。座標の異なる2地点間の距離をイメージするとわかりやすいですよ。

たとえば、2つの店舗の売上データを比較してみましょう。

 A列(店舗Aの月別売上)B列(店舗Bの月別売上)
2行目100120
3行目150130
4行目200180

2つの店舗のデータの「差の距離」を求めるには、SUMXMY2関数(差の二乗和)とSQRT関数を組み合わせます。

=SQRT(SUMXMY2(A2:A4, B2:B4))

一方、SUMX2PY2は2つのデータの「全体的な大きさ」を測る指標として使います。

=SUMX2PY2(A2:A4, B2:B4)

結果は 136200 です。この値が大きいほど、2つの店舗の売上規模が全体的に大きいことを意味します。

TIP

SUMXMY2が「2つのデータのズレ」を測るのに対し、SUMX2PY2は「2つのデータを合わせた全体の大きさ」を測る指標です。目的に応じて使い分けてみてください。

2つのデータセットの大きさを比較する

SUMX2PY2を使えば、2つのデータセットのスケール(大きさ)を1つの数値で比較できます。

たとえば、2つのチームの月別タスク完了数を比較するケースを考えてみましょう。

 A列(チームA)B列(チームB)
2行目3025
3行目4540
4行目3550
5行目5030
=SUMX2PY2(A2:A5, B2:B5)

結果は 12275 です。

この値自体に大きな意味はありませんが、別の月のデータと比較することで「チーム全体の生産量が増えたか減ったか」を定量的に把握できます。

たとえば前月のSUMX2PY2が8,000だったなら、今月の12,275は生産量が増加したと判断できますよ。

SUMX2MY2・SUMXMY2との違い

スプレッドシートには、SUMX2PY2と名前がよく似た姉妹関数が2つあります。混同しやすいので、比較表で整理しておきましょう。

関数名計算内容数式結果の意味
SUMX2MY2二乗の差の合計Σ(xᵢ²-yᵢ²)xとyの二乗値の差を比較
SUMX2PY2二乗の和の合計Σ(xᵢ²+yᵢ²)xとyの二乗値を合算
SUMXMY2差の二乗の合計Σ(xᵢ-yᵢ)²xとyの差を二乗して合算

名前の違いは「MY2」「PY2」「XMY2」の部分です。

  • SUMX2MY2: X² Minus Y²(二乗してから引く)
  • SUMX2PY2: X² Plus Y²(二乗してから足す)
  • SUMXMY2: (X Minus Y)²(引いてから二乗する)

同じデータで3つの関数を比較

X = {3, 4, 5}、Y = {1, 2, 3} で計算してみましょう。

=SUMX2MY2(A2:A4, B2:B4)    → 36
=SUMX2PY2(A2:A4, B2:B4)    → 64
=SUMXMY2(A2:A4, B2:B4)     → 12
要素SUMX2MY2 (x²-y²)SUMX2PY2 (x²+y²)SUMXMY2 (x-y)²
1番目9-1=89+1=10(3-1)²=4
2番目16-4=1216+4=20(4-2)²=4
3番目25-9=1625+9=34(5-3)²=4
合計366412

どの関数を使えばいい?

  • 2つのデータの大きさの優劣を比較したいSUMX2MY2(差がプラスかマイナスかで判断)
  • 2つのデータの全体的な大きさを把握したい → SUMX2PY2(ユークリッドノルムの二乗に相当)
  • 2つのデータのズレの大きさを測りたいSUMXMY2(最小二乗法や誤差の評価に使う)

SUMX2PY2は結果が常にプラスになるため、「どちらが大きいか」の判定には向きません。全体の規模感を把握したいときに使ってみてください。

よくあるエラーと対処法

#N/Aエラー

2つの配列のサイズが異なると #N/A エラーが発生します。

=SUMX2PY2(A2:A4, B2:B5)   → #N/Aエラー(3個 vs 4個)
=SUMX2PY2(A2:A4, B2:B4)   → 正常に計算される

配列_xと配列_yの行数(要素数)が一致しているか確認してください。COUNT関数で個数を数えてみると原因がわかりやすいですよ。

=COUNT(A2:A4)   → 3
=COUNT(B2:B5)   → 4(1つ多い)

#VALUE!エラー

引数にセル範囲ではなく文字列を直接指定すると発生します。

=SUMX2PY2("abc", B2:B4)   → #VALUE!エラー

SUMX2PY2の引数にはセル範囲を指定してください。セル範囲内に文字列が含まれている場合は0として扱われるので、エラーにはなりません。

まとめ

SUMX2PY2関数は、2つの配列の対応する要素についてx²+y²の合計を返す関数です。

この記事のポイント

  • 構文は =SUMX2PY2(配列_x, 配列_y) で、2つのセル範囲を指定する
  • 平方の和(Σ(xᵢ²+yᵢ²))を一発で計算できる
  • 結果は常にプラスになり、データの全体的な大きさを把握できる
  • 2つの配列のサイズが異なると#N/Aエラーになる
  • 姉妹関数のSUMX2MY2(二乗の差の合計)・SUMXMY2(差の二乗の合計)と使い分ける

次のステップ:関連する関数

SUMX2PY2関数の使い方がわかったら、以下の関数もあわせて覚えてみてください。データ分析の幅が広がりますよ。

タイトルとURLをコピーしました