2017-10-26 5 views
-1

matlabにゼロを代入しようとしています。添字付きディメンションの不一致。文字列を割り当てる際に

a = zeros(10); 
a(1,:) = 'Hand'; 

ただし、次のエラーが発生しています。

Subscripted assignment dimension mismatch. 

エラーの意味があります。しかし、私は長さ4の「手」を割り当てようとしています。しかし、私は10×10の配列を持っています。

すべてのヘルプはかなりある

+0

MATLABを導入[ 'STRING'クラス](https://www.mathworks.com/help/matlab/matlab_prog/create-string-arrays.html) R2016bでは。この前に、文字列は文字の配列として扱われ、数字配列と同じ次元制限が付いています。 – excaza

+0

a(1,1:4)= '手'; \t ASCII値として保存されていますか?それはちょうど文字列としてすることができますか?私が再びそれにアクセスしようとするとき、私はそれらを文字列として欲しい。 –

+0

問題は私がマットファイルとして保存していることです。私がマットファイルを読み込もうとすると、4次元のアスキー値が得られます。文字列ではありません –

答えて

1

あなたの文字列が長さ4を持っていますが、あなたはそれを割り当てるしようとしている場所は、長さ10を有しているので、あなたがエラーを取得している理由です。試してみてください(あなたがsize()を使用して寸法を確認することができます)

a(1,1:4) = 'Hand'; 
+0

ASCII値として保存されていますか?それはちょうど文字列としてすることができますか?私が再びそれにアクセスしようとするとき、私はそれらを文字列として欲しい。 –

+1

@KathiravanNatarajan 'char(a(1,1:4))'を使ってアクセスしてください –

関連する問題