2011-08-08 10 views
-2

nmea文字列を含むテキストファイルを読み込もうとしています!しかし、私はそれが間違っている理由は、私が把握することはできません?私のMatlabコードで何が問題になっていますか?インデックスが範囲外です

??? Attempted to access y(1); index out of bounds because numel(Longitude)=0. 
Error in ==> filter at 16 
Loc(:,i)=coordinates(x(i),y(i))'; 

filter.m

clear all 
A=textread('xxx\x.txt','%s','headerlines',1); 
for i=1:30; 
n=2*i-1; 
A(i)=A(n); 
end 
b=A(1:30,:); 
c=char(b); 
x=c(:,17:24); 
y=c(:,28:36); 

を入手します!

+1

をしたいと考えている、私はfilter.m' '以外に、スクリプトファイルの名前を変更します – Amro

答えて

0

あなたは、文字列の間違った部分を切り取り、初めに,N,一部(ともなし小数)で終わります。私はあなたが名前の衝突を避けるために

Longitude=c(:,31:42);%Extract Longitude Array 
+0

屋(その名前の組み込みのMATLAB関数があります)!私はとても愚かです!ちょうどそれを考え出した!ありがとう!! – emil

+0

あなたはまた、私が緯度部分で間違っていると推測することができるデータを切り捨てています。それもまた確認してください。 –

0
Longitude=c(:,28:36);%Extract Longitude Array 

私の推測では、c(:,28:36)Aがあまりにも空である可能性があります示唆している空であるということです。

0

Aが空です。代わりにTEXTSCANを使用してください:

 
>> fid = fopen('C:\Users\myself\Desktop\2.txt', 'rt'); 
>> A = textscan(fid, '%s'); 
>> A = A{1}; 
>> fclose(fid); 
関連する問題