200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > matlab导入大数据时内存不足 MATLAB从Excel导入大量数据计算的时候出现错误

matlab导入大数据时内存不足 MATLAB从Excel导入大量数据计算的时候出现错误

时间:2024-04-06 01:44:54

相关推荐

matlab导入大数据时内存不足 MATLAB从Excel导入大量数据计算的时候出现错误

function y = landslidepj(x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11)

%UNTITLED 滑坡易发性评价

% 模糊综合评价对栅格单元进行评价,x1--高程...,输出y=1,2,3,4,5表示栅格单元的易发性等级.1==极低,2==低,3==中,4==高,5==极高。

y1 = 1.*(x1==0)+0.*(x1~=0);

y2 = 1.*(x1==0.4523)+0.*(x1~=0.4523);

y3 = 1.*(x1==0.7258)+0.*(x1~=0.7258);

y4 = 1.*(x1==1.1308)+0.*(x1~=1.1308);

y5 = 1.*(x1==1.2203)+0.*(x1~=1.2203);

y6 = 1.*(x2==0.4203)+0.*(x2~=0.4203);

y7 = 1.*(x2==0.4972)+0.*(x2~=0.4972);

y8 = 1.*(x2==0.785)+0.*(x2~=0.785);

y9 = 1.*(x2==1.3499)+0.*(x2~=1.3499);

y10 = 1.*(x2==1.5963)+0.*(x2~=1.5963);

y11 = 1.*(x3==0.5413)+0.*(x3~=0.5413);

y12 = 1.*(x3==1.0533)+0.*(x3~=1.0533);

y13 = 1.*(x3==1.0754)+0.*(x3~=1.0754);

y14 = 1.*(x3==1.0771)+0.*(x3~=1.0771);

y15 = 1.*(x3==1.1366)+0.*(x3~=1.1366);

y16 = 1.*(x4==0.8333)+0.*(x4~=0.8333);

y17 = 1.*(x4==0.8469)+0.*(x4~=0.8469);

y18 = 1.*(x4==1.0357)+0.*(x4~=1.0357);

y19 = 1.*(x4==1.0856)+0.*(x4~=1.0856);

y20 = 1.*(x4==1.1581)+0.*(x4~=1.1581);

y21 = 1.*(x5==0.4196)+0.*(x5~=0.4196);

y22 = 1.*(x5==0.4803)+0.*(x5~=0.4803);

y23 = 1.*(x5==0.8806)+0.*(x5~=0.8806);

y24 = 1.*(x5==1.1262)+0.*(x5~=1.1262);

y25 = 1.*(x5==1.372)+0.*(x5~=1.372);

y26 = 1.*(x6==0.4902)+0.*(x1~=0.4902);

y27 = 1.*(x6==0.5598)+0.*(x6~=0.5598);

y28 = 1.*(x6==0.7607)+0.*(x6~=0.7607);

y29 = 1.*(x6==1.0971)+0.*(x6~=1.0971);

y30 = 1.*(x6==1.5877)+0.*(x6~=1.5877);

y31 = 1.*(x7==0.3177)+0.*(x7~=0.3177);

y32 = 1.*(x7==0.336)+0.*(x7~=0.336);

y33 = 1.*(x7==0.4757)+0.*(x7~=0.4757);

y34 = 1.*(x7==0.7837)+0.*(x7~=0.7837);

y35 = 1.*(x7==2.1642)+0.*(x7~=2.1642);

y36 = 1.*(x8==0)+0.*(x8~=0);

y37 = 1.*(x8==0.7458)+0.*(x8~=0.7458);

y38 = 1.*(x8==0.8316)+0.*(x8~=0.8316);

y39 = 1.*(x8==1.3476)+0.*(x8~=1.3476);

y40 = 1.*(x8==1.5868)+0.*(x8~=1.5868);

y41 = 1.*(x9==0.5857)+0.*(x9~=0.5857);

y42 = 1.*(x9==0.9208)+0.*(x9~=0.9208);

y43 = 1.*(x9==1.0262)+0.*(x9~=1.0262);

y44 = 1.*(x9==1.194)+0.*(x9~=1.194);

y45 = 1.*(x9==1.4944)+0.*(x9~=1.4944);

y46 = 1.*(x10==0.7318)+0.*(x10~=0.7318);

y47 = 1.*(x10==0.8918)+0.*(x10~=0.8918);

y48 = 1.*(x10==0.9762)+0.*(x10~=0.9762);

y49 = 1.*(x10==1.1716)+0.*(x10~=1.1716);

y50 = 1.*(x10==1.3522)+0.*(x10~=1.3522);

y51 = 1.*(x11==0.5961)+0.*(x11~=0.5961);

y52 = 1.*(x11==0.7439)+0.*(x11~=0.7439);

y53 = 1.*(x11==1.0178)+0.*(x11~=1.0178);

y54 = 1.*(x11==1.0922)+0.*(x11~=1.0922);

y55 = 1.*(x11==1.218)+0.*(x11~=1.218);

a1 = [y1 y2 y3 y4 y5];

a2 = [y6 y7 y8 y9 y10];

a3 = [y11 y12 y13 y14 y15];

a4 = [y16 y17 y18 y19 y20];

a5 = [y21 y22 y23 y24 y25];

a6 = [y26 y27 y28 y29 y30];

a7 = [y31 y32 y33 y34 y35];

a8 = [y36 y37 y38 y39 y40];

a9 = [y41 y42 y43 y44 y45];

a10 = [y46 y47 y48 y49 y50];

a11 = [y51 y52 y53 y54 y55];

R = [a1;a2;a3;a4;a5;a6;a7;a8;a9;a10;a11];

A = [0.085 0.052 0.0747 0.0749 0.0908 0.0843 0.1443 0.1394 0.0679 0.0773 0.0748];

[n,m]=size(A); [m1,n1]=size(R);

if n ~=1&&m~=m1;error('不能运算');end

B = zeros(n,n1);

for k =1:m

for i=1:n

for j=1:n1;B(i,j)=min(1,B(i,j)+A(i,k)*R(k,j));

ind = find(B==max(B));

y = ind;

end

end

end

end

调用该函数计算:

data=xlsread('C:\Users\dell\Desktop\滑坡数据2.xlsx','sheet1','A2:k10001');

x1=data(:,1);

x2=data(:,2);

x3=data(:,3);

x4=data(:,4);

x5=data(:,5);

x6=data(:,6);

x7=data(:,7);

x8=data(:,8);

x9=data(:,9);

x10=data(:,10);

x11=data(:,11);

i=1;

q = 0;

while(i<10001)

xa=x1(i);

xb=x2(i);

xc=x3(i);

xd=x4(i);

xe=x5(i);

xf=x6(i);

xg=x7(i);

xh=x8(i);

xi=x9(i);

xj=x10(i);

xk=x11(i);

z = landslidepj(xa,xb,xc,xd,xe,xf,xg,xh,xi,xj,xk);

i = i+1;

q=[q;z'];

end

q;

本来结果是一行数据 对应一个结果(一个数),但是导入数据行数多了 之后结果就不是一行数据对应一个结果了

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。