char类型数据在matlab中的double值

时间:2014-08-23 15:17:17

标签: matlab

我有一个char类型的值,我需要把它放在一个double的矩阵中,它是一个混合的var类型矩阵......

data=load('matric_wind.mat');
f=fieldnames(data);
ddd=f(20,1);
cc=numel(f)
FF=zeros(2,cc);
for i=1: cc 
  KKK =data.(f{i})  % get the table of *.mat 
  kk=(f{i})         %get the name of the table above
 digits = regexp( kk, '\d', 'match');
 result = [digits{:}]    %result is a char type value ,it is something like :'Windv_x_20070525_000000'

 FF(1,i)=KKK(49,156)    %FF(1,i) filled with double values
 FF(2,i)=result        
end

我在行中收到Subscripted assignment dimension mismatch.错误:FF(2,i)=result 请帮忙!

1 个答案:

答案 0 :(得分:0)

使用str2num

示例:

x=str2num(x)

在你的情况下:

FF(2,i) = str2num(result)

首先输入格式为长g

>> format long g

>> '20070525000000'

ans =

20070525000000

>> str2num(ans)

ans =

     20070525000000