2016-09-29 4 views
0

配列内に0より大きい値をすべて見つけて保存し、それらを「times」という変数に保存します。それ、どうやったら出来るの?これらのセルのインデックスと実際のセルの値を保存することの違いは何ですか?Matlabのセル配列で0より大きいすべての値を見つける方法

これは私が試してみましたものですが、私はエラーが出るので、それがworngする必要があります。

Undefined operator '>' for input arguments of type 'cell'.

clear all, close all 

[num,txt,raw] = xlsread('test.xlsx'); 

times = find(raw(:,5)>0) 
+0

何 'のように見えるraw'のでしょうか?エラーから 'raw {:、5}'を試してください – houtanb

+1

ありがとう@HBHB!私は以下の答えを受け入れました。なぜなら、それはより詳細で答えとして投稿されたからです。 – Spica

答えて

0

あなたが{}代わりの()使用しなければならないセルの内容アクセスするには:

idx = find([raw{:, 5}] > 0); 

しかし、のインデックスの01のセルが表示されますには正の値が含まれます。あなたの代わりにをしたい場合は、それらにアクセスし、このように数値配列でそれらを収集することができます。

times = [raw{idx, 5}]; 
関連する問題