有谁知道如何解决创建基于MATLAB列函数
removing duplicates - ** only when the duplicates occur in sequence
在八度?接受的解决方案是使用diff
。
Matlab的diff
似乎表现不同于八度的,并且不接受字符。
任何想法是赞赏。
有谁知道如何解决创建基于MATLAB列函数
removing duplicates - ** only when the duplicates occur in sequence
在八度?接受的解决方案是使用diff
。
Matlab的diff
似乎表现不同于八度的,并且不接受字符。
任何想法是赞赏。
您可以将字符转换为它们的ASCII码,然后运行该解决方案给出:
a = {'d' 'f' 'a' 'g' 'g' 'w' 'a' 'h'};
aa = cellfun(@(c) c-0, a); %# convert to ASCII
idx = find(diff(aa) == 0);
a([idx idx+1]) = [];
,这正是我今天所做的 - 现在有点前。谢谢! =) – Atmocreations
@自慰:不客气。将来,如果您发现问题,您可以为自己的问题发布解决方案。 – Amro
谢谢,我知道这件事。但“一直错误”已经间接地给出了答案...... – Atmocreations
字符可以表示为一个int,你尝试过的类型转换? – AlwaysWrong
谢谢你的想法... diff(),它不会有任何区别,无论它是char还是int ...都可能是一个想法。尝试 – Atmocreations