簡體   English   中英

二維數組的插值

[英]Interpolation for a 2D array

我想知道是否有一種方法可以使用與插補1D數組({np.interpolate})相同的原理在python中插補2D數組。

因此,我的目標是增加數組中的數據點數量([1000,20]到[1000,200] [Time_indexing,X])。

我正在尋找能夠做到這一點的功能。

A = np.array([[ 0.45717218,  0.44250104,  0.47812272,  0.49092173,  0.46002069],
   [ 0.29829681,  0.26408021,  0.3709202 ,  0.44823109,  0.49311853],
   [ 0.05469835,  0.01048596,  0.17398291,  0.30088943,  0.39783137],
   [-0.20463768, -0.24610673, -0.0713164 ,  0.08406331,  0.22047102],
   [-0.4074527 , -0.43573695, -0.31062521, -0.15750053, -0.00222392]])

這是一個[5,5]數組,我想使用0.01的間距對其進行插值,因此最終乘積應為[500,500]。

謝謝,

您可以使用interp2d

from scipy.interpolate import interp2d
f = interp2d(np.arange(0,500,100), np.arange(0,500,100), A)
f(np.arange(500), np.arange(500))

輸出:

array([[ 0.45717218,  0.45702547,  0.45687876, ...,  0.46002069,
         0.46002069,  0.46002069],
       [ 0.45558343,  0.45543476,  0.45528609, ...,  0.46035167,
         0.46035167,  0.46035167],
       [ 0.45399467,  0.45384405,  0.45369343, ...,  0.46068265,
         0.46068265,  0.46068265],
       ...,
       [-0.4074527 , -0.40773554, -0.40801839, ..., -0.00222392,
        -0.00222392, -0.00222392],
       [-0.4074527 , -0.40773554, -0.40801839, ..., -0.00222392,
        -0.00222392, -0.00222392],
       [-0.4074527 , -0.40773554, -0.40801839, ..., -0.00222392,
        -0.00222392, -0.00222392]])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM