From: <cde...@us...> - 2010-10-29 07:14:38
|
Revision: 7892 http://octave.svn.sourceforge.net/octave/?rev=7892&view=rev Author: cdemills Date: 2010-10-29 07:14:29 +0000 (Fri, 29 Oct 2010) Log Message: ----------- Implemented the basic matrix-like ops on DF Modified Paths: -------------- trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m Added Paths: ----------- trunk/octave-forge/extra/dataframe/inst/@dataframe/mldivide.m trunk/octave-forge/extra/dataframe/inst/@dataframe/mrdivide.m trunk/octave-forge/extra/dataframe/inst/@dataframe/mtimes.m trunk/octave-forge/extra/dataframe/inst/@dataframe/uminus.m trunk/octave-forge/extra/dataframe/inst/@dataframe/uplus.m Property Changed: ---------------- trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m trunk/octave-forge/extra/dataframe/inst/@dataframe/isempty.m trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -26,7 +26,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: cat.m 1025 2010-08-02 08:55:55Z dupuis $ + %# $Id$ %# switch dim Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/cat.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -55,7 +55,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: dataframe.m 1036 2010-08-03 16:24:01Z dupuis $ + %# $Id$ %# if 0 == nargin Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/dataframe.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -24,7 +24,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: display.m 1027 2010-08-02 08:59:39Z dupuis $ + %# $Id$ %# %# generate header name Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/display.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -24,7 +24,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: end.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# try Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/end.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -28,7 +28,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: fold.m 1016 2010-07-30 13:49:35Z dupuis $ + %# $Id$ %# switch dim case 1 Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/fold.m ___________________________________________________________________ Added: svn:keywords + Id Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/isempty.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -1,7 +1,7 @@ function resu = minus(A, B); %# function resu = minus(A, B) - %# Implements the '-' operator when at least one one argument is a dataframe. + %# Implements the '-' operator when at least one argument is a dataframe. %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> %% @@ -24,38 +24,37 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: minus.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# -keyboard + [A, B] = df_basecomp(A, B); -keyboard - if isscalar(A) - %# B is a dataframe - resu = B; - resu._data = cellfun(@(x) A-x, B._data, "UniformOutput", false); - return - elseif ismatrix(A), - resu = B; - resu._data = cellfun(@(x, y) x-y, num2cell(A, 1), B._data, \ - "UniformOutput", false); - return - endif - if isscalar(B), + if isa(B, 'dataframe') + if !isa(A, 'dataframe'), + resu = B; + if isscalar(A) + resu._data = cellfun(@(x) A-x, B._data, "UniformOutput", false); + elseif ismatrix(A), + resu._data = cellfun(@(x, y) x-y, num2cell(A, 1), B._data,\ + "UniformOutput", false); + else + error("Operator - not implemented"); + endif + else + resu = A; + resu._data = cellfun(@(x, y) x-y, A._data, B._data,\ + "UniformOutput", false); + endif + else resu = A; - resu._data = cellfun(@(x) x-B, A._data, "UniformOutput", false); - return - elseif ismatrix(B), - resu = A; - for indi = 1:A._cnt(2), - resu._data{indi} = A._data{indi} -B(:, indi); - endfor - return + if isscalar(B), + resu._data = cellfun(@(x) x-B, A._data, "UniformOutput", false); + elseif ismatrix(B), + resu._data = cellfun(@(x, y) x-y, A._data, num2cell(B, 1),\ + "UniformOutput", false); + else + error("Operator - not implemented"); + endif endif - - resu = A; - for indi = 1:A._cnt(2), - resu._data{indi} = A._data{indi} -B._data{indi}; - endfor - + endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/minus.m ___________________________________________________________________ Added: svn:keywords + Id Added: trunk/octave-forge/extra/dataframe/inst/@dataframe/mldivide.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/mldivide.m (rev 0) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/mldivide.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -0,0 +1,57 @@ +function resu = mldivide(A, B); + + %# function resu = mldivide(A, B) + %# Implements the '\' operator when at least one argument is a dataframe. + + %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> + %% + %% 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. + + %# + %# $Id$ + %# + + [A, B] = df_basecomp(A, B); + + if isa(B, 'dataframe') + if !isa(A, 'dataframe'), + resu = B; + if isscalar(A) + resu._data = cellfun(@(x) A<x, B._data, "UniformOutput", false); + elseif ismatrix(A), + resu._data = num2cell(A\cell2mat(B._data), 1); + else + error("Operator \ not implemented"); + endif + else + resu = A; + resu._data = num2cell(cell2mat(A._data)\cell2mat(B._data), 1); + endif + else + resu = A; + if isscalar(B), + resu._data = cellfun(@(x) x\B, A._data, "UniformOutput", false); + elseif ismatrix(B), + resu._data = num2cell(cell2mat(A._data)\B, 1); + else + error("Operator \ not implemented"); + endif + endif + +endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/mldivide.m ___________________________________________________________________ Added: svn:keywords + Id Added: trunk/octave-forge/extra/dataframe/inst/@dataframe/mrdivide.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/mrdivide.m (rev 0) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/mrdivide.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -0,0 +1,57 @@ +function resu = mrdivide(A, B); + + %# function resu = mrdivide(A, B) + %# Implements the '*' operator when at least one argument is a dataframe. + + %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> + %% + %% 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. + + %# + %# $Id$ + %# + + [A, B] = df_basecomp(A, B); + + if isa(B, 'dataframe') + if !isa(A, 'dataframe'), + resu = B; + if isscalar(A) + resu._data = cellfun(@(x) A/x, B._data, "UniformOutput", false); + elseif ismatrix(A), + resu._data = num2cell(A/cell2mat(B._data), 1); + else + error("Operator / not implemented"); + endif + else + resu = A; + resu._data = num2cell(cell2mat(A._data)/cell2mat(B._data), 1); + endif + else + resu = A; + if isscalar(B), + resu._data = cellfun(@(x) x/B, A._data, "UniformOutput", false); + elseif ismatrix(B), + resu._data = num2cell(cell2mat(A._data)/B, 1); + else + error("Operator / not implemented"); + endif + endif + +endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/mrdivide.m ___________________________________________________________________ Added: svn:keywords + Id Added: trunk/octave-forge/extra/dataframe/inst/@dataframe/mtimes.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/mtimes.m (rev 0) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/mtimes.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -0,0 +1,57 @@ +function resu = mtimes(A, B); + + %# function resu = mtimes(A, B) + %# Implements the '*' operator when at least one argument is a dataframe. + + %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> + %% + %% 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. + + %# + %# $Id$ + %# + + [A, B] = df_basecomp(A, B); + + if isa(B, 'dataframe') + if !isa(A, 'dataframe'), + resu = B; + if isscalar(A) + resu._data = cellfun(@(x) A*x, B._data, "UniformOutput", false); + elseif ismatrix(A), + resu._data = num2cell(A*cell2mat(B._data), 1); + else + error("Operator * not implemented"); + endif + else + resu = A; + resu._data = num2cell(cell2mat(A._data)*cell2mat(B._data), 1); + endif + else + resu = A; + if isscalar(B), + resu._data = cellfun(@(x) x*B, A._data, "UniformOutput", false); + elseif ismatrix(B), + resu._data = num2cell(cell2mat(A._data)*B, 1); + else + error("Operator * not implemented"); + endif + endif + +endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/mtimes.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -24,7 +24,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: numel.m 981 2010-07-26 16:23:08Z dupuis $ + %# $Id$ %# if isempty(varargin), Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/numel.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -1,7 +1,7 @@ -function resu = minus(A, B); +function resu = plus(A, B); - %# function resu = minus(A, B) - %# Implements the '-' operator when at least one one argument is a dataframe. + %# function resu = plus(A, B) + %# Implements the '+' operator when at least one argument is a dataframe. %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> %% @@ -24,31 +24,37 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: plus.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# [A, B] = df_basecomp(A, B); - if isscalar(A) - %# B is a dataframe - resu = B; - for indi = 1:B._cnt(2), - resu._data{indi} = A+B._data{indi}; - endfor - return - endif - - if isscalar(B), + if isa(B, 'dataframe') + if !isa(A, 'dataframe'), + resu = B; + if isscalar(A) + resu._data = cellfun(@(x) A+x, B._data, "UniformOutput", false); + elseif ismatrix(A), + resu._data = cellfun(@(x, y) x+y, num2cell(A, 1), B._data,\ + "UniformOutput", false); + else + error("Operator + not implemented"); + endif + else + resu = A; + resu._data = cellfun(@(x, y) x+y, A._data, B._data,\ + "UniformOutput", false); + endif + else resu = A; - for indi = 1:A._cnt(2), - resu._data{indi} = A._data{indi}+B; - endfor - return + if isscalar(B), + resu._data = cellfun(@(x) x+B, A._data, "UniformOutput", false); + elseif ismatrix(B), + resu._data = cellfun(@(x, y) x+y, A._data, num2cell(B, 1),\ + "UniformOutput", false); + else + error("Operator + not implemented"); + endif endif - - resu = A; - for indi = 1:A._cnt(2), - resu._data{indi} = A._data{indi} + B._data{indi}; - endfor - + endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/plus.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -25,7 +25,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_basecomp.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# if isscalar(A) || isscalar(B) Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_basecomp.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -23,7 +23,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_check_char_array.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# if 2 == nargin, required = [nelem 1]; endif Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_check_char_array.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -27,7 +27,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_name2idx.m 1037 2010-08-03 16:25:05Z dupuis $ + %# $Id$ %# if isempty(subs), Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_name2idx.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -27,7 +27,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_pad.m 1028 2010-08-03 10:10:26Z dupuis $ + %# $Id$ %# switch dim Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_pad.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -23,7 +23,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_strjust.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# indi = size(a, 2) - size(b, 2); Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strjust.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -25,7 +25,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: df_strset.m 1020 2010-07-30 15:21:23Z dupuis $ + %# $Id$ %# %# adjust x size, if required Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/private/df_strset.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -23,7 +23,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: size.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# switch nargin Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/size.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -24,7 +24,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: subsasgn.m 1035 2010-08-03 16:22:58Z dupuis $ + %# $Id$ %# switch(S(1).type) Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/subsasgn.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -32,7 +32,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: subsref.m 1034 2010-08-03 16:22:09Z dupuis $ + %# $Id$ %# %# what kind of object should we return ? Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/subsref.m ___________________________________________________________________ Added: svn:keywords + Id Modified: trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m 2010-10-28 17:08:27 UTC (rev 7891) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -26,7 +26,7 @@ %% Suite 330, Boston, MA 02111-1307, USA. %# - %# $Id: summary.m 852 2010-07-22 10:47:55Z dupuis $ + %# $Id$ %# dummy = df._type; resu = []; Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/summary.m ___________________________________________________________________ Added: svn:keywords + Id Added: trunk/octave-forge/extra/dataframe/inst/@dataframe/uminus.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/uminus.m (rev 0) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/uminus.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -0,0 +1,33 @@ +function resu = uminus(A); + + %# function resu = uminus(A) + %# Implements the unitary '-' operator for a dataframe. + + %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> + %% + %% 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. + + %# + %# $Id$ + %# + + resu = A; + resu._data = cellfun(@(x) -x, A._data, "UniformOutput", false); + +endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/uminus.m ___________________________________________________________________ Added: svn:keywords + Id Added: trunk/octave-forge/extra/dataframe/inst/@dataframe/uplus.m =================================================================== --- trunk/octave-forge/extra/dataframe/inst/@dataframe/uplus.m (rev 0) +++ trunk/octave-forge/extra/dataframe/inst/@dataframe/uplus.m 2010-10-29 07:14:29 UTC (rev 7892) @@ -0,0 +1,33 @@ +function resu = uplus(A); + + %# function resu = uplus(A) + %# Implements the unitary '+' operator for a dataframe. + + %% Copyright (C) 2009-2010 Pascal Dupuis <Pas...@uc...> + %% + %% 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. + + %# + %# $Id$ + %# + + resu = A; + resu._data = cellfun(@(x) +x, A._data, "UniformOutput", false); + +endfunction Property changes on: trunk/octave-forge/extra/dataframe/inst/@dataframe/uplus.m ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |