2016-04-28 1 views
1

私はmatlabの2つの非常に大きなデータセットを持っています。両方のデータセットには、異なるパラメータがあります。唯一の共通パラメーターは、タイムスタンプとは、10分ごとにすべてのパラメーターの値を測定することを意味します。私たちは例を見てみましょう、データセット1ではmatlabを使用してタイムスタンプを考慮した2つの異なるサイズのデータ​​セットフィルタリング?

が、私はタイムスタンプ(YYYY-MM-DD、HH:MM:SS形式)を持つデータセット2では、電源 を、私は再び(上記形式)のタイムスタンプとスピード

を持っています

タイムスタンプの同期でパワーとスピードを持つ新しいデータセットが必要です。たとえば:だから、基本的にもし

 TimeStamp       P   S 
     00 :10       100   5 
     00:30       150   10  
     00:50       145   12   

 TimeStamp       P   S 
    2014 - 01 - 01 , 00 :10    100   5 
        00 :20       7 
        00:30    150   10 
        00:40    200   
        00:50    145   12 
        01:00    50   7 
        01:10       6 

など............

だから要するに、最終的なデータセットの出力は次のようでなければなりません私は同じ時間でパワーとスピードの両方を得ています。

両方のデータセットで観測サイズが異なる場合、それは機能しますか?彼らは異なる観測サイズを持っているかもしれませんが、私はPとSがタイムスタンプと一致する私の最終データベースにそれらのデータだけを必要とします。 matlabの助け?事前のおかげで

答えて

0

あなたはこのような何かを試みることができる:

%type "help ismember" in command window to see what the function does 

%finds index of timestamp in dataset1 that exists in dataset 2 
indexPinS = ismember(dataset1(:,1),dataset2(:,1)); 
%finds index of timestamp in dataset2 that exists in dataset 1 
indexSinP = ismember(dataset2(:,1),dataset1(:,1)); 

%combines data in final database 
finalDatabase = [dataset1(indexPinS,1), dataset1(indexPinS,2), dataset2(indexSinP,2)]; 
+0

は、この種のコードは、時刻同期ごとに私のパワーとスピードを与えるですが...? –

+0

ベクトルが次のように編成されている限り、 dataset1 = [timestamp、P]; dataset2 = [タイムスタンプ、S]; –

+0

ありがとう、それは働いています....上記のコードの各行で%を使用してプログラミングに続いて何が起こっているのか説明していただければ幸いです。 –

関連する問題