کلیدستان

نسخه‌ی کامل: حلقه برای کنترل کیفیت چند متغیره
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام
می خواستم با دستور for یه حلقه برای این فرمول بنویسم

کد:
z t=r*(x t)+(1-r)*(z t-1)

و t= 1 ta m تی در اینجا اندیس است وx یک ماتریس p*m میباشد و x t به ازای 1 تاm افراز ستونی ماتریس ایکس است .z t حالت حلقه دارد ابتدا z1 را بدست می اوریم سپس دوباره در فرمول جای گذاری کرده z2 و به ترتیب تا zm و در اخر یک ماتریس z ها به ما میدهد.و z 0=(mean(x')')1

یه مثال میزنم براتون
دو متقیر در از یه کالایی در حال اندازه گیرین و به تعداد 3 بار اندازه گیری میشن به صورت ماتریس زیر مینویسیم سطر اول متغیر اول سطر دوم متغیر دوم.

کد:
x=[12 32 32;43 12 43 ]

حالا بر حسب ابن فرمول z(t)=r*x(t)+(1-r)*z(t-1 میخواهیم z(t) ها را بدست بیاوریم به شرط اینکه z(0) برابر با میانگین ماتریس x یاشد.
و میانگین x برابر است با mean(x)=[mean motaghayer aval;mean motaghayer dovom]
و x(t) ha برابر است با x(1) ستون اول ماتریس x(2) ستون دوم و الی آخر
در کالای اول مقدار در متغیر برابر با{12:43} برای کالای دوم {32:12} و سوم {32:43} و میانگینش برابر مقدار پایین به صورت ستونی است
25.3333
32.6667
بچه ها خودم به جواب رسیدم

کد:
clear;
clc;
x= [12 43 34;75 54 64]
r=.2
[p,m]=size( x)
y=(mean(x'))'
z_0= y;

for t=1:m
if (t==1)
z(1:p,t)=r*x(1:p,t)+(1-r)*z_0;
else
z(1:p,t)=r*x(1:p,t)+(1-r)*z(t- 1);
end
end;
z