1
我可以使用或不使用循環做下面的代碼嗎?在循環中使用strmatch
其實我有一個字符數組,其中包含比5000
更多的唯一字以及包含大約3000
字的其他數組。我想搜索我的數組中的每個單詞作爲名稱爲uniques
的其他數組中的單詞,並且希望創建特徵向量,即如果存在則創建值1
,如果不存在則創建0
。
我做了以下..
load 'uniques' %uniques={'alpha','ok',abc'};
fid=fopen(myfilename);
words=textscan(fid,'%s');
fclose(fid);
word=words{1,1}; %word={'good','bad',anywhere','countries','ok',done','abc'}
for i=1:size(uniques,2)
ind=strmatch(word(i), uniques, 'exact');
end
現在,上面看到,因爲之前uniques
和word
一陽指的例子,我的系統必須返回0
good
爲good
是不存在的uniques
和同0
值,但1
因爲它確實存在於uniques
。總而言之,我必須在年底,{0,0,0,0,1,0,1}
..
我運行後,它給了我ind=[]
請指導
以目前的形式,您的問題很難理解,也不可能得到答案。但幸運的是,你可以改進它,因爲SO允許你編輯你的問題!請**提供每個數組的示例數據**(但使用5個元素而不是5000和3而不是3000)**,並且還包括一個手工操作的示例輸出**。當您添加示例輸入時,請使用matlab語法,以便我們可以複製並粘貼到matlab中。 – Dan
您在循環的每個階段覆蓋'ind'。另外,爲什麼你將'uniques'的大小作爲循環的大小,然後索引到'word'中對我來說是一個謎。 – nkjt
可以是'uniques'或'word'是否有重複的單詞或是否都是唯一的列表? – Dan