median.m

来自「GNU Octave is a high-level language, pri」· M 代码 · 共 60 行

M
60
字号
## Copyright (C) 1996 John W. Eaton#### This file is part of Octave.#### Octave is free software; you can redistribute it and/or modify it## under the terms of the GNU General Public License as published by## the Free Software Foundation; either version 2, or (at your option)## any later version.#### Octave is distributed in the hope that it will be useful, but## WITHOUT ANY WARRANTY; without even the implied warranty of## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU## General Public License for more details.#### You should have received a copy of the GNU General Public License## along with Octave; see the file COPYING.  If not, write to the Free## Software Foundation, 59 Temple Place - Suite 330, Boston, MA## 02111-1307, USA.## usage: median (a)#### For vector arguments, return the median of the values.#### For matrix arguments, return a row vector containing the median for## each column.#### See also: std, mean## Author: jwefunction retval = median (a)  if (nargin != 1)    usage ("median (a)");  endif  [nr, nc] = size (a);  s = sort (a);  if (nr == 1 && nc > 0)    if (rem (nc, 2) == 0)      i = nc/2;      retval = (s (i) + s (i+1)) / 2;    else      i = ceil (nc/2);      retval = s (i);    endif  elseif (nr > 0 && nc > 0)    if (rem (nr, 2) == 0)      i = nr/2;      retval = (s (i,:) + s (i+1,:)) / 2;    else      i = ceil (nr/2);      retval = s (i,:);    endif  else    error ("median: invalid matrix argument");  endifendfunction

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?