Это должно работать:
y([ diff([y{:}]) ~= 0 true])
или чуть более компактно
y(diff([y{:}]) == 0) = []
Исправление: вышеприведенное не удалит оба дубликата
ind = diff([y{:}]) == 0;
y([ind 0] | [0 ind]) = []
Кстати, это работает, даже если есть несколько повторяющихся последовательностей
Например,
y = { 'd' 'f' 'a' 'g' 'g' 'w' 'a' 'h' 'h'};
ind = diff([y{:}]) == 0;
y([ind 0] | [0 ind]) = []
y =
'd' 'f' 'a' 'w' 'a'