MENU

【無料プレゼント付き】学会発表・論文投稿に必要な統計を最短で学ぶことができる無料メルマガ

R でユークリッド距離を求める方法

ユークリッドは紀元前325年に生まれたギリシャの数学者。

著した著書は数学のなかでも特に幾何学の教科書として有名であった。

ユークリッドが考え出した「距離」とは?


ユークリッド距離とは?

ユークリッド距離は、幾何学で扱う事項である。

幾何学とは図形を扱う数学の中の一分野だ。

白紙に書いたある点ともう一つの点の距離などを考える学問である。

ユークリッド距離はその点と点の距離を数値で表したものだ。

ユークリッド距離を一言で表すと、点と点の「差の二乗和の平方根」である。

実例で、点と点のユークリッド距離を見てみよう。

ユークリッド距離の求め方実例

ユークリッド距離計算の実例として、統計ソフトRに最初から含まれている USArrests というデータを用いる。

これは1973年当時のアメリカ50州の10万人当たりの犯罪による逮捕者率のデータである。

このデータを用いて、州と州の間のユークリッド距離を求めてみる。


ユークリッド距離計算のサンプルデータ

先頭の6行を見てみると以下の通り。

それぞれの州の様子(特徴)を4つの要因(Murder, Assault, UrbanPop, Rape)で規定している。

> head(USArrests)
Murder Assault UrbanPop Rape
Alabama      13.2     236       58 21.2
Alaska       10.0     263       48 44.5
Arizona       8.1     294       80 31.0
Arkansas      8.8     190       50 19.5
California    9.0     276       91 40.6
Colorado      7.9     204       78 38.7

この4つの要因で、例えば Alabama と Alaska の「距離」を計算してみる。

2 つであれば平面、3 つであれば立体で距離を図示することはできるが、4つの要因になると、もはや図で表すことはできない。

なので、完全に想像の世界になってしまう。

もしくは計算だけの世界だ。

ユークリッド距離を実際にどうやって計算するか?

まずは、AlabamaとAlaskaのデータだけを抜き出す。

> USArrests[c(1,2),]
Murder Assault UrbanPop Rape
Alabama   13.2     236       58 21.2
Alaska    10.0     263       48 44.5

次に1行目のAlabamaから2行目のAlaskaに対して、4つの要因でそれぞれ引き算をする。

> USArrests[c(1,2),][1,]-USArrests[c(1,2),][2,]
Murder Assault UrbanPop  Rape
Alabama    3.2     -27       10 -23.3

その差を二乗する。

> (USArrests[c(1,2),][1,]-USArrests[c(1,2),][2,])^2
Murder Assault UrbanPop   Rape
Alabama  10.24     729      100 542.89

合計(つまり和)を計算する。

> sum((USArrests[c(1,2),][1,]-USArrests[c(1,2),][2,])^2)
[1] 1382.13

最後に平方根にするとユークリッド距離になる。

> sqrt(sum((USArrests[c(1,2),][1,]-USArrests[c(1,2),][2,])^2))
[1] 37.17701

この数字自体が何を示しているかは気にしなくてよい。

ただ、数字の大小によってどの州同士がユークリッド距離が小さいのか大きいのか、近いのか遠いのか、つまり、似ているのか似ていないのかの判断材料になるということと理解する。

実は、この距離を用いて階層型クラスタリングによるクラスター分析が行われている。

https://toukeier.hatenablog.com/entry/2019/05/12/204830toukeier.hatenablog.com

階層型クラスタリングの実例は以下の記事を参照。

まとめ

ユークリッド距離は、二次元以上の点同士の距離を表現したものだ。

計算方法は、「差の二乗和の平方根」である。

この距離が大きいか小さいかで、遠いか近いかを判断し、似ていない・似ているという判定につなげることができる。

参考になれば。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

統計 ER ブログ執筆者

元疫学研究者

統計解析が趣味

コメント

コメントする

目次