2014-10-09 53 views
1

我正在查看Psychopy程序的源代碼,並且我遇到了下面的行。在Python中,非等維的插值意味着什麼?

interpolateCones = scipy.interpolate.interp1d(wavelength_5nm, cones_SmithPokorny) 

其中wavelength_5nm爲(1,81)向量和cones_SmithPokorny尺寸爲(3,81)和它們兩者包含預定義數目。

我真的無法理解用非等維輸入參數進行插值的含義。 (1,81)也不應該是cones_SmithPokorny?爲什麼運行代碼時沒有錯誤?

+0

聽起來像是[numpy broadcast]的一個例子(http://docs.scipy.org/doc/numpy/user/basics.broadcasting.html):波長_5nm的第一個維度是1,它會重複遵循'cones_SmithPokorny'的第一個維度。 – Evert 2014-10-09 13:25:25

回答

0

interp1d的默認值爲axis=-1,所以1D插值位於最後一個軸上。 即,有81個x座標,並且對於每個x座標有3個y值。 所以它不是在不等尺寸上進行插值。