2016-04-15 18 views
2

私はN x 1セルを持っているとしましょう(各セルはN = 5に設定しましょう)。ここで、各要素は繰り返すことができる文字列です。ですから、例えばこのようになります:一意の数値を持つ文字列のセルを列挙するには?

x = {'x', 'b', 'c', 'x', 'd'} 

私はこのような場合のために、である、N x 1識別子ベクトル、ユニークな文字列を決定し、取得したい:

y = [1, 2, 3, 1, 4] 

ませアルファベット順は必要ありませんが、I yの各整数は、xの一意の文字列に対応してください。 MATLABでこれを行う簡単な方法はありますか?任意の助け

おかげで、

+0

かなりの重複と同じ。あなたはプロット部分を無視することができます。 – rayryeng

答えて

4

はい:'stable'入力フラグとuniqueの第3の出力を使用します。

[~, ~, result] = unique(x, 'stable'); 
+0

ありがとう!私はできるだけ早く受け入れます。 – jeff

+0

親愛なるルイス、別の質問があります。どのIDがxのどのエントリに対応しているかをどのように知ることができますか?そのため、数値IDから元の文字列値にアクセスするにはどうすればよいですか? – jeff

+0

@HalilPazarlama私が正しく理解している場合は、 'result'を' x'のインデックスとして使用してください。たとえば、 'x {result(2)} 'は元の第2文字列を返します。しかし、あなたは 'x {2}' –

関連する問題