درواقع بهتره کد رو بذارم ببینین(چون همه کد رو نیاوردم ، توضیحاتی در کد دادم که داره چه اتفاقی میفته ، هرچند شاید اینا مهم نباشه)، قسمتی که فارسی نوشتم رو ببینین ، اینجا همونجایی هست که ارور میده ، اینا در هرمرحله زیادمیشن ، یعنی این 2 ماتریس هر 2 دارای سطری بالاتر از 1 میلیون میشن ، هرچند من در ادامه برنامه خودم (بعد از پایان حلقه) فقط به Xfreq_last نیاز دارم که باید بدمش به الگوریتم خاصی.(یه جورایی این ماتریس، تعداد فراوانیمه)
کد پیاچپی:
for docx = 1 : length(DBlast)
docx
for word = 1 : length(DBlast{docx})
% In docx , we search all words in docx
word_xi = DBlast{docx}{word,1} ;
for docy = 1 : length(DBlast)
% While the source words are from docx search for them in
% the rest of documents
% if word_1i found in document i(=doc) vote 1
if sum(strcmpi(DBlast{docy},word_xi)) ~= 0
ind = find(strcmpi(DBlast{docy},word_xi) ~= 0) ;
Xbool(word,docy) = 1 ;
Xfreq(word,docy) = Freqlast{docy}(ind) ;
else
% else vote 0
Xbool(word,docy) = 0 ;
Xfreq(word,docy) = 0 ;
end
end
end
این 2 ماتریس بزرگ می شوند:
Xbool_last = [Xbool_last;Xbool];
Xfreq_last = [Xfreq_last;Xfreq];
Xbool = [] ;
Xfreq = [] ;
end