renamedatafield.m.svn-base

来自「a function inside machine learning」· SVN-BASE 代码 · 共 39 行

SVN-BASE
39
字号
function d = renameDataField(d, oldName, newName)
%Rename a data field 

% Copyright (C) 2006 Charanpal Dhanjal 

% This library is free software; you can redistribute it and/or
% modify it under the terms of the GNU Lesser General Public
% License as published by the Free Software Foundation; either
% version 2.1 of the License, or (at your option) any later version.
% 
% This library 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
% Lesser General Public License for more details.
% 
% You should have received a copy of the GNU Lesser General Public
% License along with this library; if not, write to the Free Software
% Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301
% USA

if (nargin ~= 3)
    fprintf('%s\n', help(sprintf('%s', mfilename)));
    error('Incorrect number of inputs - see above usage instructions.');
end

if isfield(d.exampleIndices, newName)
    error('Field %s already exists', newName); 
end

d.globalIndices.(newName) = d.globalIndices.(oldName);
d.colIndices.(newName) = d.colIndices.(oldName);
d.exampleIndices.(newName) = d.exampleIndices.(oldName);
d.types.(newName) = d.types.(oldName);

d.globalIndices = rmfield(d.globalIndices, oldName);
d.colIndices = rmfield(d.colIndices, oldName);
d.exampleIndices = rmfield(d.exampleIndices, oldName);
d.types = rmfield(d.types, oldName);

⌨️ 快捷键说明

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