PDA

View Full Version : رسم ماتریس رندم 0و1 در مطلب



پری سیما
دوشنبه 15 اردیبهشت 1393, 10:21 صبح
سلام
دستور تولید یک ماتریس N در M با اعداد تصادفی 0 و 1در مطلب رو میخواستم.

rahnema1
دوشنبه 15 اردیبهشت 1393, 11:54 صبح
rand(N,M)<0.5

پری سیما
دوشنبه 15 اردیبهشت 1393, 16:53 عصر
چطور قائده "هم باشی "داخل این ماتریس پباده کنم؟

پری سیما
دوشنبه 15 اردیبهشت 1393, 18:42 عصر
این کدرو برای قاعده هم باشی یک عضوی نوشتم ، برای دو بعدی و سه عضویش چطوری نوشته میشه؟؟؟؟؟؟؟؟؟؟؟؟



a=rand(4,5)>0.5
for j=1:5
b=a(1:4,j)
c(1,j)=0;
for i=1:4
if b(i)==1

c(1,j)=c(1,j)+1;
else c(1,j)=c(1,j);
end
end
end
disp(c)
for q=1:5
if c(1,q)<2
a(:,q)=[]
q=q-1
else
q=q
end
end
disp(a)

rahnema1
دوشنبه 15 اردیبهشت 1393, 19:12 عصر
شما می تونید از تولباکس ARMADA استفاده کنید که در این سایت قرار داره:
http://www.ebi.ac.uk/~malone/resources.html
همچنین لازمه فرمت ورودی به یک شکل خاص در یک فایل به نام data.txt ذخیره بشه که وارد ARMADA بشه
همچنین تبدیل فرمت جدولی به صفر و یک هم گذاشتم یعنی ماتریس datai
راهنمای ARMADA هم داخل اون فایل زیپ هست


f=@(v,n) a{v}= randi(n,1, randi(n));
data=arrayfun(f,1:m,n,'UniformOutput',false);
for i=1:numel(data)
dlmwrite('data.txt',data{i},'-append');
end

datai=zeros(m,n);
for i=1:numel(data)
datai(i,data{i})=1;
end

پری سیما
دوشنبه 15 اردیبهشت 1393, 21:16 عصر
ARMADA چه کاری انجام میده؟جزوی از نرم افزار مطلبه؟نمیشه یه راه راحتر مثل همین کدهایی که ما نوشتیم باشه

rahnema1
دوشنبه 15 اردیبهشت 1393, 21:24 عصر
مگه شما نمی خواهید associative rules قاعده هم باشی کار کنید.
که برای شما همین کار را انجام میده
محیط گرافیکی هم داره که بتونید راحت باهاش کار کنید

پری سیما
دوشنبه 15 اردیبهشت 1393, 23:24 عصر
ما با اarmada نمیخایم کار کنیم باید تو مطلب rulها رو بنویسیم اگه میتونید کمک کنید مرسی
یه لینک فارسی هم واسه اموزش armada اگه دارید بزارید

rahnema1
سه شنبه 16 اردیبهشت 1393, 15:31 عصر
یک نکته وجود داره ایجاد ماتریس به صورت
rand(m,n)<.5 یک اشکال داره. چون ممکنه در یک سطر همه آیتم ها برابر صفر بشه. حالا نمی دونم آیا میشه یک تراکنش تمام آیتم هاش صفر باشه
اون کد بالا یک اشکال داشت که اینجا تصحیح کردم:

f=@(v,n) randperm(n,randi(n));
data=arrayfun(f,1:m,n,'UniformOutput',false);
for i=1:numel(data)
dlmwrite('data.txt',data{i},'-append');
end

datai=zeros(m,n);
for i=1:numel(data)
datai(i,data{i})=1;
end

برای ایجاد قاعده ها rules میشه از این استفاده کرد اما بهینه نیست. شاید هم اشکال داشته باشه. دقیقا چک نکردم
minconf و minsup هم آستانه ها هستند

ismem=@(i1,i2) arrayfun(@(v) sum(i1)==sum(i1&i2(v,:)) ,1:rows(i2),'UniformOutput' ,true);
minsup=.5;
minconf=.5;
m=4;
n=5;
Data=rand(m,n)>0.5;
filteredData=find(sum(Data));
ij=1;
permutation={};
for i=1:numel (filteredData)
chs=nchoosek(1: numel(filteredData),i);
for j=1 :rows(chs)
permutation{ij}= filteredData(chs(j,:));
ij=ij+1;
end
end
r=1;
rules={};
for i=1:(numel(permutation))
for j=1:numel(permutation)
if (numel(intersect(permutation{i}, permutation{j}))!=0)
itemset2=zeros(1,n); itemset2(permutation{i})=1;
qitemset2=sum(ismem( itemset2,Data));
if (qitemset2 >0)
itemset1=zeros(1,n); itemset1(union(permutation{i} ,permutation{j}))=1;
qitems=sum(ismem( itemset1,Data));
support1=qitems/m;
confidence=qitems/ qitemset2;
if (support1 >= minsup && confidence >=minconf )
rules{r}={permutation{i},permutation{j}};
r=r+1;
end
end
end
end
end

پری سیما
سه شنبه 16 اردیبهشت 1393, 20:43 عصر
یک تگه برنامه برای یک غضوی هاش نوشتم ....برای دو عضویش چه جوریه



a=rand(15,3)>0.5
q=a(1:15,1)
w=a(1:15,2)
r=a(1:15,3)
c=[0,0,0];
for j=1:3
b=a(1:15,j);
for i=1:15
if b(i,1)==1
c(1,j)=c(1,j)+1;
end
end
c(1,j)=c(1,j)/15
end
disp(c)
if c(1,1)<0.5
q(1:15)=[]
else if c(1,2)<0.5
w(1:15)=[]
else if c(1,3)<0.5
r(1:15)=[]
end
end
end
if isempty(q)
a=[w,r];
else if isempty(w)
a=[q,r];
for z=1:15
if q(1,z)==1 && r(1,z)==1
c(1,1)=c(1,1)+1;
end
end
else if isempty(r)
a=[q,w];
for z=1:15
if q(1,z)==1 && z(1,z)==1
c(1,1)=c(1,1)+1;
end
end
else if isempty(w)& isempty(q)
a=[r];
else if isempty(w) & isempty(r)
a=[q];
else if isempty(q) & isempty(r)
a=[w]
else a=[q,w,r];
end
end
end
end
end
end
disp(a)

rahnema1
سه شنبه 16 اردیبهشت 1393, 21:06 عصر
این متغیرها چیه اسمهای اونها گویا نیستند
آستانه ها چه مقداری هستند؟

iliyasaeidkarami
شنبه 20 اردیبهشت 1393, 10:00 صبح
ممنونننن منم خیلی لازمم بود.

___________________
http://ict3.com
http://drpouriaaflaki.com/fa/

matcode.ir
شنبه 27 اردیبهشت 1393, 21:05 عصر
سلام دوستان عزیز برای رفع مشکلات خودتون در مورد متلب می تونید به سایت مرجع متلب مراجعه کنید :
http://www.matcode.ir