X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?p=CreaPhase.git;a=blobdiff_plain;f=octave_packages%2Fdataframe-0.9.1%2F%40dataframe%2Fsubsindex.m;fp=octave_packages%2Fdataframe-0.9.1%2F%40dataframe%2Fsubsindex.m;h=5f18b417e0ef5e7ca6214b31e276a15483bd02c8;hp=0000000000000000000000000000000000000000;hb=c880e8788dfc484bf23ce13fa2787f2c6bca4863;hpb=1705066eceaaea976f010f669ce8e972f3734b05 diff --git a/octave_packages/dataframe-0.9.1/@dataframe/subsindex.m b/octave_packages/dataframe-0.9.1/@dataframe/subsindex.m new file mode 100644 index 0000000..5f18b41 --- /dev/null +++ b/octave_packages/dataframe-0.9.1/@dataframe/subsindex.m @@ -0,0 +1,45 @@ +function resu = subsindex(df, base) + %# function resu = subsindex(df) + %# This function convert a dataframe to an index. Do not expect a + %# meaningfull result when mixing numeric and logical columns. + + %% Copyright (C) 2009-2012 Pascal Dupuis + %% + %% 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, 51 Franklin Street - + %% Fifth Floor, Boston, MA 02110-1301, USA. + + %# + %# $Id: subsindex.m 9585 2012-02-05 15:32:46Z cdemills $ + %# + + if nargin < 2, + base = 1.0; + else + base = base - 1.0; + endif + + %# extract all values at once + dummy = df_whole(df); + if isa(dummy, 'logical'), + resu = sort(find(dummy)-base); + %# resu = dummy - base; + else + resu = dummy - base; + endif + +endfunction