从GPS TEC rinex文件中删除标题和重复时间信息

时间:2012-10-24 06:07:56

标签: gps matlab gps-time

我有一个rinex文件,显示在这里..显示rinex文件第一部分的图像

http://imageshack.us/photo/my-images/593/65961409.jpg

输入一年零一天后,将从网站下载数据(AOPR Rinex文件)。

http://www.naic.edu/aisr/GPSTEC/gpstec.html

我想在matlab中将此文件作为矩阵打开以进行进一步处理。在第42行的标题结束后,时间信息在第43行。然后数据开始。但是在一些行说64行之后,时间信息又会再次出现,应该将其丢弃。标题也应该被丢弃。最后一列也位于第一列的下方,作为第二行,应该转移到最后一列。总共有55700行。请帮助我。

2 个答案:

答案 0 :(得分:0)

我怀疑最后一栏出现在它下面的一行只是一个文字阅读器窗口有多大的神器......

对于其他人,我认为这里有一个试错循环:

fid = fopen('test.txt','r');
C = {};
while ~feof(fid)
    % read lines with dictated format.
    D = textscan(fid, '%d %d %d %d');

    % this will fail on headerlines, empty lines, etc.
    if isempty(D{1})
        % in those cases, advance the file pointer by one line
        fgetl(fid);
    else
        % if that's not the case, save the lines thus read 
        C = [C;D]; %#ok
    end
end
fclose(fid);

% Post-process: concatenate all sub-arrays into one
C = arrayfun(@(ii) cat(1, C{:,ii}), 1:size(C,2), 'UniformOutput', false);

这很有效,至少对我的test.txt

header 
random 
garbage
1 2 3 4
4 5 6 7
4 6 7 8
more random garbage
2 5 6 7
5 6 7 8
8 6 3 7

答案 1 :(得分:0)

  

我怀疑最后一栏出现在它下面的一行只是一个有关文字阅读器窗口大小的文件......

     

对于其他人,我认为这里有一个试错法循环

亲爱的Rody 我没有任何matlab背景,只是一个初学者。它实际上是一个Rinex文件......有2780个时代和6个具有30个卫星值的可观测数据。用matlab解码它很难。那就是问题所在。您可以在

上阅读示例代码

<强> http://web.ics.purdue.edu/~tdauterm/EAS591/Lab7/read_rinexo.m

但问题是,observables是6,而m-file中只有5个也没有正确的顺序。我需要 C1 P2 L1 L2 S1 S2 ...但是链路上的代码给出 L1 L2 C1 P1 P2 。 :(你能纠正那个......那将是一个很大的帮助..