2016-07-11 8 views
1

これをどのように達成することができるでしょうか?私は数学には非常に新しいです...多くのデータセットをプロットする必要がありますが、t = 0のときにすべてが同じ初期y値を持つように「シフト」する必要があります

私の最初の考えは、.CSVでExcelからデータをインポートし、すべてのデータセットの最大y値を決定し、残りの初期y値をその値。また、時間の値を変更しないでおく必要があり、N個のリストで作業する必要があります。

私にはこれを行う方法がないか、より単純な解決策がある場合はありません。ありがとう!

例:

リスト#1> {{8,0}、{6,1}、{4,2}}、リスト#2 - > {{7,0}、{6、 {8,0}、{6,1}、{4,2}}、リスト#2-> {{8,0}、{1}}、{2,2}}

リスト#1- { {7,1}、{3,2}}

リスト2のすべてのy値が1つ上にシフトされました。

+0

あなたが求めていることは明確ではありません。 –

+0

'Map'、' Part'、 'Maximum'を参照してください。 – agentp

答えて

0

彼は少なくともこの他の場所でこの質問をしました。彼はリストの各ペアにオフセットを追加して、すべてのリストの最初のものの最初のものが同じになるようにしたいと思われます。各リストの残りの各ペアの最初のものは、同じオフセットが追加され、ペアは変更されておらず、これは比較的任意の数のリストで動作することを望んでいます。これを適応し、それがLIST2する{{8,0}、{7,1}、{3,2}}割り当てる必要があります

list1 = {{8, 0}, {6, 1}, {4, 2}}; 
list2 = {{7, 0}, {6, 1}, {2, 2}}; 
list3 = {{5, 0}, {7, 1}, {5, 2}}; 
list4 = {{9, 0}, {4, 1}, {1, 2}}; 
f[v_] := Map[# + {list1[[1, 1]] - v[[1, 1]], 0} &, v]; 
{list2, list3, list4} = Map[f, {list2, list3, list4}] 

のために働くかどうかを確認するために

しようとすると、{{8 、0}、{10,1}、{8,2}}をリスト3に、{{8,0}、{3,1}、{0,2}}をリスト4に追加します。

関連する問題