[運算] 分組平均
大家好,若在N維空間中有M個點,分別屬於不同類別,該如何快速計算各類別的中心座標?
目前寫法如下
for ii=1:L
temp = double(INITIAL_CLUSTER==ii);
center(ii,:) = sum(temp.*INPUT_DATA) / sum(temp);
end
其中INPUT_DATA為MxN;INITIAL_CLUSTER為Mx1,內為M個點對應的存放組別1~L。
中間試了很多方法想要取代或是減少迴圈數,有grpstats、splitapply及consolidator,
但在運算效率上還是前述迴圈有明顯的優勢,
是否有不用迴圈又快速的方法可以達到同樣效果?謝謝大家!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.60.13 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1582131411.A.5CE.html
推
02/20 08:44,
4年前
, 1F
02/20 08:44, 1F
→
02/20 08:45,
4年前
, 2F
02/20 08:45, 2F
→
02/20 08:45,
4年前
, 3F
02/20 08:45, 3F
→
02/20 08:46,
4年前
, 4F
02/20 08:46, 4F
→
02/20 08:46,
4年前
, 5F
02/20 08:46, 5F
→
02/20 11:04,
4年前
, 6F
02/20 11:04, 6F
→
02/20 11:04,
4年前
, 7F
02/20 11:04, 7F
推
02/20 12:33,
4年前
, 8F
02/20 12:33, 8F
→
02/20 12:34,
4年前
, 9F
02/20 12:34, 9F
→
02/20 12:34,
4年前
, 10F
02/20 12:34, 10F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章