📄 xdata.m
字号:
% Copyright (c) 2007 the authors listed at the following URL, and/or% the authors of referenced articles or incorporated external code:% http://en.literateprograms.org/MATLAB_Financial_Toolbox?action=history&offset=20060826024523% % Permission is hereby granted, free of charge, to any person obtaining% a copy of this software and associated documentation files (the% "Software"), to deal in the Software without restriction, including% without limitation the rights to use, copy, modify, merge, publish,% distribute, sublicense, and/or sell copies of the Software, and to% permit persons to whom the Software is furnished to do so, subject to% the following conditions:% % The above copyright notice and this permission notice shall be% included in all copies or substantial portions of the Software.% % THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.% IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY% CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,% TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE% SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.% % Retrieved from: http://en.literateprograms.org/MATLAB_Financial_Toolbox?oldid=7473function out = xdata(mode, varargin)
% XDATA - simplest xdata function
% use:
% val = xdata('get-col', structured_data, names)
switch lower(mode)
case 'get-col'
data = varargin{1};
names = varargin{2};
if ~iscell(names)
names = regexp(names, '([^;]+)', 'tokens');
names = cellfun(@(x)(x{1}),names,'UniformOutput', false);
end
out = repmat(nan,size(data.value,1),length(names));
for i=1:length(names)
idx = strmatch(names{i}, data.names, 'exact');
out(:,i) = data.value(:,idx);
end
otherwise
error('xdata:mode', 'unknown mode <%s>', mode);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -