2017-10-24 5 views
0

私はmatlabプログラミングの初心者です。実際に私はこの質問を数学のウェブサイトで尋ねましたが、まだ回答が得られなかったので、ここでそれを得ることができます。 私はピーク解析を行い、嵐の流れのピーク流を見つけようとしています。ここに私のコードです:ピーク解析で同じピーク値を削除し、各イベントの持続時間(ピーク値を含む)を見つける方法は?

%% Peak flow analysis 
% define data which are used for analysis 
Date=finalCSVnew{:,1}; 
Flow=finalCSVnew{:,7}; 

figure(2); 
[pks,locs]=findpeaks(Flow,Date,'MinPeakProminence',1,'MinPeakDistance',1); 
findpeaks(Flow,Date,'MinPeakProminence',1,'MinPeakDistance',1); 
text(locs+.02,pks,num2str((1:numel(pks))')); 
xlabel('Date and Time'); 
ylabel('Flow [m3/h]'); 
title('Find All Peak Flows'); 
datacursormode on 

私はピークフローをプロットし、pksとlocsの詳細を見つけることができました。ここで、各イベントには1つのピークフローが含まれている必要があります。だから私の場合(添付の写真に基づいて)、私は16のイベントが必要です。しかし、イベント1とイベント2に重複した値がありますが、そのうちの1つを削除したいのですが、どうやってそれを行うのか混乱しています。また、私はウェブサイトの各イベントの期間を計算するためのチュートリアルを見つけようとしましたが、何も見つかりませんでした。私が得たピークフローデータに基づいて持続時間(おそらく数分)を計算する方法と、プロットのピーク値と重複を含むpksデータを削除する方法について知りたい。それは可能ですか?手伝っていただけませんか?ご助力ありがとうございます。 peak flow events

答えて

0

重複する値については、unique関数を使用して、同じ値を見つけて削除することができます。

C = unique(pks) % find any unique values and output values without repetitions 

https://au.mathworks.com/help/matlab/ref/unique.html

測定したい期間の詳細を提供します。ピークフローの持続時間を測定したいですか?あるいは曲線全体がピークに達するか?

+0

ありがとうエッピカルト –

関連する問題