使用matlab或其他程序过滤文本文件

时间:2017-03-02 19:17:55

标签: matlab

我有这个巨大的文件,其中包含1953年至2010年的风力数据,每小时记录风速和风向,如下所示。我想知道是否有可能过滤这个文件,所以它只包含12米/秒以上的风速。因此数据集将大幅减少。这可能与Matlab或任何其他程序有关吗?最简单的方法是什么?

    Year, month, day, hour, wind speed, wind direction, wind direction
    1953    1   1   0   10.0    90  90
    1953    1   1   1   10.0    90  90
    1953    1   1   2   10.0    90  90
    1953    1   1   3   8.0     90  90
    1953    1   1   4   8.0     90  90
    1953    1   1   5   13.0    90  90
    1953    1   1   6   13.0    70  70
    1953    1   1   7   14.0    90  90
    1953    1   1   8   16.0    90  90
    1953    1   1   9   13.0    90  90
    1953    1   1   10  13.0    90  90
    1953    1   1   11  16.0    90  90

1 个答案:

答案 0 :(得分:1)

从标题中删除逗号(,)并保存文件,然后使用下面的代码

#Read file space deliminator, Offset row=1, col=0
filename = 'input.txt';
M = dlmread(filename,' ',1,0)
#Find index of Speed that is M(:,5) > 12.0
Idx = find(M(:, 5)> 12.0)
#Extact all columns of index (or rows)
M = M(Idx, :)