matlab 台风数据插值,MATLAB CCToolbox 台风路径聚类工具箱使用问题

本帖最后由 kezhang1995 于 2019-10-22 13:31 编辑

完整程序如下:

[code]

clc;

clear all;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% read data

fileID = fopen('F:\CH2018BST.txt');

formatSpec = '%s';

C = textscan(fileID,formatSpec);

L = length(C{1,1});

m = 1;

TN = 1;

while m<=L

CStr = C{1,1}(m,1);

N = str2num(CStr{1,1});

if N == 66666

m = m+2;

CStr = C{1,1}(m,1);

DataLines = str2num(CStr{1,1});

m = m+7;

end

for n=1:DataLines

for i=1:6

CStr = C{1,1}(m,1);

N = str2num(CStr{1,1});

BSTData{TN,1}(n,i) = N;

m = m+1;

end

end

TN = TN+1;

end

% figure(1);

% for m=1:length(BSTData)

%     lat = BSTData{m,1}(:,3)*0.1;

%     lon = BSTData{m,1}(:,4)*0.1;

%     hold on; plot(lon,lat,'b.-');

% end

% read LAT and LON

for TN =1:length(BSTData)

DataLines = length(BSTData{TN,1});

for n=1:DataLines

for i=1:2

if i == 1

Ydata{TN,1}(n,i) = BSTData{TN,1}(n,i+3)*0.1; % lon

else

Ydata{TN,1}(n,i) = BSTData{TN,1}(n,i+1)*0.1; % lat

end

end

end

TN = TN+1;

end

Y = Ydata;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Use CCToolbox

cd ('D:\MATLAB\R2018a\toolbox\CCToolbox');

% setcctpath;

ops.method = 'lrm';

ops.order  = 2;

ops.K      = 3;

ops.zero   = 'none'

ops.NumEMStarts = 5;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

model = curve_clust(Y,ops);

showmodel(model,Y);

[/code]

出问题的语句是:

[code]

model = curve_clust(Y,ops);

showmodel(model,Y);

[/code]

错误信息:

无法执行赋值,因为此类型的变量不支持使用点进行索引。

出错 trajs2seq (line 67)

if (~isfield(trajs,'Y')), trajs.Y = trajs; end

出错 lrm (line 51)

[Y,X,Seq] = trajs2seq(trajs,M.zero,M.Options.MinLen);

出错 lrm_capi (line 28)

M = lrm(trajs,K,Ops.order,Ops);

出错 curve_clust (line 99)

M = feval(capi_func,trajs,Ops.K,Ops);

出错 ReadFromCycloneTrackTxt (line 61)

model = curve_clust(Y,ops);

我是用的版本是R2018a,电脑操作系统是win7 64位。请问这个错误应该怎么解决?谢谢

第三方工具箱和数据例子见附件

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值