better way to calculate euclidean distance with R -


i trying calculate euclidean distance iris dataset. want calculate distance between each pair of objects. have code working follows:

for (i in 1:iris_column){   (j in 1:iris_row) {      m[i,j] <- sqrt((iris[i,1]-iris[j,1])^2+                    (iris[i,2]-iris[j,2])^2+                    (iris[i,3]-iris[j,3])^2+                    (iris[i,4]-iris[j,4])^2)   } } 

although works, don't think way wring r-style code. know r has built-in function calculate euclidean function. without using built-in function, want know better code (faster , fewer lines) same code.

the part inside loop can written as

m[i, j] = sqrt(sum((iris[i, ] - iris[j, ]) ^ 2)) 

i’d keep nested loop, nothing wrong here.


Comments