簡體   English   中英

如何對地理數據進行分類並在Matlab中輸出每個分類中包含的數據點

[英]How to bin geographical data and output the data points included in each bin in matlab

我正在使用Matlab處理地震數據,其中每個假設都對應於一個特定的地理點(已知緯度,經度)。 目標之一是對地球表面中由特定半徑(例如r = 10度)的bin包圍的點進行分組。 垃圾箱是否重疊並不重要。 我已經使用了histr() Matlab內在函數,但是這會以結果bin的(lat,long)輸出中心坐標以及bin中包含的數據點數量。 但是,我也想標記數據點並能夠在后續處理中使用這些標記的數據點。 我用過的

lt1=load('midlats.dat');
lg1=load('midlons.dat');
len_lt=length(lt1);
len_lg=length(lg1);
nb=1;
[clats,clons,num,wnum] = histr(lt1,lg1,nb);

其中nb定義每個角度度需要多少個倉位。

這是接近我目標的地方還是我完全錯過了圖片??? 有人遇到過類似的事情嗎? 任何幫助/評論將不勝感激。

這是一個想法-您將需要定義bin邊緣的向量(兩者相同或不同),請參見histc的幫助:

[nlt, i_lt] = histc(lt1,b_vec1);
[nlg, i_lg] = histc(lg1,b_vec2);

現在,作弊-使用sub2ind將數據所在的經度和緯度i_lg索引i_lti_lg轉換為單個索引。

sz = [length(i_lt),length(i_lg)];
ind = sub2ind(sz,i_lt,i_lg);

具有相同ind任何點都位於相同的緯度+緯度區間中。 然后可以通過索引ind來選擇它們,例如lg1(ind==1) ,依此類推。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM