2014-04-21 82 views
0

我有兩套大陣列(這裏我已經縮短它們)之間不等間距:外推蟒數組元素

x1 = [0, 2, 4, 6, 8, 10] 

y1 = [0.2, 0.19, 0.22, 0.18, 0.22, 0.21] 

x2 = [0, 0.2, 0.5, 1, 1.5, 2, 2.7, 3.5, 6, 10] 

y2 = [5, 4.9, 4.9, 4.9, 5.2, 4, 4.6, 4, 4.3, 3.9] 

因此三件事情可以注意到關於上述陣列:

  1. x1和y1有6個值,但x2和y2有10個值(確切的數字並不重要,唯一重要的是x2和y2比x1和y1有更多的值)。

  2. x1是均勻間隔的,而x2不是。

  3. x數組開始和結束時的值相同。

如何創建與Y1在X2的所有值的推算值的新的陣列?

注意到y1的潛在值不會被包含在新數組中,例如在上面的例子中,y1 [4]不是必需的,因爲它不落在x2的值。

另外請注意,y2與這個特定的問題無關,我只是提供了它的全面理解。

我嘗試過使用Jblasco針對類似問題在此處開發的方法:interpolate python array to minimize maximum difference between elements但是,我的問題與在該鏈接中提出的問題稍有不同。

+0

我想你的意思是_inferred_,而不是_interpolated_。 – DaoWen

+0

好的,已編輯的問題 – thegreatyonini

+0

其實,我認爲這個詞是_extrapolated_。對於那個很抱歉! – DaoWen

回答

0

這似乎只是一個直接的插值/外插問題。

import numpy as np 

#here y2 is the new extrapolated array 
y2 = np.interp(x2,x1,y1) 
+0

哇,我覺得啞巴。你說得對,這是完美的。謝謝。 – thegreatyonini