Khoảng cách Euclide trong Octave


16

Tôi muốn biết nếu có một cách nhanh chóng để tính khoảng cách Euclide của hai vectơ trong Octave. Có vẻ như không có chức năng đặc biệt nào cho việc đó, vậy tôi có nên sử dụng công thức với sqrtkhông?


Điều này có thể đã bị bỏ phiếu vì đây là câu hỏi cơ bản mà bạn có thể tìm thấy câu trả lời bằng cách xem tài liệu của Octave hoặc thực hiện tìm kiếm trên internet phù hợp. Tuy nhiên, tôi thấy rằng việc tìm kiếm "quãng tám Euclide" hoặc "khoảng cách Euclide quãng tám" không mang lại kết quả hữu ích nhanh như "định mức quãng tám".
Elaine Hale

đề xuất: lần tới, Google một cái gì đó như "Khoảng cách Matlab giữa hai vectơ". Mathworks có tài liệu tập trung rất dễ tìm (có một tài liệu hướng dẫn chính thức về Octave mà bạn nên tìm, nhưng có thể mất một chút công sức để tìm thấy nó). Đối với một cái gì đó đơn giản, có thể là một hàm có cùng tên trong Octave thực hiện điều tương tự.
Stefan Smith

Các số liệu thống kê về câu hỏi này nói cho chính họ.
thuyền viên

Câu trả lời:


31

Khoảng cách Euclide giữa hai vectơ là hai chỉ tiêu của sự khác biệt của chúng, do đó

d = norm( x1 - x2 , 2 );

nên thực hiện các mẹo trong Octave. Lưu ý rằng nếu đối số thứ hai normđược bỏ qua, mặc định 2 được sử dụng theo định mức.



0

Dưới đây là phương pháp tính khoảng cách giữa một mảng vectơ ( X) và một vectơ đơn ( X(1, :)ví dụ mục đích):

distances = sqrt(sum((X - X(1, :)) .^ 2, 2));
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.