1

したがって、次のようなデータがあります。

var1 (時間値1)

2       1934
3       3221
4       1314

var2 (時間値 2)

2       836
3       5364
4       2143

そして、次のフィールドを含む作成したデータベースの新しいテーブルにそれを追加したいと思います: time、value1、value2。

matlab の datainsert 関数を使用すると、次のようになります (これは私が望むものではありません)。

time    value1    value2
2       1934    
3       3221
4       1314
2                 836
3                 5364
4                 2143

代わりに更新機能を使用しようとしているので、うまくいけば次のようになります。

time    value1    value2
2       1934      836
3       3221      5364
4       1314      2143

時刻と value1 をテーブルに取得するには、次のようにします。

 datainsert(connection,'table',{'time','value1'},var1);

しかし、value2 データを挿入するにはどうすればよいでしょうか?

前もって感謝します!

4

1 に答える 1

0

var1 と var2 の時間値は同じですか (たとえば、同じ順序で同じ値)?

この場合、3 つのフィールドを持つ共通の配列を作成し、この配列をデータベースに挿入するだけです。

new_var=[var1 var2(:,2)];
datainsert(connection,'table',{'time','value1','value2'},new_var);

var1 と var2 の時間値の順序が同じでない場合は、共通のデータ セットを作成するためにより複雑なアクションが必要になります。たとえば、交差点を使用できます。

[new_time,i1,i2] = intersect(var1(:,1), var22(:,1));
new_var=[new_time var1(:,2) var2(:,2)];
于 2012-11-12T15:27:50.263 に答える