2012-01-21 7 views
1
を作成

誰もがオクターブでMathWorks社のMATLAB列ベースの機能

removing duplicates - ** only when the duplicates occur in sequence

を解決する方法を知っていますか?受け入れられた解決策はdiffを使用しています。

Matlabのdiffは、Octaveのものとは異なる動作をしており、文字を受け入れません。

ご了承ください。

+4

文字を使用すると、型キャストを試してみましたが、int型として表すことができますか? – AlwaysWrong

+0

アイデアのおかげで... diff()、それはcharかintかどうかの違いはありません...アイデアかもしれません。 – Atmocreations

答えて

1

あなたが与えられたように、溶液を実行し、その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]) = []; 
+0

を試してみてください。それはまさに私が今日したことです - 少し前です。ありがとう! =) – Atmocreations

+0

@Atmocreations:ようこそ。将来的には、問題が見つかった場合には、自分の問題に解決策を投稿することができます。 – Amro

+0

ありがとう、私はそれについて知っています。しかし、 "AlwaysWrong"はすでに間接的に回答を出しています... – Atmocreations

関連する問題