gis計算頻數 matlab簡單區間列頻數統計輸出

2021-10-18 18:58:34 字數 1080 閱讀 4479

最近的乙個作業要有這個輸出計算,直接拿來用的函式沒怎麼找到,合計著就編乙個吧,沒多少時間仔細編,但能用。

程式支援:matlab2019b,以往的版本應該也能用。

function [d,zb1,ps] = pinshutongji(a,b)

% a:輸入的矩陣

% b:要分成的組別,預設為10

% 輸出為:d(組別zb 頻數ps 累積lj(%)) zb1(組別數值矩陣double) ps(頻數數值矩陣double)

% 效果為:

% " 組別 " " 頻數" "累積(%)"

% "-0.0040612 0.0032426" "44" "91.6667"

% " 0.0032426 0.010546" "3" "97.9167"

% " 0.010546 0.01785" "1" "100"

if nargin==1

b = 10;

endps = zeros(b,1);lj = zeros(b,1);

zb = (min(a):(max(a)-min(a))/b:max(a));zb = zb'; % 建立組別

for i = 1:1:length(a) % 計算頻數

temp = a(i);

for j = 2:1:b+1

if temp<=zb(j,1)

ps(j-1) = ps(j-1)+1;

endend

endasum = length(a);

for i = 1:1:b % 計算累積

lj(i) = (ps(i,1)/asum)*100;

endc = [" 組別 "," 頻數","累積(%)"];

zb1 = [zb(1:end-1,1),zb(2:end,1)];

zb2 = num2str(zb1); zb2 = cellstr(zb2);

ps = [ps(1,1);ps(2:end,1)-ps(1:end-1,1)];

ps1 = num2cell(ps); lj = num2cell(lj);

d = [c;zb2,ps1,lj];

end

matlab簡單區間列頻數統計輸出

最近的乙個作業要有這個輸出計算,直接拿來用的函式沒怎麼找到,合計著就編乙個吧,沒多少時間仔細編,但能用。程式支援 matlab2019b,以往的版本應該也能用。function d,zb1,ps pinshutongji a,b a 輸入的矩陣 b 要分成的組別,預設為10 輸出為 d 組別zb 頻...

GIS 計算面積

做了好一陣子專案,每每要算面積總是怪自己記憶甚差,又忘了怎麼做,作為乙個gis門外漢把解決過程記錄一次,希望幫助和我一樣初入門就被卡住的小夥伴。一開始總用偷懶的方式不想轉換投影座標,直接在field用計算器算 記得選python shape.geodesicarea squarekilometers...

GIS 演算法,計算箭頭

根據兩個點,計算箭頭。var x2 points length 1 x var y2 points length 1 y var x1 points length 2 x var y1 points length 2 y var distance math.sqrt math.pow x2 x1 2...